public inbox for jit@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                             ` David Malcolm
@ 2015-01-01  0:00                               ` Dibyendu Majumdar
  0 siblings, 0 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 9 July 2015 at 20:16, David Malcolm <dmalcolm@redhat.com> wrote:
> I've managed to create a minimal reproducer for this; see:
>   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812
> where libgccjit miscompiles it, but the C frontend (cc1) handles the
> equivalent C code just fine (even at -O3, without needing
> -fno-strict-aliasing).
>
> So the next step seems to be to step through the fre1 pass in both
> libgccjit and in cc1, and to see what's different.
>
> Yay, progress!
>

Indeed! Sorry for all the trouble - obviously this one is not easy to diagnose.

Regards

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                       ` Dibyendu Majumdar
@ 2015-01-01  0:00                         ` Dibyendu Majumdar
  2015-01-01  0:00                           ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 21:06, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
>> BTW, are Lua/Ravi constants truly constant?  If so, then I'd believe
>> you'd get a performance win by implementing LOADK by emitting code to
>> write the specific tt and value_ directly, rather than code that copies
>> a value from the table.
>
> Yes - I do specialize to constants in certain cases - such as loops
> and numeric operations. But more can be done.
>
>>
>> This would enable the optimizer to "know" the tt and value_, and
>> optimize accordingly.  For example, in this case, I believe it would
>> allow the function to be optimized away down to the equivalent of just a
>> "return false;".  Obviously won't help much for a function without a
>> loop, but if it saves instructions inside a loop, that's probably a win.
>>
>> (...though maybe not before we track down this issue)
>>

I implemented setting the constant directly (just checked in).
Performance wise no noticeable difference (as I think the scenarios
where this helps were already covered) but it does seem to have caused
the optimization bug to go away - i.e. the tests now pass. I will run
more tests tomorrow to see if this is true under all optimization
settings.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* [PATCH, committed] PR jit/66783: prevent use of opaque structs
  2015-01-01  0:00               ` PR jit/66783 (Re: A possible code generation issue) David Malcolm
@ 2015-01-01  0:00                 ` David Malcolm
  0 siblings, 0 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: jit, gcc-patches; +Cc: David Malcolm

Prevent use of opaque structs for fields, globals and locals.

Tested with "make check-jit"; jit.sum goes from 8434 to 8494 passes.

Committed to trunk as r225523.

gcc/jit/ChangeLog:
	PR jit/66783
	* jit-recording.h: Within namespace gcc:jit::recording...
	(type::has_known_size): New virtual function.
	(struct_has_known_size): New function.
	* libgccjit.c (gcc_jit_context_new_field): Verify that the type
	has a known size.
	(gcc_jit_context_new_global): Likewise.
	(gcc_jit_function_new_local): Likewise.

gcc/testsuite/ChangeLog:
	PR jit/66783
	* jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c: New
	test case.
	* jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c:
	New test case.
	* jit.dg/test-error-gcc_jit_function_new_local-opaque-struct.c:
	New test case.
	* jit.dg/test-error-mismatching-types-in-call.c (create_code):
	Avoid using an opaque struct for local "f".
---
 gcc/jit/jit-recording.h                            |  3 ++
 gcc/jit/libgccjit.c                                | 15 ++++++++
 ...error-gcc_jit_context_new_field-opaque-struct.c | 31 ++++++++++++++++
 ...rror-gcc_jit_context_new_global-opaque-struct.c | 32 +++++++++++++++++
 ...rror-gcc_jit_function_new_local-opaque-struct.c | 42 ++++++++++++++++++++++
 .../jit.dg/test-error-mismatching-types-in-call.c  |  2 +-
 6 files changed, 124 insertions(+), 1 deletion(-)
 create mode 100644 gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c
 create mode 100644 gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c
 create mode 100644 gcc/testsuite/jit.dg/test-error-gcc_jit_function_new_local-opaque-struct.c

diff --git a/gcc/jit/jit-recording.h b/gcc/jit/jit-recording.h
index acd69e9..884304b 100644
--- a/gcc/jit/jit-recording.h
+++ b/gcc/jit/jit-recording.h
@@ -497,6 +497,7 @@ public:
   virtual type *is_pointer () = 0;
   virtual type *is_array () = 0;
   virtual bool is_void () const { return false; }
+  virtual bool has_known_size () const { return true; }
 
   bool is_numeric () const
   {
@@ -795,6 +796,8 @@ public:
   type *is_pointer () { return NULL; }
   type *is_array () { return NULL; }
 
+  bool has_known_size () const { return m_fields != NULL; }
+
   playback::compound_type *
   playback_compound_type ()
   {
diff --git a/gcc/jit/libgccjit.c b/gcc/jit/libgccjit.c
index 4d7dd8c..85d9f62 100644
--- a/gcc/jit/libgccjit.c
+++ b/gcc/jit/libgccjit.c
@@ -543,6 +543,11 @@ gcc_jit_context_new_field (gcc_jit_context *ctxt,
   /* LOC can be NULL.  */
   RETURN_NULL_IF_FAIL (type, ctxt, loc, "NULL type");
   RETURN_NULL_IF_FAIL (name, ctxt, loc, "NULL name");
+  RETURN_NULL_IF_FAIL_PRINTF1 (
+    type->has_known_size (),
+    ctxt, loc,
+    "type has unknown size (type: %s)",
+    type->get_debug_string ());
 
   return (gcc_jit_field *)ctxt->new_field (loc, type, name);
 }
@@ -1033,6 +1038,11 @@ gcc_jit_context_new_global (gcc_jit_context *ctxt,
     kind);
   RETURN_NULL_IF_FAIL (type, ctxt, loc, "NULL type");
   RETURN_NULL_IF_FAIL (name, ctxt, loc, "NULL name");
+  RETURN_NULL_IF_FAIL_PRINTF1 (
+    type->has_known_size (),
+    ctxt, loc,
+    "type has unknown size (type: %s)",
+    type->get_debug_string ());
 
   return (gcc_jit_lvalue *)ctxt->new_global (loc, kind, type, name);
 }
@@ -1829,6 +1839,11 @@ gcc_jit_function_new_local (gcc_jit_function *func,
 		       "Cannot add locals to an imported function");
   RETURN_NULL_IF_FAIL (type, ctxt, loc, "NULL type");
   RETURN_NULL_IF_FAIL (name, ctxt, loc, "NULL name");
+  RETURN_NULL_IF_FAIL_PRINTF1 (
+    type->has_known_size (),
+    ctxt, loc,
+    "type has unknown size (type: %s)",
+    type->get_debug_string ());
 
   return (gcc_jit_lvalue *)func->new_local (loc, type, name);
 }
diff --git a/gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c b/gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c
new file mode 100644
index 0000000..c4e1448
--- /dev/null
+++ b/gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c
@@ -0,0 +1,31 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+#include "libgccjit.h"
+
+#include "harness.h"
+
+/* Try to put an opaque struct inside another struct
+   (or union); the API ought to complain.  */
+
+void
+create_code (gcc_jit_context *ctxt, void *user_data)
+{
+  gcc_jit_struct *t_opaque =
+    gcc_jit_context_new_opaque_struct (ctxt, NULL, "opaque");
+
+  (void)gcc_jit_context_new_field (ctxt, NULL,
+				   gcc_jit_struct_as_type (t_opaque),
+				   "f_opaque");
+}
+
+void
+verify_code (gcc_jit_context *ctxt, gcc_jit_result *result)
+{
+  CHECK_VALUE (result, NULL);
+
+  /* Verify that the correct error message was emitted.  */
+  CHECK_STRING_VALUE (gcc_jit_context_get_first_error (ctxt),
+		      "gcc_jit_context_new_field:"
+		      " type has unknown size (type: struct opaque)");
+}
diff --git a/gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c b/gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c
new file mode 100644
index 0000000..5f096af
--- /dev/null
+++ b/gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c
@@ -0,0 +1,32 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+#include "libgccjit.h"
+
+#include "harness.h"
+
+/* Try to create a global of an opaque struct;
+   the API ought to complain.  */
+
+void
+create_code (gcc_jit_context *ctxt, void *user_data)
+{
+  gcc_jit_struct *t_opaque =
+    gcc_jit_context_new_opaque_struct (ctxt, NULL, "opaque");
+
+  (void)gcc_jit_context_new_global (ctxt, NULL,
+				    GCC_JIT_GLOBAL_EXPORTED,
+				    gcc_jit_struct_as_type (t_opaque),
+				    "instance_of_opaque");
+}
+
+void
+verify_code (gcc_jit_context *ctxt, gcc_jit_result *result)
+{
+  CHECK_VALUE (result, NULL);
+
+  /* Verify that the correct error message was emitted.  */
+  CHECK_STRING_VALUE (gcc_jit_context_get_first_error (ctxt),
+		      "gcc_jit_context_new_global:"
+		      " type has unknown size (type: struct opaque)");
+}
diff --git a/gcc/testsuite/jit.dg/test-error-gcc_jit_function_new_local-opaque-struct.c b/gcc/testsuite/jit.dg/test-error-gcc_jit_function_new_local-opaque-struct.c
new file mode 100644
index 0000000..f263d67
--- /dev/null
+++ b/gcc/testsuite/jit.dg/test-error-gcc_jit_function_new_local-opaque-struct.c
@@ -0,0 +1,42 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+#include "libgccjit.h"
+
+#include "harness.h"
+
+/* Try to create a local of an opaque struct;
+   the API ought to complain.  */
+
+void
+create_code (gcc_jit_context *ctxt, void *user_data)
+{
+  gcc_jit_type *t_void =
+    gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_VOID);
+
+  gcc_jit_struct *t_opaque =
+    gcc_jit_context_new_opaque_struct (ctxt, NULL, "opaque");
+
+  gcc_jit_function *func =
+    gcc_jit_context_new_function (ctxt, NULL,
+                                  GCC_JIT_FUNCTION_EXPORTED,
+                                  t_void,
+                                  "test_fn",
+				  0, NULL,
+                                  0);
+
+  (void)gcc_jit_function_new_local (func, NULL,
+				    gcc_jit_struct_as_type (t_opaque),
+				    "i");
+}
+
+void
+verify_code (gcc_jit_context *ctxt, gcc_jit_result *result)
+{
+  CHECK_VALUE (result, NULL);
+
+  /* Verify that the correct error message was emitted.  */
+  CHECK_STRING_VALUE (gcc_jit_context_get_first_error (ctxt),
+		      "gcc_jit_function_new_local:"
+		      " type has unknown size (type: struct opaque)");
+}
diff --git a/gcc/testsuite/jit.dg/test-error-mismatching-types-in-call.c b/gcc/testsuite/jit.dg/test-error-mismatching-types-in-call.c
index 203c4ca..e89c281 100644
--- a/gcc/testsuite/jit.dg/test-error-mismatching-types-in-call.c
+++ b/gcc/testsuite/jit.dg/test-error-mismatching-types-in-call.c
@@ -26,7 +26,7 @@ create_code (gcc_jit_context *ctxt, void *user_data)
   gcc_jit_type *void_type =
     gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_VOID);
   gcc_jit_struct *struct_foo =
-    gcc_jit_context_new_opaque_struct (ctxt, NULL, "foo");
+    gcc_jit_context_new_struct_type (ctxt, NULL, "foo", 0, NULL);
   gcc_jit_type *foo_ptr =
     gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_foo));
   gcc_jit_param *param =
-- 
1.8.5.3

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00             ` David Malcolm
  2015-01-01  0:00               ` Dibyendu Majumdar
  2015-01-01  0:00               ` Dibyendu Majumdar
@ 2015-01-01  0:00               ` David Malcolm
  2 siblings, 0 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 13:46 -0400, David Malcolm wrote:
> On Wed, 2015-07-08 at 11:30 -0400, David Malcolm wrote:
> > On Wed, 2015-07-08 at 11:05 -0400, David Malcolm wrote:
> > > On Wed, 2015-07-08 at 10:21 -0400, David Malcolm wrote:
> > > > On Sat, 2015-07-04 at 16:58 +0100, Dibyendu Majumdar wrote:
> > > > > On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > > > > On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > > > >> Looks like in the failure case the code is being incorrectly
> > > > > >> optimized. I wonder if this is a manifestation of the get_address bug,
> > > > > >> perhaps the real fix will be better than the patch I am using. I will
> > > > > >> use the latest gcc 5 branch and see if that helps.
> > > > > >>
> > > > > >
> > > > > > Hi Dave,
> > > > > >
> > > > > > I am now using the latest gcc-5-branch from gcc github mirror.
> > > > > > Unfortunately the issue still persists.
> > > > > >
> > > > > > If set optimization level to 0 or 1, then it works ok, but at levels 2
> > > > > > or 3 the break occurs.
> > > > > >
> > > > > 
> > > > > Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> > > > > and -O3 but with this enabled the benchmarks are degraded.
> > > > 
> > > > I've filed the bad code generation issue as:
> > > >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812
> > > > 
> > > > and I'm investigating it.
> > > 
> > > 
> > > Notes on investigation so far.
> > > 
> > > With the fixes here
> > >   https://gcc.gnu.org/ml/jit/2015-q3/msg00025.html
> > > and here:
> > >   https://gcc.gnu.org/ml/jit/2015-q3/msg00028.html
> > > the reproducer from
> > >  https://gcc.gnu.org/ml/jit/2015-q3/msg00012.html
> > > now correctly fails with:
> > >  error: gcc_jit_context_new_field: unknown size for field
> > > "errorJmp" (type: struct ravi_lua_longjmp)
> > > 
> > > Upon applying the equivalent of the fix from:
> > > https://github.com/dibyendumajumdar/ravi/commit/d65d2e68fbdcf211ed36deea05727f996ede8296
> > > to the generator you provided, gcc_jit_context_compile completes.
> > > 
> > > I don't know if it's generating bad code (given that I don't have Ravi
> > > itself running, just the reproducer).  However, I tried comparing the
> > > bug_rdump.txt and bug_rdump_ok.txt reproducers, and tried adding
> > > -fno-strict-aliasing to the former.
> > > 
> > > I turned on GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING and started comparing
> > > the dumpfiles.
> > > 
> > > The diffs stay easily comparable until fake.c.018t.ssa, when numbering
> > > differences between temporaries mean that a simple "diff" becomes
> > > unreadable.
> > > 
> > > So I wrote a tool to try to alleviate this:
> > >   https://github.com/davidmalcolm/gcc-dump-diff
> > > The tool tries to renumber temporaries in dumpfiles so that they are
> > > more consistent between runs, and then tries to do a textual diff of two
> > > dumpfiles.
> > > 
> > > (note that it might renumber labels also)
> > 
> > Yes, labels *were* being renumbered.  I've fixed that now.
> > 
> > > With this, the dumpfiles become comparable again.  I see that when
> > > rerunning the bug_rdump.txt reproducer, the first big difference between
> > > the with and without -fno-strict-aliasing case happens at 035t.fre1.
> > > 
> > > Note in the following how, without -fno-strict-aliasing, various
> > > statements and blocks are eliminated at 035t.fre1, which treats them as
> > > dead code.  In particular, it seems to have optimized away
> > > OP_TEST_do_jmp_5_0 and OP_TEST_do_skip_5_0 (if I'm reading things
> > > right).
> > 
> > It's OP_TEST_do_jmp_5_14, jmp_9_2 and OP_TEST_do_skip_5_15 that are
> > being optimized away by pass fre1 when -fno-strict-aliasing isn't
> > supplied.
> > 
> > I'm attaching a fixed diff, showing the correct label names.
> > 
> > 
> > > My hunch at this time is that this optimization is being too
> > > aggressive... for some reason.  I'll continue poking at this.
> 
> Dibyendu: what Lua code generated the reproducer?  What is the code
> meant to be doing?
> 
> I used gcc_jit_function_dump_to_dot to dump the CFG in GraphViz format;
> you can see the result here:
>  https://dmalcolm.fedorapeople.org/gcc/2015-07-08/rdump.png
> and with the printfs here:
>  https://dmalcolm.fedorapeople.org/gcc/2015-07-08/rdump_ok.png
> 
> I see that both paths out of the "entry" block go through empty blocks
> and then into "jmp_5_1".
> 
> A similar thing happens later with "jmp_9_2": both paths from the
> conditional lead through empty blocks to "jmp_12_3".
> 
> Those pairs of empty blocks look odd.  Is the code correct?
> 
> Looking at the body of "jmp_5_1", and annotating, I see:
> 
> jmp_5_1:
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
> 
>   comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>      /* this must be true because of the 2nd assignment above */
> 
>   comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>      /* similarly this must be false */
> 
>   comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>      /* this must be true because of the 1st assignment above */
> 
>   isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
>      /* hence we have:   true || false && true
>         and hence:       true  */
> 
>   if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;
>       /* hence this always takes the 1st path;
>          the 2nd path is indeed dead code */
> 
> So it does in fact seem reasonable for the optimizer to optimize away
> OP_TEST_do_skip_5_15, and I think that once it does that, it merges
> OP_TEST_do_jmp_5_14 and jmp_9_2 into jmp_5_1, and can then do similar
> optimizations to the statements that were in jmp_9_2.
> 
> So it seems that things I reported pass "fre1" as doing are reasonable.
> 
> It seems that the optimizer is only able to assume the above values when
> strict aliasing is enabled, but it seems to be a reasonable
> optimization.  (I suspect that for some reason the presence of the
> printfs also is stopping this optimization; perhaps JIT doesn't know as
> much as the C frontend about the lack of side-effects of printf?)
> 
> Is the code being supplied correct?  It's not clear to me what it's
> meant to be doing, but that CFG looks curious to me.  Maybe the input is
> incorrect, but it only turns into a problem when optimized?
> 
> FWIW, if this is a CFG issue, note that blocks are cheap in libgccjit; I
> find it easiest to simply create a gcc_jit_block * at the entrypoint of
> every opcode even if there's no fancy control flow going on; blocks get
> immediately consolidated internally, so any redundancy there is very
> brief.

Do you have a way to print opcodes to a buffer?  I think we'd find it
much easier to track this issue down if Ravi used
gcc_jit_block_add_comment to annotate each opcode:
https://gcc.gnu.org/onlinedocs/jit/topics/functions.html#gcc_jit_block_add_comment

so we can see the Ravi IR embedded in the libgccjit IR, as it were.


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                 ` Dibyendu Majumdar
@ 2015-01-01  0:00                   ` Dibyendu Majumdar
  2015-01-01  0:00                     ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 21:22, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> Here is what I think the flow is.
>
> part 1
> --------
>
> 1 [2] LOADNIL   0 0
>
> entry:
>   cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
>   (void)raviV_op_loadnil (L->ci, (int)0, (int)0);
>
>
> This sets register 0 (local variable IX) to NIL
>
> 2 [3] LOADK     1 -1 ; 10
>
>   (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
>   (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
>
> This sets the register at 1 (temporary) to 10.
>
> 3 [3] TEST     1 1
> 4 [3] JMP       0 0 ; to 5
>
> The above two bytecodes go together. This says that if register 1 is
> true then skip the JMP else JMP.
> So we get:
>
>   comparison_0_5 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>   comparison_0_6 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>   comparison_0_7 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>   isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
>   if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;
>
> The test is checking that register 1 is true (which it is as it has
> the constant 10) - then goto skip_2_9.

Since we skipped the jump the next instruction is

5 [3] LOADBOOL 1 0 0

This is setting register 1 to false so we get:

OP_TEST_do_skip_2_9:
  goto jmp_5_1;

jmp_5_1:
  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;

Next instruction is:

6 [3] TEST     1 0
7 [3] JMP       0 1 ; to 9

Now this is saying that if register is _false_ then skip JMP else JMP.
Since we know that register 1 is false as above then the code should
skip the jump.

  comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
  if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto
OP_TEST_do_skip_5_15;

So we go to skip_5_15:

8 [3] LOADBOOL 0 1 0

OP_TEST_do_skip_5_15:
  (&L->ci->u.l.base[(int)0])->value_.b = (int)1;
  (&L->ci->u.l.base[(int)0])->tt_ = (int)1;
  goto jmp_9_2;

So you see that the local IX is set to false above which is what we
want. Next we jump to 9_2 which is the start of the return statement.

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                 ` David Malcolm
@ 2015-01-01  0:00                   ` Dibyendu Majumdar
  2015-01-01  0:00                     ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

[-- Attachment #1: Type: text/plain, Size: 1382 bytes --]

On 8 July 2015 at 20:03, David Malcolm <dmalcolm@redhat.com> wrote:
> On Wed, 2015-07-08 at 20:01 +0100, Dibyendu Majumdar wrote:
>> On 8 July 2015 at 18:46, David Malcolm <dmalcolm@redhat.com> wrote:
>> > Dibyendu: what Lua code generated the reproducer?  What is the code
>> > meant to be doing?
>> >
>>
>> Hi Dave - the Lua test is this:
>>
>> function x()
>>   local IX
>>   if ((10 or true) and false) then
>>     IX = true
>>   end;
>>   return ((10 or true) and false)
>> end
>> assert(x() == false)
>>
>> In the original test IX is an upvalue - i.e. a variable in outer
>> scope. This is my standalone version of the test. The original test is
>> generated as part of the Lua test suite - its purpose is to test
>> various permutations of boolean operators.
>>
>> The original test compares IX and the function return.
>>
>> The issue is that this test should return false - if you see the
>> return statement. However when -O2 or -O3 is enabled it returns true.
>>
>> The if statement is indeed redundant in this cut down version as IX is
>> a local variable. But the return statement is not redundant.
>
> Thanks.  What does this look like as bytecodes?
>

Ok the bug is still there - I was running the test incorrectly. I have
attached the standalone replication and the output.
Note that if I remove the redundant if statement then it works correctly.

Regards
Dibyendu

[-- Attachment #2: bug_lua_bytecode.txt --]
[-- Type: text/plain, Size: 554 bytes --]


function <bug.lua:1,4> (14 instructions at 0xbef6b0)
0 params, 2 slots, 0 upvalues, 1 local, 1 constant, 0 functions
	1	[2]	LOADNIL  	0 0
	2	[3]	LOADK    	1 -1	; 10
	3	[3]	TEST     	1 1
	4	[3]	JMP      	0 0	; to 5
	5	[3]	LOADBOOL 	1 0 0
	6	[3]	TEST     	1 0
	7	[3]	JMP      	0 1	; to 9
	8	[3]	LOADBOOL 	0 1 0
	9	[3]	LOADK    	1 -1	; 10
	10	[3]	TEST     	1 1
	11	[3]	JMP      	0 0	; to 12
	12	[3]	LOADBOOL 	1 0 0
	13	[3]	RETURN   	1 2
	14	[4]	RETURN   	0 1
constants (1) for 0xbef6b0:
	1	10
locals (1) for 0xbef6b0:
	0	IX	2	15
upvalues (0) for 0xbef6b0:

[-- Attachment #3: bug.lua --]
[-- Type: text/x-lua, Size: 165 bytes --]

function x()
  local IX
  if ((10 or true) and false) then IX = true end; return ((10 or true) and false)
end

ravi.dumplua(x)
ravi.compile(x,1)
assert(x() == false)

[-- Attachment #4: bug_output.txt --]
[-- Type: text/plain, Size: 8398 bytes --]

ravif1 (struct ravi_lua_State * L)
{
  struct ravi_CallInfo * D.762;
  struct ravi_TValue * D.763;
  struct ravi_TValue * D.764;
  sizetype D.765;
  struct ravi_TValue * D.766;
  struct ravi_Proto * D.767;
  struct ravi_TValue * D.768;
  sizetype D.769;
  struct ravi_TValue * D.770;
  signed long D.771;
  signed int D.772;
  signed int D.773;
  signed int D.774;
  <unnamed type> iftmp.0;
  <unnamed type> iftmp.1;
  <unnamed type> iftmp.2;
  <unnamed type> iftmp.3;
  <unnamed type> D.795;
  signed int D.796;
  <unnamed type> iftmp.4;
  <unnamed type> iftmp.5;
  sizetype D.807;
  struct ravi_TValue * D.808;
  signed int D.809;
  struct ravi_TValue * D.810;
  signed int D.811;
  <unnamed type> comparison_0_26;
  <unnamed type> comparison_0_22;
  <unnamed type> comparison_0_19;
  <unnamed type> comparison_0_18;
  <unnamed type> comparison_0_17;
  <unnamed type> isfalse_0_16;
  <unnamed type> comparison_0_13;
  <unnamed type> comparison_0_12;
  <unnamed type> comparison_0_11;
  <unnamed type> isfalse_0_10;
  <unnamed type> comparison_0_7;
  <unnamed type> comparison_0_6;
  <unnamed type> comparison_0_5;
  <unnamed type> isfalse_0_4;
  struct ravi_LClosure * cl;

  entry:
  D.762 = L->ci;
  D.763 = D.762->func;
  cl = D.763->value_.gc;
  D.762 = L->ci;
  raviV_op_loadnil (D.762, 0, 0);
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.767 = cl->p;
  D.768 = D.767->k;
  D.769 = 0;
  D.770 = D.768 + D.769;
  D.771 = D.770->value_.i;
  D.766->value_.i = D.771;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.767 = cl->p;
  D.768 = D.767->k;
  D.769 = 0;
  D.770 = D.768 + D.769;
  D.772 = D.770->tt_;
  D.766->tt_ = D.772;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.773 = D.766->tt_;
  comparison_0_5 = D.773 == 0;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.773 = D.766->tt_;
  comparison_0_6 = D.773 == 1;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.774 = D.766->value_.b;
  comparison_0_7 = D.774 == 0;
  if (comparison_0_5 != 0) goto <D.776>; else goto <D.779>;
  <D.779>:
  if (comparison_0_6 != 0) goto <D.783>; else goto <D.781>;
  <D.783>:
  if (comparison_0_7 != 0) goto <D.784>; else goto <D.781>;
  <D.784>:
  iftmp.1 = 1;
  goto <D.782>;
  <D.781>:
  iftmp.1 = 0;
  <D.782>:
  if (iftmp.1 != 0) goto <D.776>; else goto <D.777>;
  <D.776>:
  iftmp.0 = 1;
  goto <D.778>;
  <D.777>:
  iftmp.0 = 0;
  <D.778>:
  isfalse_0_4 = iftmp.0;
  if (isfalse_0_4 == 0) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;
  jmp_5_1:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.766->value_.b = 0;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.766->tt_ = 1;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.773 = D.766->tt_;
  comparison_0_11 = D.773 == 0;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.773 = D.766->tt_;
  comparison_0_12 = D.773 == 1;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.774 = D.766->value_.b;
  comparison_0_13 = D.774 == 0;
  if (comparison_0_11 != 0) goto <D.786>; else goto <D.789>;
  <D.789>:
  if (comparison_0_12 != 0) goto <D.793>; else goto <D.791>;
  <D.793>:
  if (comparison_0_13 != 0) goto <D.794>; else goto <D.791>;
  <D.794>:
  iftmp.3 = 1;
  goto <D.792>;
  <D.791>:
  iftmp.3 = 0;
  <D.792>:
  if (iftmp.3 != 0) goto <D.786>; else goto <D.787>;
  <D.786>:
  iftmp.2 = 1;
  goto <D.788>;
  <D.787>:
  iftmp.2 = 0;
  <D.788>:
  isfalse_0_10 = iftmp.2;
  D.795 = ~isfalse_0_10;
  D.796 = (signed int) D.795;
  if (D.796 == 0) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;
  jmp_9_2:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.767 = cl->p;
  D.768 = D.767->k;
  D.769 = 0;
  D.770 = D.768 + D.769;
  D.771 = D.770->value_.i;
  D.766->value_.i = D.771;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.767 = cl->p;
  D.768 = D.767->k;
  D.769 = 0;
  D.770 = D.768 + D.769;
  D.772 = D.770->tt_;
  D.766->tt_ = D.772;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.773 = D.766->tt_;
  comparison_0_17 = D.773 == 0;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.773 = D.766->tt_;
  comparison_0_18 = D.773 == 1;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.774 = D.766->value_.b;
  comparison_0_19 = D.774 == 0;
  if (comparison_0_17 != 0) goto <D.798>; else goto <D.801>;
  <D.801>:
  if (comparison_0_18 != 0) goto <D.805>; else goto <D.803>;
  <D.805>:
  if (comparison_0_19 != 0) goto <D.806>; else goto <D.803>;
  <D.806>:
  iftmp.5 = 1;
  goto <D.804>;
  <D.803>:
  iftmp.5 = 0;
  <D.804>:
  if (iftmp.5 != 0) goto <D.798>; else goto <D.799>;
  <D.798>:
  iftmp.4 = 1;
  goto <D.800>;
  <D.799>:
  iftmp.4 = 0;
  <D.800>:
  isfalse_0_16 = iftmp.4;
  if (isfalse_0_16 == 0) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;
  jmp_12_3:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.766->value_.b = 0;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  D.766->tt_ = 1;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.807 = 32;
  D.808 = D.764 + D.807;
  L->top = D.808;
  D.767 = cl->p;
  D.809 = D.767->sizep;
  comparison_0_22 = D.809 > 0;
  if (comparison_0_22 != 0) goto OP_RETURN_if_sizep_gt_0_12_23; else goto OP_RETURN_else_sizep_gt_0_12_24;
  OP_TEST_do_jmp_2_8:
  goto jmp_5_1;
  OP_TEST_do_skip_2_9:
  goto jmp_5_1;
  OP_TEST_do_jmp_5_14:
  goto jmp_9_2;
  OP_TEST_do_skip_5_15:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.769 = 0;
  D.810 = D.764 + D.769;
  D.810->value_.b = 1;
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.769 = 0;
  D.810 = D.764 + D.769;
  D.810->tt_ = 1;
  goto jmp_9_2;
  OP_TEST_do_jmp_9_20:
  goto jmp_12_3;
  OP_TEST_do_skip_9_21:
  goto jmp_12_3;
  OP_RETURN_if_sizep_gt_0_12_23:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  luaF_close (L, D.764);
  goto OP_RETURN_else_sizep_gt_0_12_24;
  OP_RETURN_else_sizep_gt_0_12_24:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.765 = 16;
  D.766 = D.764 + D.765;
  luaD_poscall (L, D.766);
  D.811 = 1;
  return D.811;
  LINK_BLOCK_13_25:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.769 = 0;
  D.810 = D.764 + D.769;
  L->top = D.810;
  D.767 = cl->p;
  D.809 = D.767->sizep;
  comparison_0_26 = D.809 > 0;
  if (comparison_0_26 != 0) goto OP_RETURN_if_sizep_gt_0_13_27; else goto OP_RETURN_else_sizep_gt_0_13_28;
  OP_RETURN_if_sizep_gt_0_13_27:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  luaF_close (L, D.764);
  goto OP_RETURN_else_sizep_gt_0_13_28;
  OP_RETURN_else_sizep_gt_0_13_28:
  D.762 = L->ci;
  D.764 = D.762->u.l.base;
  D.769 = 0;
  D.810 = D.764 + D.769;
  luaD_poscall (L, D.810);
  D.811 = 1;
  return D.811;
}


	.file	"fake.c"
	.section	.text.unlikely,"ax",@progbits
.LCOLDB0:
	.text
.LHOTB0:
	.p2align 4,,15
	.globl	ravif1
	.type	ravif1, @function
ravif1:
.LFB0:
	.cfi_startproc
.L2:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	movq	%rdi, %rbx
	xorl	%edx, %edx
	xorl	%esi, %esi
	subq	$8, %rsp
	.cfi_def_cfa_offset 32
	movq	32(%rdi), %rdi
	movq	(%rdi), %rax
	movq	(%rax), %rbp
	call	raviV_op_loadnil@PLT
	movq	32(%rbx), %rax
	movq	24(%rbp), %rdx
	movq	32(%rax), %rsi
	movq	48(%rdx), %rcx
	movl	32(%rdx), %edx
	movq	(%rcx), %rdi
	testl	%edx, %edx
	movl	$1, 24(%rsi)
	movq	%rdi, 16(%rsi)
	movq	(%rcx), %rcx
	movq	%rcx, 16(%rsi)
	leaq	32(%rsi), %rcx
	movq	%rcx, 16(%rbx)
	jle	.L3
.L4:
	movq	%rbx, %rdi
	call	luaF_close@PLT
	movq	32(%rbx), %rax
.L3:
	movq	32(%rax), %rsi
	movq	%rbx, %rdi
	addq	$16, %rsi
	call	luaD_poscall@PLT
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	movl	$1, %eax
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE0:
	.size	ravif1, .-ravif1
	.section	.text.unlikely
.LCOLDE0:
	.text
.LHOTE0:
	.ident	"GCC: (GNU) 5.1.1 20150704"
	.section	.note.GNU-stack,"",@progbits
../build/lua: bug.lua:8: assertion failed!
stack traceback:
	[C]: in function 'assert'
	bug.lua:8: in main chunk
	[C]: in ?

[-- Attachment #5: bug_rdump.txt --]
[-- Type: text/plain, Size: 210661 bytes --]

/* This code was autogenerated by gcc_jit_context_dump_reproducer_to_file.

   libgccjit (GCC) version 5.1.1 20150704 (x86_64-unknown-linux-gnu)
  	compiled by GNU C version 5.1.0, GMP version 5.1.3, MPFR version 3.1.2-p3, MPC version 1.0.1
*/
#include <libgccjit.h>

#pragma GCC diagnostic ignored "-Wunused-variable"

static void
set_options (gcc_jit_context *ctxt_0xbb0f30,
             gcc_jit_context *ctxt_0xbfd820);

static void
create_code (gcc_jit_context *ctxt_0xbb0f30,
             gcc_jit_context *ctxt_0xbfd820);

int
main (int argc, const char **argv)
{
  gcc_jit_context *ctxt_0xbb0f30;
  gcc_jit_context *ctxt_0xbfd820;
  gcc_jit_result *result;

  ctxt_0xbb0f30 = gcc_jit_context_acquire ();
  ctxt_0xbfd820 = gcc_jit_context_new_child_context (ctxt_0xbb0f30);
  set_options (ctxt_0xbb0f30,
               ctxt_0xbfd820);
  create_code (ctxt_0xbb0f30,
               ctxt_0xbfd820);
  result = gcc_jit_context_compile (ctxt_0xbfd820);
  gcc_jit_context_release (ctxt_0xbfd820);
  gcc_jit_context_release (ctxt_0xbb0f30);
  gcc_jit_result_release (result);
  return 0;
}

static void
set_options (gcc_jit_context *ctxt_0xbb0f30,
             gcc_jit_context *ctxt_0xbfd820)
{
  /* Set options for ctxt_0xbb0f30.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0xbb0f30,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  NULL);
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0xbb0f30,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbb0f30,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
  gcc_jit_context_set_bool_allow_unreachable_blocks (ctxt_0xbb0f30, 1);

  /* Set options for ctxt_0xbfd820.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0xbfd820,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  NULL);
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0xbfd820,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xbfd820,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
  gcc_jit_context_set_bool_allow_unreachable_blocks (ctxt_0xbfd820, 1);
}

static void
create_code (gcc_jit_context *ctxt_0xbb0f30,
             gcc_jit_context *ctxt_0xbfd820)
{
  /* Replay of API calls for ctxt_0xbb0f30.  */
  gcc_jit_type *type_bool_0xbb1590 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_BOOL);
  gcc_jit_type *type_double_0xbb1600 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_DOUBLE);
  gcc_jit_type *type_double___0xbb1640 =
    gcc_jit_type_get_pointer (type_double_0xbb1600);
  gcc_jit_type *type_double_____0xbb1680 =
    gcc_jit_type_get_pointer (type_double___0xbb1640);
  gcc_jit_type *type_long_long_0xbb16c0 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_LONG_LONG);
  gcc_jit_type *type_long_long___0xbb1750 =
    gcc_jit_type_get_pointer (type_long_long_0xbb16c0);
  gcc_jit_type *type_long_long_____0xbb1790 =
    gcc_jit_type_get_pointer (type_long_long___0xbb1750);
  gcc_jit_type *type_unsigned_long_long_0xbb17d0 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_UNSIGNED_LONG_LONG);
  gcc_jit_type *type_size_t_0xbb1810 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_SIZE_T);
  gcc_jit_type *type_int_0xbb18e0 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_INT);
  gcc_jit_type *type_int___0xbb1920 =
    gcc_jit_type_get_pointer (type_int_0xbb18e0);
  gcc_jit_type *type_short_0xbb1960 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_SHORT);
  gcc_jit_type *type_unsigned_short_0xbb19a0 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_UNSIGNED_SHORT);
  gcc_jit_type *type_unsigned_int_0xbb19e0 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_UNSIGNED_INT);
  gcc_jit_type *type_unsigned_char_0xbb1a20 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_UNSIGNED_CHAR);
  gcc_jit_type *type_char_0xbb1a60 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_CHAR);
  gcc_jit_type *type_char___0xbb1aa0 =
    gcc_jit_type_get_pointer (type_char_0xbb1a60);
  gcc_jit_type *type_const_char___0xbb1850 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_CONST_CHAR_PTR);
  gcc_jit_type *type_void_0xbb1890 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_VOID);
  gcc_jit_type *type_void___0xbb1bb0 = gcc_jit_context_get_type (ctxt_0xbb0f30, GCC_JIT_TYPE_VOID_PTR);
  gcc_jit_type *type_unsigned_int___0xbb1bf0 =
    gcc_jit_type_get_pointer (type_unsigned_int_0xbb19e0);
  gcc_jit_struct *struct_struct_ravi_lua_State_0xbb1700 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_State___0xbb1c90 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_State_0xbb1700));
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____0xbb1cd0[1] = {
    type_struct_ravi_lua_State___0xbb1c90,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____0xbb1ae0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                           1, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____0xbb1cd0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____int__long_long__0xbb1b20[3] = {
    type_struct_ravi_lua_State___0xbb1c90,
    type_int_0xbb18e0,
    type_long_long_0xbb16c0,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____int__long_long__0xbb1e80 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                           3, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____int__long_long__0xbb1b20, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_void__void____void____size_t__size_t__0xbb1ec0[4] = {
    type_void___0xbb1bb0,
    type_void___0xbb1bb0,
    type_size_t_0xbb1810,
    type_size_t_0xbb1810,
  };
  gcc_jit_type *ptr_to_void______void____void____size_t__size_t__0xbb1f40 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void_0xbb1890, /* gcc_jit_type *return_type */
                                           4, /* int num_params */
                                           params_for_function_type_void__void____void____size_t__size_t__0xbb1ec0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_lua_Debug_0xbb1fe0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_Debug"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_Debug___0xbb2030 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_Debug_0xbb1fe0));
  gcc_jit_type *params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0xbb2070[2] = {
    type_struct_ravi_lua_State___0xbb1c90,
    type_struct_ravi_lua_Debug___0xbb2030,
  };
  gcc_jit_type *ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0xbb20f0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void___0xbb1bb0, /* gcc_jit_type *return_type */
                                           2, /* int num_params */
                                           params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0xbb2070, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_GCObject_0xbb2190 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_GCObject"); /* const char *name */
  gcc_jit_type *type_struct_ravi_GCObject___0xbb1d50 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_GCObject_0xbb2190));
  gcc_jit_field *field_next_0xbb1df0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb23c0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb2470 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb24c0[3] = {
    field_next_0xbb1df0,
    field_tt_0xbb23c0,
    field_marked_0xbb2470,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_GCObject_0xbb2190, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xbb24c0); /* gcc_jit_field **fields */
  gcc_jit_field *field_gc_0xbb2590 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "gc"); /* const char *name */
  gcc_jit_field *field_p_0xbb2640 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xbb1bb0, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_b_0xbb26f0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "b"); /* const char *name */
  gcc_jit_field *field_f_0xbb27a0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xbb1ae0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_field *field_i_0xbb2850 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /* gcc_jit_type *type, */
                               "i"); /* const char *name */
  gcc_jit_field *field_n_0xbb2240 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0xbb1600, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Value_0xbb22f0[6] = {
    field_gc_0xbb2590,
    field_p_0xbb2640,
    field_b_0xbb26f0,
    field_f_0xbb27a0,
    field_i_0xbb2850,
    field_n_0xbb2240,
  };
  gcc_jit_type *union_union_ravi_Value_0xbb22f0 =
    gcc_jit_context_new_union_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Value", /* const char *name */
                                    6, /* int num_fields */
                                    fields_for_union_union_ravi_Value_0xbb22f0); /* gcc_jit_field **fields */
  gcc_jit_field *field_value__0xbb2bf0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xbb22f0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0xbb2ca0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TValue_0xbb2d50 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TValue"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb2df0[2] = {
    field_value__0xbb2bf0,
    field_tt__0xbb2ca0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TValue_0xbb2d50, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xbb2df0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_TValue___0xbb2e30 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xbb2d50));
  gcc_jit_type *type_const_struct_ravi_TValue_0xbb2e70 =
    gcc_jit_type_get_const (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xbb2d50));
  gcc_jit_type *type_const_struct_ravi_TValue___0xbb2eb0 =
    gcc_jit_type_get_pointer (type_const_struct_ravi_TValue_0xbb2e70);
  gcc_jit_struct *struct_struct_ravi_TString_0xbb2f50 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TString"); /* const char *name */
  gcc_jit_type *type_struct_ravi_TString___0xbb2fa0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TString_0xbb2f50));
  gcc_jit_type *type_struct_ravi_TString_____0xbb2fe0 =
    gcc_jit_type_get_pointer (type_struct_ravi_TString___0xbb2fa0);
  gcc_jit_field *field_next_0xbb3080 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb3130 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb31e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_extra_0xbb3290 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_hash_0xbb2900 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xbb19e0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_len_0xbb29b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xbb1810, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_hnext_0xbb2a60 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xbb2fa0, /* gcc_jit_type *type, */
                               "hnext"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb2ab0[7] = {
    field_next_0xbb3080,
    field_tt_0xbb3130,
    field_marked_0xbb31e0,
    field_extra_0xbb3290,
    field_hash_0xbb2900,
    field_len_0xbb29b0,
    field_hnext_0xbb2a60,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TString_0xbb2f50, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xbb2ab0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Table_0xbb3720 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Table"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Table___0xbb3770 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Table_0xbb3720));
  gcc_jit_type *type_struct_ravi_Table_____0xbb37b0 =
    gcc_jit_type_get_pointer (type_struct_ravi_Table___0xbb3770);
  gcc_jit_field *field_next_0xbb3850 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb3900 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb39b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_ttuv__0xbb3a60 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "ttuv_"); /* const char *name */
  gcc_jit_field *field_metatable_0xbb3b10 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xbb3770, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_len_0xbb3bc0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xbb1810, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_user__0xbb3c70 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xbb22f0, /* gcc_jit_type *type, */
                               "user_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Udata_0xbb3d20 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Udata"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb3d70[7] = {
    field_next_0xbb3850,
    field_tt_0xbb3900,
    field_marked_0xbb39b0,
    field_ttuv__0xbb3a60,
    field_metatable_0xbb3b10,
    field_len_0xbb3bc0,
    field_user__0xbb3c70,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Udata_0xbb3d20, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xbb3d70); /* gcc_jit_field **fields */
  gcc_jit_field *field_name_0xbb3e60 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xbb2fa0, /* gcc_jit_type *type, */
                               "name"); /* const char *name */
  gcc_jit_field *field_type_0xbb3f10 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "type"); /* const char *name */
  gcc_jit_field *field_instack_0xbb3fc0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "instack"); /* const char *name */
  gcc_jit_field *field_idx_0xbb4070 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "idx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Upvaldesc_0xbb4120 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Upvaldesc"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb4200[4] = {
    field_name_0xbb3e60,
    field_type_0xbb3f10,
    field_instack_0xbb3fc0,
    field_idx_0xbb4070,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Upvaldesc_0xbb4120, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0xbb4200); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Upvaldesc___0xbb4270 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Upvaldesc_0xbb4120));
  gcc_jit_field *field_varname_0xbb3300 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xbb2fa0, /* gcc_jit_type *type, */
                               "varname"); /* const char *name */
  gcc_jit_field *field_startpc_0xbb33b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "startpc"); /* const char *name */
  gcc_jit_field *field_endpc_0xbb3460 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "endpc"); /* const char *name */
  gcc_jit_field *field_ravi_type_0xbb3510 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "ravi_type"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_LocVar_0xbb35c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LocVar"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb3610[4] = {
    field_varname_0xbb3300,
    field_startpc_0xbb33b0,
    field_endpc_0xbb3460,
    field_ravi_type_0xbb3510,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LocVar_0xbb35c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0xbb3610); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_LocVar___0xbb3680 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LocVar_0xbb35c0));
  gcc_jit_struct *struct_struct_ravi_LClosure_0xbb48d0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LClosure"); /* const char *name */
  gcc_jit_type *type_struct_ravi_LClosure___0xbb4920 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0xbb48d0));
  gcc_jit_type *type_struct_ravi_LClosure_____0xbb4960 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure___0xbb4920);
  gcc_jit_type *type_struct_ravi_LClosure_______0xbb49a0 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure_____0xbb4960);
  gcc_jit_field *field_jit_status_0xbb4a40 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "jit_status"); /* const char *name */
  gcc_jit_field *field_jit_flags_0xbb4af0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "jit_flags"); /* const char *name */
  gcc_jit_field *field_execution_count_0xbb4ba0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xbb19a0, /* gcc_jit_type *type, */
                               "execution_count"); /* const char *name */
  gcc_jit_field *field_jit_data_0xbb4c50 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xbb1bb0, /* gcc_jit_type *type, */
                               "jit_data"); /* const char *name */
  gcc_jit_field *field_jit_function_0xbb4d00 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xbb1ae0, /* gcc_jit_type *type, */
                               "jit_function"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviJITProto_0xbb4db0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviJITProto"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb4e00[5] = {
    field_jit_status_0xbb4a40,
    field_jit_flags_0xbb4af0,
    field_execution_count_0xbb4ba0,
    field_jit_data_0xbb4c50,
    field_jit_function_0xbb4d00,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviJITProto_0xbb4db0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0xbb4e00); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Proto_0xbb4ef0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Proto"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Proto___0xbb4f40 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Proto_0xbb4ef0));
  gcc_jit_type *type_struct_ravi_Proto_____0xbb4f80 =
    gcc_jit_type_get_pointer (type_struct_ravi_Proto___0xbb4f40);
  gcc_jit_field *field_next_0xbb5020 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb50d0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb5180 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_numparams_0xbb5230 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "numparams"); /* const char *name */
  gcc_jit_field *field_is_vararg_0xbb52e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "is_vararg"); /* const char *name */
  gcc_jit_field *field_maxstacksize_0xbb5390 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "maxstacksize"); /* const char *name */
  gcc_jit_field *field_sizeupvalues_0xbb5440 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "sizeupvalues"); /* const char *name */
  gcc_jit_field *field_sizek_0xbb54f0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "sizek"); /* const char *name */
  gcc_jit_field *field_sizecode_0xbb55a0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "sizecode"); /* const char *name */
  gcc_jit_field *field_sizelineinfo_0xbb5650 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "sizelineinfo"); /* const char *name */
  gcc_jit_field *field_sizep_0xbb5700 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "sizep"); /* const char *name */
  gcc_jit_field *field_sizelocvars_0xbb57b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "sizelocvars"); /* const char *name */
  gcc_jit_field *field_linedefined_0xbb5860 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "linedefined"); /* const char *name */
  gcc_jit_field *field_lastlinedefined_0xbb4310 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "lastlinedefined"); /* const char *name */
  gcc_jit_field *field_k_0xbb43c0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_code_0xbb4470 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xbb1bf0, /* gcc_jit_type *type, */
                               "code"); /* const char *name */
  gcc_jit_field *field_p_0xbb4520 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto_____0xbb4f80, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_lineinfo_0xbb45d0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0xbb1920, /* gcc_jit_type *type, */
                               "lineinfo"); /* const char *name */
  gcc_jit_field *field_locvars_0xbb4680 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LocVar___0xbb3680, /* gcc_jit_type *type, */
                               "locvars"); /* const char *name */
  gcc_jit_field *field_upvalues_0xbb4730 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Upvaldesc___0xbb4270, /* gcc_jit_type *type, */
                               "upvalues"); /* const char *name */
  gcc_jit_field *field_cache_0xbb47e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xbb4920, /* gcc_jit_type *type, */
                               "cache"); /* const char *name */
  gcc_jit_field *field_source_0xbb6160 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xbb2fa0, /* gcc_jit_type *type, */
                               "source"); /* const char *name */
  gcc_jit_field *field_gclist_0xbb6210 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_jit_0xbb62c0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviJITProto_0xbb4db0), /* gcc_jit_type *type, */
                               "ravi_jit"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb6310[24] = {
    field_next_0xbb5020,
    field_tt_0xbb50d0,
    field_marked_0xbb5180,
    field_numparams_0xbb5230,
    field_is_vararg_0xbb52e0,
    field_maxstacksize_0xbb5390,
    field_sizeupvalues_0xbb5440,
    field_sizek_0xbb54f0,
    field_sizecode_0xbb55a0,
    field_sizelineinfo_0xbb5650,
    field_sizep_0xbb5700,
    field_sizelocvars_0xbb57b0,
    field_linedefined_0xbb5860,
    field_lastlinedefined_0xbb4310,
    field_k_0xbb43c0,
    field_code_0xbb4470,
    field_p_0xbb4520,
    field_lineinfo_0xbb45d0,
    field_locvars_0xbb4680,
    field_upvalues_0xbb4730,
    field_cache_0xbb47e0,
    field_source_0xbb6160,
    field_gclist_0xbb6210,
    field_ravi_jit_0xbb62c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Proto_0xbb4ef0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0xbb6310); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_UpVal_0xbb6480 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal"); /* const char *name */
  gcc_jit_type *type_struct_ravi_UpVal___0xbb64d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_UpVal_0xbb6480));
  gcc_jit_field *field_next_0xbb6570 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb6620 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb66d0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0xbb6780 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0xbb6830 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_f_0xbb68e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xbb1ae0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_TValue_1__0xbb6930 =
    gcc_jit_context_new_array_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xbb2d50), /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvalue_0xbb69e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_TValue_1__0xbb6930, /* gcc_jit_type *type, */
                               "upvalue"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CClosure_0xbb6a90 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CClosure"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb6ae0[7] = {
    field_next_0xbb6570,
    field_tt_0xbb6620,
    field_marked_0xbb66d0,
    field_nupvalues_0xbb6780,
    field_gclist_0xbb6830,
    field_f_0xbb68e0,
    field_upvalue_0xbb69e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CClosure_0xbb6a90, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xbb6ae0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_CClosure___0xbb6b70 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0xbb6a90));
  gcc_jit_field *field_next_0xbb6c10 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb6cc0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb6d70 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0xbb6e20 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0xbb6ed0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_p_0xbb6f80 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto___0xbb4f40, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_UpVal___1__0xbb6fd0 =
    gcc_jit_context_new_array_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    type_struct_ravi_UpVal___0xbb64d0, /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvals_0xbb7080 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_UpVal___1__0xbb6fd0, /* gcc_jit_type *type, */
                               "upvals"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb70d0[7] = {
    field_next_0xbb6c10,
    field_tt_0xbb6cc0,
    field_marked_0xbb6d70,
    field_nupvalues_0xbb6e20,
    field_gclist_0xbb6ed0,
    field_p_0xbb6f80,
    field_upvals_0xbb7080,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LClosure_0xbb48d0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xbb70d0); /* gcc_jit_field **fields */
  gcc_jit_field *field_c_0xbb71c0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0xbb6a90), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *field_l_0xbb7270 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0xbb48d0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Closure_0xbb7320[2] = {
    field_c_0xbb71c0,
    field_l_0xbb7270,
  };
  gcc_jit_type *union_union_ravi_Closure_0xbb7320 =
    gcc_jit_context_new_union_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Closure", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_Closure_0xbb7320); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_Closure___0xbb73f0 =
    gcc_jit_type_get_pointer (union_union_ravi_Closure_0xbb7320);
  gcc_jit_field *field_value__0xbb7490 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xbb22f0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0xbb7540 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_field *field_next_0xbb75f0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TKey_nk_0xbb76a0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TKey_nk"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb4170[3] = {
    field_value__0xbb7490,
    field_tt__0xbb7540,
    field_next_0xbb75f0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TKey_nk_0xbb76a0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xbb4170); /* gcc_jit_field **fields */
  gcc_jit_field *field_nk_0xbb7800 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TKey_nk_0xbb76a0), /* gcc_jit_type *type, */
                               "nk"); /* const char *name */
  gcc_jit_field *field_tvk_0xbb78b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xbb2d50), /* gcc_jit_type *type, */
                               "tvk"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_TKey_0xbb7960[2] = {
    field_nk_0xbb7800,
    field_tvk_0xbb78b0,
  };
  gcc_jit_type *union_union_ravi_TKey_0xbb7960 =
    gcc_jit_context_new_union_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_TKey", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_TKey_0xbb7960); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_TKey___0xbb7a30 =
    gcc_jit_type_get_pointer (union_union_ravi_TKey_0xbb7960);
  gcc_jit_field *field_i_val_0xbb7ad0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xbb2d50), /* gcc_jit_type *type, */
                               "i_val"); /* const char *name */
  gcc_jit_field *field_i_key_0xbb7b80 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_TKey_0xbb7960, /* gcc_jit_type *type, */
                               "i_key"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Node_0xbb5910 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Node"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb5960[2] = {
    field_i_val_0xbb7ad0,
    field_i_key_0xbb7b80,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Node_0xbb5910, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xbb5960); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Node___0xbb59d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Node_0xbb5910));
  gcc_jit_field *field_data_0xbb5a70 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xbb1bb0, /* gcc_jit_type *type, */
                               "data"); /* const char *name */
  gcc_jit_field *field_len_0xbb5b20 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xbb19e0, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_size_0xbb5bd0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xbb19e0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_field *field_array_type_0xbb5c80 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "array_type"); /* const char *name */
  gcc_jit_field *field_array_modifier_0xbb5d30 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "array_modifier"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviArray_0xbb5de0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviArray"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb5e30[5] = {
    field_data_0xbb5a70,
    field_len_0xbb5b20,
    field_size_0xbb5bd0,
    field_array_type_0xbb5c80,
    field_array_modifier_0xbb5d30,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviArray_0xbb5de0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0xbb5e30); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0xbb5f20 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbb5fd0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbb6080 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_flags_0xbb8890 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "flags"); /* const char *name */
  gcc_jit_field *field_lsizenode_0xbb8940 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "lsizenode"); /* const char *name */
  gcc_jit_field *field_sizearray_0xbb89f0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xbb19e0, /* gcc_jit_type *type, */
                               "sizearray"); /* const char *name */
  gcc_jit_field *field_array_0xbb8aa0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "array"); /* const char *name */
  gcc_jit_field *field_node_0xbb8b50 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0xbb59d0, /* gcc_jit_type *type, */
                               "node"); /* const char *name */
  gcc_jit_field *field_lastfree_0xbb8c00 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0xbb59d0, /* gcc_jit_type *type, */
                               "lastfree"); /* const char *name */
  gcc_jit_field *field_metatable_0xbb8cb0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xbb3770, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_gclist_0xbb8d60 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_array_0xbb8e10 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviArray_0xbb5de0), /* gcc_jit_type *type, */
                               "ravi_array"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb8e60[12] = {
    field_next_0xbb5f20,
    field_tt_0xbb5fd0,
    field_marked_0xbb6080,
    field_flags_0xbb8890,
    field_lsizenode_0xbb8940,
    field_sizearray_0xbb89f0,
    field_array_0xbb8aa0,
    field_node_0xbb8b50,
    field_lastfree_0xbb8c00,
    field_metatable_0xbb8cb0,
    field_gclist_0xbb8d60,
    field_ravi_array_0xbb8e10,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Table_0xbb3720, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             12, /* int num_fields */
                             fields_fields_0xbb8e60); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_lua_longjmp_0xbb8f90 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_longjmp"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_longjmp___0xbb8fe0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_longjmp_0xbb8f90));
  gcc_jit_field *field_buffer_0xbb9080 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_char___0xbb1aa0, /* gcc_jit_type *type, */
                               "buffer"); /* const char *name */
  gcc_jit_field *field_n_0xbb9130 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xbb1810, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *field_buffsize_0xbb91e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xbb1810, /* gcc_jit_type *type, */
                               "buffsize"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Mbuffer_0xbb9290 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Mbuffer"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb92e0[3] = {
    field_buffer_0xbb9080,
    field_n_0xbb9130,
    field_buffsize_0xbb91e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Mbuffer_0xbb9290, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xbb92e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_hash_0xbb93b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString_____0xbb2fe0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_nuse_0xbb9460 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "nuse"); /* const char *name */
  gcc_jit_field *field_size_0xbb9510 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_stringtable_0xbb95c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_stringtable"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb9610[3] = {
    field_hash_0xbb93b0,
    field_nuse_0xbb9460,
    field_size_0xbb9510,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_stringtable_0xbb95c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xbb9610); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_CallInfo_0xbb96e0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo"); /* const char *name */
  gcc_jit_type *type_struct_ravi_CallInfo___0xbb9730 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0xbb96e0));
  gcc_jit_field *field_base_0xbb97d0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "base"); /* const char *name */
  gcc_jit_field *field_savedpc_0xbb9880 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xbb1bf0, /* gcc_jit_type *type, */
                               "savedpc"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_lua_0xbb9930 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_lua"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb76f0[2] = {
    field_base_0xbb97d0,
    field_savedpc_0xbb9880,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_lua_0xbb9930, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xbb76f0); /* gcc_jit_field **fields */
  gcc_jit_field *field_k_0xbb9ab0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____int__long_long__0xbb1e80, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_old_errfunc_0xbb9b60 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /* gcc_jit_type *type, */
                               "old_errfunc"); /* const char *name */
  gcc_jit_field *field_ctx_0xbb9c10 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /* gcc_jit_type *type, */
                               "ctx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_C_0xbb9cc0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_C"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb9d10[3] = {
    field_k_0xbb9ab0,
    field_old_errfunc_0xbb9b60,
    field_ctx_0xbb9c10,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_C_0xbb9cc0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xbb9d10); /* gcc_jit_field **fields */
  gcc_jit_field *field_l_0xbb9de0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_lua_0xbb9930), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *field_c_0xbb9e90 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_C_0xbb9cc0), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_CallInfo_u_0xbb9f40[2] = {
    field_l_0xbb9de0,
    field_c_0xbb9e90,
  };
  gcc_jit_type *union_union_ravi_CallInfo_u_0xbb9f40 =
    gcc_jit_context_new_union_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_CallInfo_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_CallInfo_u_0xbb9f40); /* gcc_jit_field **fields */
  gcc_jit_field *field_func_0xbba070 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "func"); /* const char *name */
  gcc_jit_field *field_top_0xbba120 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_previous_0xbba1d0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /* gcc_jit_type *type, */
                               "previous"); /* const char *name */
  gcc_jit_field *field_next_0xbba280 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_u_0xbba330 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_CallInfo_u_0xbb9f40, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *field_extra_0xbba3e0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_nresults_0xbba490 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_short_0xbb1960, /* gcc_jit_type *type, */
                               "nresults"); /* const char *name */
  gcc_jit_field *field_callstatus_0xbba540 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "callstatus"); /* const char *name */
  gcc_jit_field *fields_fields_0xbba590[8] = {
    field_func_0xbba070,
    field_top_0xbba120,
    field_previous_0xbba1d0,
    field_next_0xbba280,
    field_u_0xbba330,
    field_extra_0xbba3e0,
    field_nresults_0xbba490,
    field_callstatus_0xbba540,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_0xbb96e0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             8, /* int num_fields */
                             fields_fields_0xbba590); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_State_0xbba680 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_State___0xbba6d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_State_0xbba680));
  gcc_jit_struct *struct_struct_ravi_global_State_0xbba770 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_global_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_global_State___0xbba7c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_global_State_0xbba770));
  gcc_jit_field *field_next_0xbba860 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xbba910 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xbba9c0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_status_0xbbaa70 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "status"); /* const char *name */
  gcc_jit_field *field_top_0xbbab20 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_l_G_0xbbabd0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_global_State___0xbba7c0, /* gcc_jit_type *type, */
                               "l_G"); /* const char *name */
  gcc_jit_field *field_ci_0xbbac80 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /* gcc_jit_type *type, */
                               "ci"); /* const char *name */
  gcc_jit_field *field_oldpc_0xbbad30 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xbb1bf0, /* gcc_jit_type *type, */
                               "oldpc"); /* const char *name */
  gcc_jit_field *field_stack_last_0xbbade0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "stack_last"); /* const char *name */
  gcc_jit_field *field_stack_0xbbae90 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "stack"); /* const char *name */
  gcc_jit_field *field_openupval_0xbbaf40 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xbb64d0, /* gcc_jit_type *type, */
                               "openupval"); /* const char *name */
  gcc_jit_field *field_gclist_0xbb7bd0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xbb1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_twups_0xbb7c80 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /* gcc_jit_type *type, */
                               "twups"); /* const char *name */
  gcc_jit_field *field_errorJmp_0xbb7d30 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_longjmp___0xbb8fe0, /* gcc_jit_type *type, */
                               "errorJmp"); /* const char *name */
  gcc_jit_field *field_base_ci_0xbb7de0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0xbb96e0), /* gcc_jit_type *type, */
                               "base_ci"); /* const char *name */
  gcc_jit_field *field_hook_0xbb7e90 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0xbb20f0, /* gcc_jit_type *type, */
                               "hook"); /* const char *name */
  gcc_jit_field *field_errfunc_0xbb7f40 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /* gcc_jit_type *type, */
                               "errfunc"); /* const char *name */
  gcc_jit_field *field_stacksize_0xbb7ff0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "stacksize"); /* const char *name */
  gcc_jit_field *field_basehookcount_0xbb80a0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "basehookcount"); /* const char *name */
  gcc_jit_field *field_hookcount_0xbb8150 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "hookcount"); /* const char *name */
  gcc_jit_field *field_nny_0xbb8200 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xbb19a0, /* gcc_jit_type *type, */
                               "nny"); /* const char *name */
  gcc_jit_field *field_nCcalls_0xbb82b0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xbb19a0, /* gcc_jit_type *type, */
                               "nCcalls"); /* const char *name */
  gcc_jit_field *field_hookmask_0xbb8360 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "hookmask"); /* const char *name */
  gcc_jit_field *field_allowhook_0xbb8410 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xbb1a20, /* gcc_jit_type *type, */
                               "allowhook"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb8460[24] = {
    field_next_0xbba860,
    field_tt_0xbba910,
    field_marked_0xbba9c0,
    field_status_0xbbaa70,
    field_top_0xbbab20,
    field_l_G_0xbbabd0,
    field_ci_0xbbac80,
    field_oldpc_0xbbad30,
    field_stack_last_0xbbade0,
    field_stack_0xbbae90,
    field_openupval_0xbbaf40,
    field_gclist_0xbb7bd0,
    field_twups_0xbb7c80,
    field_errorJmp_0xbb7d30,
    field_base_ci_0xbb7de0,
    field_hook_0xbb7e90,
    field_errfunc_0xbb7f40,
    field_stacksize_0xbb7ff0,
    field_basehookcount_0xbb80a0,
    field_hookcount_0xbb8150,
    field_nny_0xbb8200,
    field_nCcalls_0xbb82b0,
    field_hookmask_0xbb8360,
    field_allowhook_0xbb8410,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_lua_State_0xbb1700, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0xbb8460); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0xbb85d0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xbb64d0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_touched_0xbb8680 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /* gcc_jit_type *type, */
                               "touched"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_UpVal_u_open_0xbb8730 =
    gcc_jit_context_new_opaque_struct (ctxt_0xbb0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal_u_open"); /* const char *name */
  gcc_jit_field *fields_fields_0xbb8780[2] = {
    field_next_0xbb85d0,
    field_touched_0xbb8680,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_u_open_0xbb8730, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xbb8780); /* gcc_jit_field **fields */
  gcc_jit_field *field_open_0xbbc310 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_UpVal_u_open_0xbb8730), /* gcc_jit_type *type, */
                               "open"); /* const char *name */
  gcc_jit_field *field_value_0xbbc380 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xbb2d50), /* gcc_jit_type *type, */
                               "value"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_UpVal_u_0xbbc430[2] = {
    field_open_0xbbc310,
    field_value_0xbbc380,
  };
  gcc_jit_type *union_union_ravi_UpVal_u_0xbbc430 =
    gcc_jit_context_new_union_type (ctxt_0xbb0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_UpVal_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_UpVal_u_0xbbc430); /* gcc_jit_field **fields */
  gcc_jit_field *field_v_0xbbc560 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /* gcc_jit_type *type, */
                               "v"); /* const char *name */
  gcc_jit_field *field_refcount_0xbbc610 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xbb1810, /* gcc_jit_type *type, */
                               "refcount"); /* const char *name */
  gcc_jit_field *field_u_0xbbc6c0 =
    gcc_jit_context_new_field (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_UpVal_u_0xbbc430, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *fields_fields_0xbbc710[3] = {
    field_v_0xbbc560,
    field_refcount_0xbbc610,
    field_u_0xbbc6c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_0xbb6480, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xbbc710); /* gcc_jit_field **fields */
  gcc_jit_param *param_L_0xbbc7e0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_firstResult_0xbbc890 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "firstResult"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_poscall_0xbbc940[2] = {
    param_L_0xbbc7e0,
    param_firstResult_0xbbc890,
  };
  gcc_jit_function *func_luaD_poscall_0xbbc940 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaD_poscall", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaD_poscall_0xbbc940, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbca70 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_uv_0xbbcb20 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xbb64d0, /*gcc_jit_type *type */
                               "uv"); /* const char *name */
  gcc_jit_param *params_for_func_luaC_upvalbarrier__0xbbcbd0[2] = {
    param_L_0xbbca70,
    param_uv_0xbbcb20,
  };
  gcc_jit_function *func_luaC_upvalbarrier__0xbbcbd0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaC_upvalbarrier_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaC_upvalbarrier__0xbbcbd0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbccd0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0xbbcd80 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0xbbce30 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_precall_0xbbcee0[3] = {
    param_L_0xbbccd0,
    param_func_0xbbcd80,
    param_nresults_0xbbce30,
  };
  gcc_jit_function *func_luaD_precall_0xbbcee0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaD_precall", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaD_precall_0xbbcee0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbcfe0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0xbbd090 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0xbbd140 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *param_allowyield_0xbbd1f0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "allowyield"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_call_0xbbd2a0[4] = {
    param_L_0xbbcfe0,
    param_func_0xbbd090,
    param_nresults_0xbbd140,
    param_allowyield_0xbbd1f0,
  };
  gcc_jit_function *func_luaD_call_0xbbd2a0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaD_call", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaD_call_0xbbd2a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbd3a0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_execute_0xbbd450[1] = {
    param_L_0xbbd3a0,
  };
  gcc_jit_function *func_luaV_execute_0xbbd450 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaV_execute", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_luaV_execute_0xbbd450, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbd5a0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_level_0xbbd650 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "level"); /* const char *name */
  gcc_jit_param *params_for_func_luaF_close_0xbbd700[2] = {
    param_L_0xbbd5a0,
    param_level_0xbbd650,
  };
  gcc_jit_function *func_luaF_close_0xbbd700 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaF_close", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaF_close_0xbbd700, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbd7d0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t1_0xbbd880 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "t1"); /* const char *name */
  gcc_jit_param *param_t2_0xbbd930 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "t2"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_equalobj_0xbbd9e0[3] = {
    param_L_0xbbd7d0,
    param_t1_0xbbd880,
    param_t2_0xbbd930,
  };
  gcc_jit_function *func_luaV_equalobj_0xbbd9e0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaV_equalobj", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_equalobj_0xbbd9e0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbdae0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0xbbdb90 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0xbbdc40 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessthan_0xbbdcf0[3] = {
    param_L_0xbbdae0,
    param_l_0xbbdb90,
    param_r_0xbbdc40,
  };
  gcc_jit_function *func_luaV_lessthan_0xbbdcf0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaV_lessthan", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessthan_0xbbdcf0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbddf0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0xbbdea0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0xbbdf50 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessequal_0xbbe000[3] = {
    param_L_0xbbddf0,
    param_l_0xbbdea0,
    param_r_0xbbdf50,
  };
  gcc_jit_function *func_luaV_lessequal_0xbbe000 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaV_lessequal", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessequal_0xbbe000, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbd4f0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_fmt_0xbbe1f0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0xbb1850, /*gcc_jit_type *type */
                               "fmt"); /* const char *name */
  gcc_jit_param *params_for_func_luaG_runerror_0xbbe2a0[2] = {
    param_L_0xbbd4f0,
    param_fmt_0xbbe1f0,
  };
  gcc_jit_function *func_luaG_runerror_0xbbe2a0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaG_runerror", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaG_runerror_0xbbe2a0, /* gcc_jit_param **params */
                                  1); /* int is_variadic */
  gcc_jit_param *param_obj_0xbbe3a0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0xbbe450 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0xbb1750, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *param_step_0xbbe500 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /*gcc_jit_type *type */
                               "step"); /* const char *name */
  gcc_jit_param *param_stopnow_0xbbe5b0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0xbb1920, /*gcc_jit_type *type */
                               "stopnow"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_forlimit_0xbbe660[4] = {
    param_obj_0xbbe3a0,
    param_p_0xbbe450,
    param_step_0xbbe500,
    param_stopnow_0xbbe5b0,
  };
  gcc_jit_function *func_luaV_forlimit_0xbbe660 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaV_forlimit", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_forlimit_0xbbe660, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0xbbe760 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_n_0xbbe810 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double___0xbb1640, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tonumber__0xbbe8c0[2] = {
    param_obj_0xbbe760,
    param_n_0xbbe810,
  };
  gcc_jit_function *func_luaV_tonumber__0xbbe8c0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaV_tonumber_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tonumber__0xbbe8c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0xbbe9c0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0xbbea70 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0xbb1750, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tointeger__0xbbeb20[2] = {
    param_obj_0xbbe9c0,
    param_p_0xbbea70,
  };
  gcc_jit_function *func_luaV_tointeger__0xbbeb20 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "luaV_tointeger_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tointeger__0xbbeb20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbec20 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ra_0xbbecd0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_rb_0xbbed80 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "rb"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_objlen_0xbbee30[3] = {
    param_L_0xbbec20,
    param_ra_0xbbecd0,
    param_rb_0xbbed80,
  };
  gcc_jit_function *func_luaV_objlen_0xbbee30 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaV_objlen", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_objlen_0xbbee30, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbef30 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0xbbefe0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0xbbf090 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0xbbf140 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_gettable_0xbbf1f0[4] = {
    param_L_0xbbef30,
    param_t_0xbbefe0,
    param_key_0xbbf090,
    param_val_0xbbf140,
  };
  gcc_jit_function *func_luaV_gettable_0xbbf1f0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaV_gettable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_gettable_0xbbf1f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbf2f0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0xbbf3a0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0xbbf450 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0xbbf500 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_settable_0xbbf5b0[4] = {
    param_L_0xbbf2f0,
    param_t_0xbbf3a0,
    param_key_0xbbf450,
    param_val_0xbbf500,
  };
  gcc_jit_function *func_luaV_settable_0xbbf5b0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaV_settable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_settable_0xbbf5b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbf6b0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_p1_0xbbf760 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "p1"); /* const char *name */
  gcc_jit_param *param_p2_0xbbf810 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xbb2eb0, /*gcc_jit_type *type */
                               "p2"); /* const char *name */
  gcc_jit_param *param_res_0xbbf8c0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "res"); /* const char *name */
  gcc_jit_param *param_event_0xbbf970 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "event"); /* const char *name */
  gcc_jit_param *params_for_func_luaT_trybinTM_0xbbfa20[5] = {
    param_L_0xbbf6b0,
    param_p1_0xbbf760,
    param_p2_0xbbf810,
    param_res_0xbbf8c0,
    param_event_0xbbf970,
  };
  gcc_jit_function *func_luaT_trybinTM_0xbbfa20 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "luaT_trybinTM", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_luaT_trybinTM_0xbbfa20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_ci_0xbbfbb0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0xbbfc40 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0xbbfcf0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_loadnil_0xbbfda0[3] = {
    param_ci_0xbbfbb0,
    param_a_0xbbfc40,
    param_b_0xbbfcf0,
  };
  gcc_jit_function *func_raviV_op_loadnil_0xbbfda0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_loadnil", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_loadnil_0xbbfda0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbfea0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbbff50 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xbc0000 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayint_0xbc00b0[3] = {
    param_L_0xbbfea0,
    param_ci_0xbbff50,
    param_ra_0xbc0000,
  };
  gcc_jit_function *func_raviV_op_newarrayint_0xbc00b0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayint", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayint_0xbc00b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbc01b0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbc0260 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xbc0310 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayfloat_0xbc03c0[3] = {
    param_L_0xbc01b0,
    param_ci_0xbc0260,
    param_ra_0xbc0310,
  };
  gcc_jit_function *func_raviV_op_newarrayfloat_0xbc03c0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayfloat", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayfloat_0xbc03c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbb050 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbbb100 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xbbb1b0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0xbbb260 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0xbbb310 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newtable_0xbbb3c0[5] = {
    param_L_0xbbb050,
    param_ci_0xbbb100,
    param_ra_0xbbb1b0,
    param_b_0xbbb260,
    param_c_0xbbb310,
  };
  gcc_jit_function *func_raviV_op_newtable_0xbbb3c0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_newtable", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_newtable_0xbbb3c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbb4e0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbbb590 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xbbb640 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0xbbb6f0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0xbbb7a0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setlist_0xbbb850[5] = {
    param_L_0xbbb4e0,
    param_ci_0xbbb590,
    param_ra_0xbbb640,
    param_b_0xbbb6f0,
    param_c_0xbbb7a0,
  };
  gcc_jit_function *func_raviV_op_setlist_0xbbb850 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_setlist", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_setlist_0xbbb850, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbb970 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0xbbba20 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0xbbbad0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_div_0xbbbb80[3] = {
    param_L_0xbbb970,
    param_m_0xbbba20,
    param_n_0xbbbad0,
  };
  gcc_jit_function *func_luaV_div_0xbbbb80 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0xbb16c0, /* gcc_jit_type *return_type */
                                  "luaV_div", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_div_0xbbbb80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbbc80 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0xbbbd30 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0xbbbde0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_mod_0xbbbe90[3] = {
    param_L_0xbbbc80,
    param_m_0xbbbd30,
    param_n_0xbbbde0,
  };
  gcc_jit_function *func_luaV_mod_0xbbbe90 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0xbb16c0, /* gcc_jit_type *return_type */
                                  "luaV_mod", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_mod_0xbbbe90, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbbf90 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbbc040 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0xbbc0f0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0xbbc1a0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0xbbc250 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_concat_0xbc2100[5] = {
    param_L_0xbbbf90,
    param_ci_0xbbc040,
    param_a_0xbbc0f0,
    param_b_0xbbc1a0,
    param_c_0xbbc250,
  };
  gcc_jit_function *func_raviV_op_concat_0xbc2100 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_concat", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_concat_0xbc2100, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbbfb40 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbc2330 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0xbc23e0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xbb4920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0xbc2490 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_Bx_0xbc2540 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "Bx"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_closure_0xbc25f0[5] = {
    param_L_0xbbfb40,
    param_ci_0xbc2330,
    param_cl_0xbc23e0,
    param_a_0xbc2490,
    param_Bx_0xbc2540,
  };
  gcc_jit_function *func_raviV_op_closure_0xbc25f0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_closure", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_closure_0xbc25f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbc2710 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xbc27c0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xbb9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0xbc2870 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xbb4920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0xbc2920 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0xbc29d0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_vararg_0xbc2a80[5] = {
    param_L_0xbc2710,
    param_ci_0xbc27c0,
    param_cl_0xbc2870,
    param_a_0xbc2920,
    param_b_0xbc29d0,
  };
  gcc_jit_function *func_raviV_op_vararg_0xbc2a80 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_vararg", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_vararg_0xbc2a80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbc2ba0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0xbc2c50 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xbb3770, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0xbc2d00 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xbb19e0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0xbc2db0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xbb16c0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_int_0xbc2e60[4] = {
    param_L_0xbc2ba0,
    param_table_0xbc2c50,
    param_key_0xbc2d00,
    param_value_0xbc2db0,
  };
  gcc_jit_function *func_raviH_set_int_0xbc2e60 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviH_set_int", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_int_0xbc2e60, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbc2f60 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0xbc3010 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xbb3770, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0xbc30c0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xbb19e0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0xbc3170 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0xbb1600, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_float_0xbc3220[4] = {
    param_L_0xbc2f60,
    param_table_0xbc3010,
    param_key_0xbc30c0,
    param_value_0xbc3170,
  };
  gcc_jit_function *func_raviH_set_float_0xbc3220 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviH_set_float", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_float_0xbc3220, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xbc3320 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_cl_0xbc33d0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xbb4920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_ra_0xbc3480 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xbb2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0xbc3530 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xbb18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setupval_0xbc35e0[4] = {
    param_L_0xbc3320,
    param_cl_0xbc33d0,
    param_ra_0xbc3480,
    param_b_0xbc3530,
  };
  gcc_jit_function *func_raviV_op_setupval_0xbc35e0 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xbb1890, /* gcc_jit_type *return_type */
                                  "raviV_op_setupval", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviV_op_setupval_0xbc35e0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_format_0xbc36e0 =
    gcc_jit_context_new_param (ctxt_0xbb0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0xbb1850, /*gcc_jit_type *type */
                               "format"); /* const char *name */
  gcc_jit_param *params_for_func_printf_0xbc3790[1] = {
    param_format_0xbc36e0,
  };
  gcc_jit_function *func_printf_0xbc3790 =
    gcc_jit_context_new_function (ctxt_0xbb0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "printf", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_printf_0xbc3790, /* gcc_jit_param **params */
                                  1); /* int is_variadic */


  /* Replay of API calls for ctxt_0xbfd820.  */
  gcc_jit_param *param_L_0xbc80e0 =
    gcc_jit_context_new_param (ctxt_0xbfd820,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xbb1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_ravif1_0xbf52c0[1] = {
    param_L_0xbc80e0,
  };
  gcc_jit_function *func_ravif1_0xbf52c0 =
    gcc_jit_context_new_function (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_EXPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xbb18e0, /* gcc_jit_type *return_type */
                                  "ravif1", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_ravif1_0xbf52c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_block *block_entry_0xbf3a50 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "entry");
  gcc_jit_lvalue *local_cl_0xbf3cd0 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_LClosure___0xbb4920, /* gcc_jit_type *type */
                                "cl"); /* const char *name */
  gcc_jit_block *block_jmp_5_1_0xbf3d50 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "jmp_5_1");
  gcc_jit_block *block_jmp_9_2_0xbf37d0 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "jmp_9_2");
  gcc_jit_block *block_jmp_12_3_0xbf35a0 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "jmp_12_3");
  gcc_jit_lvalue *lvalue_L__ci_0xbf3ad0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0xbc80e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_ci_0xbbac80); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func_0xbf3520=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0xbf3ad0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_func_0xbba070); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__0xbf34a0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func_0xbf3520), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__gc_0xbf3420 = 
    gcc_jit_lvalue_access_field (lvalue_L__ci__func__value__0xbf34a0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_gc_0xbb2590);
  gcc_jit_rvalue *rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0xbf33a0 =
    gcc_jit_context_new_cast (ctxt_0xbfd820,
                              NULL, /* gcc_jit_location *loc */
                              gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func__value__gc_0xbf3420), /* gcc_jit_rvalue *rvalue */
                              type_struct_ravi_LClosure___0xbb4920); /* gcc_jit_type *type */
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_cl_0xbf3cd0, /* gcc_jit_lvalue *lvalue */
                                rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0xbf33a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_L__ci__u_0xbf3160=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0xbf3ad0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_u_0xbba330); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue_L__ci__u_l_0xbf30e0 = 
    gcc_jit_rvalue_access_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__u_0xbf3160), /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_l_0xbb9de0);
  gcc_jit_rvalue *rvalue_L__ci__u_l_base_0xbf3060 = 
    gcc_jit_rvalue_access_field (rvalue_L__ci__u_l_0xbf30e0, /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_base_0xbb97d0);
  gcc_jit_lvalue *lvalue_cl__p_0xbf3320=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (local_cl_0xbf3cd0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_p_0xbb6f80); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_cl__p__k_0xbf2ef0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0xbf3320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_k_0xbb43c0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xbf2e70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_0_0xbf2df0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0xbf2d70[3] = {
    gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0xbf3ad0),
    rvalue__int_0_0xbf2df0,
    rvalue__int_0_0xbf2e70,
  };
  gcc_jit_rvalue *call_raviV_op_loadnil__L__ci___int_0___int_0__0xbf2d70 =
    gcc_jit_context_new_call (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_raviV_op_loadnil_0xbbfda0, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0xbf2d70); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_entry_0xbf3a50, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_raviV_op_loadnil__L__ci___int_0___int_0__0xbf2d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbf47c0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbf4740 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbf47c0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbf46c0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbf4740, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xbf4480 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0xbf4400 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0xbf2ef0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xbf4480); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0xbf4380 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0xbf4400, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbef870=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbf46c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__i_0xbef7f0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbef870, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xbb2850);
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__0xbef770=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xbf4380, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__i_0xbef630 = 
    gcc_jit_lvalue_access_field (lvalue___cl__p__k__int_0____value__0xbef770, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xbb2850);
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__i_0xbef7f0, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____value__i_0xbef630)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbef530=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbf46c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____tt__0xbef9c0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xbf4380, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0xbef530, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____tt__0xbef9c0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbef410 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbef390 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbef410); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbef310 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbef390, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_4_0xbef170 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "isfalse_0_4"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbef0f0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbef310, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xbef290 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_5_0xbeef50 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_5"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0xbf2bd0 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0xbef0f0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbef290); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_5_0xbeef50, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0xbf2bd0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbf29b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_6_0xbf2ad0 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_6"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0xbf2a50 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0xbef0f0), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0xbf29b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_6_0xbf2ad0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0xbf2a50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbf26d0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbef310, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0xbf28b0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbf26d0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xbb26f0);
  gcc_jit_rvalue *rvalue__int_0_0xbf25b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_7_0xbf2380 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_7"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0xbf2300 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0xbf28b0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbf25b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_7_0xbf2380, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0xbf2300); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_6____comparison_0_7_0xbf20b0 =
    gcc_jit_context_new_binary_op (ctxt_0xbfd820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_6_0xbf2ad0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_7_0xbf2380)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0xbf1fa0 =
    gcc_jit_context_new_binary_op (ctxt_0xbfd820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_5_0xbeef50), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_6____comparison_0_7_0xbf20b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_4_0xbef170, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0xbf1fa0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_4__0xbf1e00 =
    gcc_jit_context_new_unary_op (ctxt_0xbfd820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_4_0xbef170)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_2_8_0xbf1c70 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_TEST_do_jmp_2_8");
  gcc_jit_block *block_OP_TEST_do_skip_2_9_0xbfe000 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_TEST_do_skip_2_9");
  gcc_jit_block_end_with_conditional (block_entry_0xbf3a50, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_4__0xbf1e00, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_2_8_0xbf1c70, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_2_9_0xbfe000); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_2_8_0xbf1c70, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0xbf3d50); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_2_9_0xbfe000, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0xbf3d50); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0xbf2020 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbf2cf0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbf2020); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbf2520 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbf2cf0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xbf1d70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbfe260=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbf2520, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0xbf66a0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbfe260, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xbb26f0);
  gcc_jit_block_add_assignment (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__b_0xbf66a0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0xbf1d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbf6030 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbf59c0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbf2520, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0xbf59c0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xbf6030); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbf4e20 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbf7d90 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbf4e20); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbf7c40 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbf7d90, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_10_0xbf74d0 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "isfalse_0_10"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbf4560=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbf7c40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xbef1f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_11_0xbef050 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_11"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0xbf2c50 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0xbf4560), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbef1f0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_11_0xbef050, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0xbf2c50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbf2400 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_12_0xbf1f00 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_12"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0xbf1bd0 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0xbf4560), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0xbf2400); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_12_0xbf1f00, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0xbf1bd0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbc58e0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbf7c40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0xbf8700 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbc58e0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xbb26f0);
  gcc_jit_rvalue *rvalue__int_0_0xbf3950 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_13_0xbf39a0 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_13"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0xbf2270 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0xbf8700), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbf3950); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_13_0xbf39a0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0xbf2270); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_12____comparison_0_13_0xbdca00 =
    gcc_jit_context_new_binary_op (ctxt_0xbfd820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_12_0xbf1f00), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_13_0xbf39a0)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0xc11a60 =
    gcc_jit_context_new_binary_op (ctxt_0xbfd820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_11_0xbef050), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_12____comparison_0_13_0xbdca00); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_10_0xbf74d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0xc11a60); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_10__0xbdd950 =
    gcc_jit_context_new_unary_op (ctxt_0xbfd820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_10_0xbf74d0)); /* gcc_jit_rvalue *a */
  gcc_jit_rvalue *rvalue_____isfalse_0_10___0xbdd9b0 =
    gcc_jit_context_new_unary_op (ctxt_0xbfd820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                  rvalue___isfalse_0_10__0xbdd950); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_5_14_0xbff1e0 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_TEST_do_jmp_5_14");
  gcc_jit_block *block_OP_TEST_do_skip_5_15_0xbff270 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_TEST_do_skip_5_15");
  gcc_jit_block_end_with_conditional (block_jmp_5_1_0xbf3d50, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue_____isfalse_0_10___0xbdd9b0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_5_14_0xbff1e0, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_5_15_0xbff270); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_5_14_0xbff1e0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0xbf37d0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_0_0xbfcea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0xbfcef0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xbfcea0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0xbfcf50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0xbfcef0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_1_0xbfa4e0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____value__0xbfa530=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_0__0xbfcf50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____value__b_0xbfa590 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_0____value__0xbfa530, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xbb26f0);
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0xbff270, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_0____value__b_0xbfa590, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xbfa4e0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbfa640 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____tt__0xbc7d40=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_0__0xbfcf50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0xbff270, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_0____tt__0xbc7d40, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xbfa640); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_5_15_0xbff270, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0xbf37d0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0xbc7de0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbc7e30 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbc7de0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbc7e90 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbc7e30, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xbc7ee0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0xbc8160 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0xbf2ef0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xbc7ee0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0xbc7f30 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0xbc8160, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbc81c0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbc7e90, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__i_0xbc8220 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbc81c0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xbb2850);
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__0xbc8280=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xbc7f30, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__i_0xbc82e0 = 
    gcc_jit_lvalue_access_field (lvalue___cl__p__k__int_0____value__0xbc8280, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xbb2850);
  gcc_jit_block_add_assignment (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__i_0xbc8220, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____value__i_0xbc82e0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbc8390=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbc7e90, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____tt__0xbc83f0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xbc7f30, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0xbc8390, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____tt__0xbc83f0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbc8ea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbc8ef0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbc8ea0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbc8f50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbc8ef0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_16_0xbc8fe0 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "isfalse_0_16"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbc9040=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbc8f50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xbc90a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_17_0xbc9130 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_17"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0xbc9190 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0xbc9040), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbc90a0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_17_0xbc9130, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0xbc9190); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbc9240 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_18_0xbc92d0 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_18"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0xbc9330 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0xbc9040), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0xbc9240); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_18_0xbc92d0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0xbc9330); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbc93e0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbc8f50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0xbc9440 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbc93e0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xbb26f0);
  gcc_jit_rvalue *rvalue__int_0_0xbc94a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_19_0xbc9530 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_19"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0xbc9590 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0xbc9440), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbc94a0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_19_0xbc9530, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0xbc9590); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_18____comparison_0_19_0xbc9690 =
    gcc_jit_context_new_binary_op (ctxt_0xbfd820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_18_0xbc92d0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_19_0xbc9530)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0xbc96f0 =
    gcc_jit_context_new_binary_op (ctxt_0xbfd820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_17_0xbc9130), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_18____comparison_0_19_0xbc9690); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_16_0xbc8fe0, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0xbc96f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_16__0xbc97a0 =
    gcc_jit_context_new_unary_op (ctxt_0xbfd820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xbb1590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_16_0xbc8fe0)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_9_20_0xbc9840 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_TEST_do_jmp_9_20");
  gcc_jit_block *block_OP_TEST_do_skip_9_21_0xbc9960 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_TEST_do_skip_9_21");
  gcc_jit_block_end_with_conditional (block_jmp_9_2_0xbf37d0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_16__0xbc97a0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_9_20_0xbc9840, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_9_21_0xbc9960); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_9_20_0xbc9840, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0xbf35a0); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_9_21_0xbc9960, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0xbf35a0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0xbc9a80 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbf1af0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbc9a80); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbc9ad0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbf1af0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xbc9b20 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0xbc8890=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbc9ad0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xbb2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0xbc88f0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0xbc8890, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xbb26f0);
  gcc_jit_block_add_assignment (block_jmp_12_3_0xbf35a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__b_0xbc88f0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0xbc9b20); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbc89a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0xbc89f0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0xbc9ad0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xbb2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xbf35a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0xbc89f0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xbc89a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbc8aa0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0xbc8af0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xbc8aa0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0xbc8b50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0xbc8af0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_2_0xbc8ba0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         2); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_2__0xbc8bf0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_2_0xbc8ba0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_2__0xbc8c50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_2__0xbc8bf0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0xbc8ca0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0xbc80e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0xbbab20); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xbf35a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0xbc8ca0, /* gcc_jit_lvalue *lvalue */
                                address_of__L__ci__u_l_base__int_2__0xbc8c50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0xbc8d50=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0xbf3320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0xbb5700); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xbc8db0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_22_0xbe6620 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_22"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0xbe6680 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0xbc8d50), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbc8db0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xbf35a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_22_0xbe6620, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0xbe6680); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_12_23_0xbe6770 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_RETURN_if_sizep_gt_0_12_23");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_12_24_0xbe6800 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_RETURN_else_sizep_gt_0_12_24");
  gcc_jit_block_end_with_conditional (block_jmp_12_3_0xbf35a0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_22_0xbe6620), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_12_23_0xbe6770, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_12_24_0xbe6800); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__L__ci__u_l_base__0xbe68f0[2] = {
    gcc_jit_param_as_rvalue (param_L_0xbc80e0),
    rvalue_L__ci__u_l_base_0xbf3060,
  };
  gcc_jit_rvalue *call_luaF_close__L__L__ci__u_l_base__0xbe68f0 =
    gcc_jit_context_new_call (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0xbbd700, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__L__ci__u_l_base__0xbe68f0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_12_23_0xbe6770, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__L__ci__u_l_base__0xbe68f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_12_23_0xbe6770, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_12_24_0xbe6800); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L____L__ci__u_l_base__int_1____0xbe69d0[2] = {
    gcc_jit_param_as_rvalue (param_L_0xbc80e0),
    address_of__L__ci__u_l_base__int_1__0xbc8b50,
  };
  gcc_jit_rvalue *call_luaD_poscall__L____L__ci__u_l_base__int_1____0xbe69d0 =
    gcc_jit_context_new_call (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0xbbc940, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L____L__ci__u_l_base__int_1____0xbe69d0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_12_24_0xbe6800, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L____L__ci__u_l_base__int_1____0xbe69d0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbe6a70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_12_24_0xbe6800, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0xbe6a70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_LINK_BLOCK_13_25_0xbe6b40 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "LINK_BLOCK_13_25");
  gcc_jit_rvalue *rvalue__int_0_0xbe6b90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0xbe6be0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xbe6b90); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0xbe6c40 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0xbe6be0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xbe6c90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0xbe6ce0 = 
    gcc_jit_context_new_array_access (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0xbf3060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xbe6c90); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0xbe6d40 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0xbe6ce0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0xbe6d90=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0xbc80e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0xbbab20); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_LINK_BLOCK_13_25_0xbe6b40, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0xbe6d90, /* gcc_jit_lvalue *lvalue */
                                address_of__L__ci__u_l_base__int_0__0xbe6d40); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0xbe6e40=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0xbf3320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0xbb5700); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xbe6ea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_26_0xbe6f30 =
    gcc_jit_function_new_local (func_ravif1_0xbf52c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xbb1590, /* gcc_jit_type *type */
                                "comparison_0_26"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0xbe6f90 =
    gcc_jit_context_new_comparison (ctxt_0xbfd820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0xbe6e40), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xbe6ea0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_LINK_BLOCK_13_25_0xbe6b40, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_26_0xbe6f30, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0xbe6f90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_13_27_0xbe7080 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_RETURN_if_sizep_gt_0_13_27");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_13_28_0xbe7110 =
    gcc_jit_function_new_block (func_ravif1_0xbf52c0, "OP_RETURN_else_sizep_gt_0_13_28");
  gcc_jit_block_end_with_conditional (block_LINK_BLOCK_13_25_0xbe6b40, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_26_0xbe6f30), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_13_27_0xbe7080, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_13_28_0xbe7110); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__L__ci__u_l_base__0xbe71b0[2] = {
    gcc_jit_param_as_rvalue (param_L_0xbc80e0),
    rvalue_L__ci__u_l_base_0xbf3060,
  };
  gcc_jit_rvalue *call_luaF_close__L__L__ci__u_l_base__0xbe71b0 =
    gcc_jit_context_new_call (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0xbbd700, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__L__ci__u_l_base__0xbe71b0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_13_27_0xbe7080, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__L__ci__u_l_base__0xbe71b0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_13_27_0xbe7080, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_13_28_0xbe7110); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L____L__ci__u_l_base__int_0____0xbe7290[2] = {
    gcc_jit_param_as_rvalue (param_L_0xbc80e0),
    address_of__L__ci__u_l_base__int_0__0xbe6c40,
  };
  gcc_jit_rvalue *call_luaD_poscall__L____L__ci__u_l_base__int_0____0xbe7290 =
    gcc_jit_context_new_call (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0xbbc940, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L____L__ci__u_l_base__int_0____0xbe7290); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_13_28_0xbe7110, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L____L__ci__u_l_base__int_0____0xbe7290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xbe7330 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xbfd820, /* gcc_jit_context *ctxt */
                                         type_int_0xbb18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_13_28_0xbe7110, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0xbe7330); /* gcc_jit_rvalue *rvalue */
}

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00       ` A possible " David Malcolm
@ 2015-01-01  0:00         ` Dibyendu Majumdar
  2015-01-01  0:00           ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 4 July 2015 at 22:41, David Malcolm <dmalcolm@redhat.com> wrote:
>> Adding the -fno-strict-aliasing appears to resolve the issue with -O2
>> and -O3 but with this enabled the benchmarks are degraded.
>
> If "-fno-strict-aliasing" resolved this, then that suggests that there
> are various casts in the code that if this were C would take us into
> "undefined behavior" territory, and the optimizer is trying a little too
> hard.   This isn't C, but similar rules apply.  If that's what this is,
> then this is at least a documentation issue with libgccjit; we need to
> document what the rules are.
>
> If this is the case it's normally possible to work around it in C by
> rewriting casts using unions.

I guess if you can help me work out which bit of code is causing a
problem then I can implement a fix.

>
> Of course, it could well be a bug at my end.
>
> In any case, I'm not going to be able to have a proper look at this
> until Monday (it's the July 4th holiday weekend here in the US); sorry.
>

No problem - Monday is fine. I have nearly implemented all the Lua
bytecodes that I have working in LLVM only a few left to do.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                     ` Dibyendu Majumdar
@ 2015-01-01  0:00                       ` Dibyendu Majumdar
  2015-01-01  0:00                         ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 21:46, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> On 8 July 2015 at 21:32, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
>> On 8 July 2015 at 21:22, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
>>> Here is what I think the flow is.
>>>
>>> part 1
>>> --------
>>>
>>> 1 [2] LOADNIL   0 0
>>>
>>> entry:
>>>   cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
>>>   (void)raviV_op_loadnil (L->ci, (int)0, (int)0);
>>>
>>>
>>> This sets register 0 (local variable IX) to NIL
>>>
>>> 2 [3] LOADK     1 -1 ; 10
>>>
>>>   (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
>>>   (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
>>>
>>> This sets the register at 1 (temporary) to 10.
>>>
>>> 3 [3] TEST     1 1
>>> 4 [3] JMP       0 0 ; to 5
>>>
>>> The above two bytecodes go together. This says that if register 1 is
>>> true then skip the JMP else JMP.
>>> So we get:
>>>
>>>   comparison_0_5 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>>>   comparison_0_6 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>>>   comparison_0_7 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>>>   isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
>>>   if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;
>>>
>>> The test is checking that register 1 is true (which it is as it has
>>> the constant 10) - then goto skip_2_9.
>>
>> Since we skipped the jump the next instruction is
>>
>> 5 [3] LOADBOOL 1 0 0
>>
>> This is setting register 1 to false so we get:
>>
>> OP_TEST_do_skip_2_9:
>>   goto jmp_5_1;
>>
>> jmp_5_1:
>>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
>>
>> Next instruction is:
>>
>> 6 [3] TEST     1 0
>> 7 [3] JMP       0 1 ; to 9
>>
>> Now this is saying that if register is _false_ then skip JMP else JMP.
>> Since we know that register 1 is false as above then the code should
>> skip the jump.
>>
>>   comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>>   comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>>   comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>>   isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
>>   if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto
>> OP_TEST_do_skip_5_15;
>>
>> So we go to skip_5_15:
>>
>> 8 [3] LOADBOOL 0 1 0
>>
>> OP_TEST_do_skip_5_15:
>>   (&L->ci->u.l.base[(int)0])->value_.b = (int)1;
>>   (&L->ci->u.l.base[(int)0])->tt_ = (int)1;
>>   goto jmp_9_2;
>>
>> So you see that the local IX is set to false above which is what we
>> want. Next we jump to 9_2 which is the start of the return statement.
>
> part 3
> -------
>
> Here we essentially have a repeat of what was in entry block:
>
> 9 [3] LOADK     1 -1 ; 10
> 10 [3] TEST     1 1
> 11 [3] JMP       0 0 ; to 12
>
> jmp_9_2:
>   (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
>   (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
>   comparison_0_17 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>   comparison_0_18 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>   comparison_0_19 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>   isfalse_0_16 = comparison_0_17 || comparison_0_18 && comparison_0_19;
>   if (!(isfalse_0_16)) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;
>
> So the JMP is not taken as register 1 is _true_ and we go to 9_21:
>
> 12 [3] LOADBOOL 1 0 0
>
> OP_TEST_do_skip_9_21:
>   goto jmp_12_3;
>
> jmp_12_3:
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
>
> Above sets the register 1 to false and this is the return value.
>
> Next the return instruction begins:
>
>   L->top = &L->ci->u.l.base[(int)2];
>   comparison_0_22 = cl->p->sizep > (int)0;
>   if (comparison_0_22) goto OP_RETURN_if_sizep_gt_0_12_23; else goto
> OP_RETURN_else_sizep_gt_0_12_24;
>
>
> So as far as I can see the generated code is correct and matches the
> Lua bytecode.
>


Having said that ... I have doubts now. Let me check this again.

Regards

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                   ` Dibyendu Majumdar
@ 2015-01-01  0:00                     ` Dibyendu Majumdar
  2015-01-01  0:00                       ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 21:32, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> On 8 July 2015 at 21:22, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
>> Here is what I think the flow is.
>>
>> part 1
>> --------
>>
>> 1 [2] LOADNIL   0 0
>>
>> entry:
>>   cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
>>   (void)raviV_op_loadnil (L->ci, (int)0, (int)0);
>>
>>
>> This sets register 0 (local variable IX) to NIL
>>
>> 2 [3] LOADK     1 -1 ; 10
>>
>>   (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
>>   (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
>>
>> This sets the register at 1 (temporary) to 10.
>>
>> 3 [3] TEST     1 1
>> 4 [3] JMP       0 0 ; to 5
>>
>> The above two bytecodes go together. This says that if register 1 is
>> true then skip the JMP else JMP.
>> So we get:
>>
>>   comparison_0_5 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>>   comparison_0_6 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>>   comparison_0_7 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>>   isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
>>   if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;
>>
>> The test is checking that register 1 is true (which it is as it has
>> the constant 10) - then goto skip_2_9.
>
> Since we skipped the jump the next instruction is
>
> 5 [3] LOADBOOL 1 0 0
>
> This is setting register 1 to false so we get:
>
> OP_TEST_do_skip_2_9:
>   goto jmp_5_1;
>
> jmp_5_1:
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
>
> Next instruction is:
>
> 6 [3] TEST     1 0
> 7 [3] JMP       0 1 ; to 9
>
> Now this is saying that if register is _false_ then skip JMP else JMP.
> Since we know that register 1 is false as above then the code should
> skip the jump.
>
>   comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>   comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>   comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>   isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
>   if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto
> OP_TEST_do_skip_5_15;
>
> So we go to skip_5_15:
>
> 8 [3] LOADBOOL 0 1 0
>
> OP_TEST_do_skip_5_15:
>   (&L->ci->u.l.base[(int)0])->value_.b = (int)1;
>   (&L->ci->u.l.base[(int)0])->tt_ = (int)1;
>   goto jmp_9_2;
>
> So you see that the local IX is set to false above which is what we
> want. Next we jump to 9_2 which is the start of the return statement.

part 3
-------

Here we essentially have a repeat of what was in entry block:

9 [3] LOADK     1 -1 ; 10
10 [3] TEST     1 1
11 [3] JMP       0 0 ; to 12

jmp_9_2:
  (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
  (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
  comparison_0_17 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_18 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_19 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_16 = comparison_0_17 || comparison_0_18 && comparison_0_19;
  if (!(isfalse_0_16)) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;

So the JMP is not taken as register 1 is _true_ and we go to 9_21:

12 [3] LOADBOOL 1 0 0

OP_TEST_do_skip_9_21:
  goto jmp_12_3;

jmp_12_3:
  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;

Above sets the register 1 to false and this is the return value.

Next the return instruction begins:

  L->top = &L->ci->u.l.base[(int)2];
  comparison_0_22 = cl->p->sizep > (int)0;
  if (comparison_0_22) goto OP_RETURN_if_sizep_gt_0_12_23; else goto
OP_RETURN_else_sizep_gt_0_12_24;


So as far as I can see the generated code is correct and matches the
Lua bytecode.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                   ` [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1 David Malcolm
@ 2015-01-01  0:00                                     ` Dibyendu Majumdar
  2015-01-01  0:00                                       ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 9 July 2015 at 22:24, David Malcolm <dmalcolm@redhat.com> wrote:
> On Thu, 2015-07-09 at 17:15 -0400, David Malcolm wrote:
>> On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:
>>
>> (snip)
>>
>> > The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
>> > API thus giving libgccjit some rules about aliasing.  Some options:
>> >
>> > (i) make it identical to C.
>> > (ii) give the client code some control over this
>> >
>> > My initial gut feeling is to go with (i).
>>
>> ...or possibly to do what the link-time optimizer does, which is to use
>> this internal API:
>>
>> /* Return the typed-based alias set for T, which may be an expression
>>    or a type.  Return -1 if we don't do anything special.  */
>>
>> alias_set_type
>> gimple_get_alias_set (tree t)
>>
>> which does almost all of what the C frontend does.  I'll try to cook up
>> a patch.
>
> Attached is a patch [1] which fixes the minimal reproducer I created,
> and the reproducer you sent.
>
> Does it work for you?
>

I get this error when compiling:

In file included from ../../gcc-5.1.0/gcc/jit/dummy-frontend.c:54:0:
../../gcc-5.1.0/gcc/gimple.h: In function ‘void
gimple_call_set_fndecl(gimple, tree)’:
../../gcc-5.1.0/gcc/gimple.h:2769:77: error:
‘build_fold_addr_expr_loc’ was not declared in this scope
   gimple_set_op (gs, 1, build_fold_addr_expr_loc (gimple_location (gs), decl));
                                                                             ^
Am I missing something?

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00               ` Dibyendu Majumdar
@ 2015-01-01  0:00                 ` Dibyendu Majumdar
  2015-01-01  0:00                   ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

Here is what I think the flow is.

part 1
--------

1 [2] LOADNIL   0 0

entry:
  cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
  (void)raviV_op_loadnil (L->ci, (int)0, (int)0);


This sets register 0 (local variable IX) to NIL

2 [3] LOADK     1 -1 ; 10

  (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
  (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;

This sets the register at 1 (temporary) to 10.

3 [3] TEST     1 1
4 [3] JMP       0 0 ; to 5

The above two bytecodes go together. This says that if register 1 is
true then skip the JMP else JMP.
So we get:

  comparison_0_5 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_6 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_7 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
  if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;

The test is checking that register 1 is true (which it is as it has
the constant 10) - then goto skip_2_9.

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                   ` Dibyendu Majumdar
@ 2015-01-01  0:00                     ` David Malcolm
  2015-01-01  0:00                       ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 20:36 +0100, Dibyendu Majumdar wrote:
> On 8 July 2015 at 20:03, David Malcolm <dmalcolm@redhat.com> wrote:
> > On Wed, 2015-07-08 at 20:01 +0100, Dibyendu Majumdar wrote:
> >> On 8 July 2015 at 18:46, David Malcolm <dmalcolm@redhat.com> wrote:
> >> > Dibyendu: what Lua code generated the reproducer?  What is the code
> >> > meant to be doing?
> >> >
> >>
> >> Hi Dave - the Lua test is this:
> >>
> >> function x()
> >>   local IX
> >>   if ((10 or true) and false) then
> >>     IX = true
> >>   end;
> >>   return ((10 or true) and false)
> >> end
> >> assert(x() == false)
> >>
> >> In the original test IX is an upvalue - i.e. a variable in outer
> >> scope. This is my standalone version of the test. The original test is
> >> generated as part of the Lua test suite - its purpose is to test
> >> various permutations of boolean operators.
> >>
> >> The original test compares IX and the function return.
> >>
> >> The issue is that this test should return false - if you see the
> >> return statement. However when -O2 or -O3 is enabled it returns true.
> >>
> >> The if statement is indeed redundant in this cut down version as IX is
> >> a local variable. But the return statement is not redundant.
> >
> > Thanks.  What does this look like as bytecodes?
> >
> 
> Ok the bug is still there - I was running the test incorrectly. I have
> attached the standalone replication and the output.
> Note that if I remove the redundant if statement then it works correctly.

Thanks.


BTW, are Lua/Ravi constants truly constant?  If so, then I'd believe
you'd get a performance win by implementing LOADK by emitting code to
write the specific tt and value_ directly, rather than code that copies
a value from the table.

This would enable the optimizer to "know" the tt and value_, and
optimize accordingly.  For example, in this case, I believe it would
allow the function to be optimized away down to the equivalent of just a
"return false;".  Obviously won't help much for a function without a
loop, but if it saves instructions inside a loop, that's probably a win.

(...though maybe not before we track down this issue)

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00     ` Dibyendu Majumdar
@ 2015-01-01  0:00       ` David Malcolm
  2015-01-01  0:00         ` David Malcolm
  2015-01-01  0:00       ` A possible " David Malcolm
  1 sibling, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Sat, 2015-07-04 at 16:58 +0100, Dibyendu Majumdar wrote:
> On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> >> Looks like in the failure case the code is being incorrectly
> >> optimized. I wonder if this is a manifestation of the get_address bug,
> >> perhaps the real fix will be better than the patch I am using. I will
> >> use the latest gcc 5 branch and see if that helps.
> >>
> >
> > Hi Dave,
> >
> > I am now using the latest gcc-5-branch from gcc github mirror.
> > Unfortunately the issue still persists.
> >
> > If set optimization level to 0 or 1, then it works ok, but at levels 2
> > or 3 the break occurs.
> >
> 
> Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> and -O3 but with this enabled the benchmarks are degraded.

I've filed the bad code generation issue as:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812

and I'm investigating it.

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                         ` Dibyendu Majumdar
@ 2015-01-01  0:00                           ` David Malcolm
  2015-01-01  0:00                             ` David Malcolm
  2015-01-01  0:00                             ` Dibyendu Majumdar
  0 siblings, 2 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 22:54 +0100, Dibyendu Majumdar wrote:
> Apologies I think the previous description of the flow was incorrect.
> Here is my second attempt (this is doing my head in so I will stop
> now):

[snip detailed analysis of bytecode]

Thanks.

So it's basically:

  * do a bunch of stuff
  * then set R(1) to boolean false in that last LOADBOOL op
  * then return


> 12 [3] LOADBOOL 1 0 0
> 
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
> 
> Above sets the register 1 to false and this is the return value.

I've been poring over the dumps:
https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/
and I believe the problem is in pass "fre1"; it's eliminating this
statement for some reason:
  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;

so 
  R1.tt_ = 1 (correct)
but:
  R1.value_.i = K0.value_.i  (incorrect, is int 10, not 0)

The statement is still present at pass 034t.ealias:
https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/fake.c.034t.ealias
 
but is optimized away in pass 035t.fre1:
https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/fake.c.035t.fre1

I'll have a more detailed look tomorrow at why fre1 is getting it wrong.

[snip]

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00             ` David Malcolm
@ 2015-01-01  0:00               ` Dibyendu Majumdar
  2015-01-01  0:00                 ` Dibyendu Majumdar
  2015-01-01  0:00               ` Dibyendu Majumdar
  2015-01-01  0:00               ` David Malcolm
  2 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 18:46, David Malcolm <dmalcolm@redhat.com> wrote:
> I used gcc_jit_function_dump_to_dot to dump the CFG in GraphViz format;
> you can see the result here:
>  https://dmalcolm.fedorapeople.org/gcc/2015-07-08/rdump.png
> and with the printfs here:
>  https://dmalcolm.fedorapeople.org/gcc/2015-07-08/rdump_ok.png
>
> I see that both paths out of the "entry" block go through empty blocks
> and then into "jmp_5_1".
>
> A similar thing happens later with "jmp_9_2": both paths from the
> conditional lead through empty blocks to "jmp_12_3".
>
> Those pairs of empty blocks look odd.  Is the code correct?
>
> Looking at the body of "jmp_5_1", and annotating, I see:
>
> jmp_5_1:
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
>
>   comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
>      /* this must be true because of the 2nd assignment above */
>
>   comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
>      /* similarly this must be false */
>
>   comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
>      /* this must be true because of the 1st assignment above */
>
>   isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
>      /* hence we have:   true || false && true
>         and hence:       true  */
>
>   if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;
>       /* hence this always takes the 1st path;
>          the 2nd path is indeed dead code */
>
> So it does in fact seem reasonable for the optimizer to optimize away
> OP_TEST_do_skip_5_15, and I think that once it does that, it merges
> OP_TEST_do_jmp_5_14 and jmp_9_2 into jmp_5_1, and can then do similar
> optimizations to the statements that were in jmp_9_2.
>
> So it seems that things I reported pass "fre1" as doing are reasonable.
>
> It seems that the optimizer is only able to assume the above values when
> strict aliasing is enabled, but it seems to be a reasonable
> optimization.  (I suspect that for some reason the presence of the
> printfs also is stopping this optimization; perhaps JIT doesn't know as
> much as the C frontend about the lack of side-effects of printf?)
>
> Is the code being supplied correct?  It's not clear to me what it's
> meant to be doing, but that CFG looks curious to me.  Maybe the input is
> incorrect, but it only turns into a problem when optimized?

I did check the generated code before for correctness but will do so
again, just to be sure. If the generated code was incorrect though the
test would fail under -O1 as well I would have thought.


Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                         ` Dibyendu Majumdar
@ 2015-01-01  0:00                           ` David Malcolm
  2015-01-01  0:00                             ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Thu, 2015-07-09 at 01:12 +0100, Dibyendu Majumdar wrote:
> On 8 July 2015 at 21:06, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> >> BTW, are Lua/Ravi constants truly constant?  If so, then I'd believe
> >> you'd get a performance win by implementing LOADK by emitting code to
> >> write the specific tt and value_ directly, rather than code that copies
> >> a value from the table.
> >
> > Yes - I do specialize to constants in certain cases - such as loops
> > and numeric operations. But more can be done.
> >
> >>
> >> This would enable the optimizer to "know" the tt and value_, and
> >> optimize accordingly.  For example, in this case, I believe it would
> >> allow the function to be optimized away down to the equivalent of just a
> >> "return false;".  Obviously won't help much for a function without a
> >> loop, but if it saves instructions inside a loop, that's probably a win.
> >>
> >> (...though maybe not before we track down this issue)
> >>
> 
> I implemented setting the constant directly (just checked in).
> Performance wise no noticeable difference (as I think the scenarios
> where this helps were already covered)

Ah, ok.

> but it does seem to have caused
> the optimization bug to go away - i.e. the tests now pass. I will run
> more tests tomorrow to see if this is true under all optimization
> settings.

FWIW, I suspect that this is effectively just papering over the problem,
and that it will come back to bite us, just with a more complicated
reproducer :(

Does something like:



function x(some_arg)
  local IX
  if ((some_arg or true) and false) then
    IX = true
  end;
  return ((some_arg or true) and false)
end
assert(x() == false)



exhibit the bug?  (have never programmed Lua, so this probably even
isn't syntactically correct, but hopefully you get the idea, with
const-propagation of 10's value and typecode lots of code gets optimized
away, so using an arg of unknown type to thwart that and hopefully get
the bug to re-manifest itself).


(Note that I've managed to isolate a minimal reproducer for the problem,
as noted in another mail this thread)

^ permalink raw reply	[flat|nested] 47+ messages in thread

* A possible code generation issue
@ 2015-01-01  0:00 Dibyendu Majumdar
  2015-01-01  0:00 ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: jit

[-- Attachment #1: Type: text/plain, Size: 523 bytes --]

Hi Dave,

I am getting a failure in one of the Lua tests. Attached are two dumps:

1. bug_fdump.txt and bug_rdump.txt - these are the versions that fail.


2. The bug_fdump_ok.txt and bug_rdump_ok.txt - this runs ok. The only
difference between this version and the above is a debug printf call
in this; so the printf call somehow seems to alter the code being
generated.

I have also attached the corresponding asm files.


I am still using my patched version - not the latest from 5 branch.

Thanks and Regards

Dibyendu

[-- Attachment #2: bug_asm.txt --]
[-- Type: text/plain, Size: 31 bytes --]

OP_RETURN(pc=13) return 1 args

[-- Attachment #3: bug_asm_ok.txt --]
[-- Type: text/plain, Size: 2507 bytes --]

	.file	"fake.c"
	.section	.rodata
	.align 8
.LC2:
	.ascii	"OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to "
	.ascii	"%d\n"
	.zero	138
	.align 8
.LC3:
	.ascii	"OP_TEST(%d C=0) if (reg(A=%d)) then skip next else jmp to %d"
	.ascii	"\n"
	.zero	140
	.align 8
.LC4:
	.ascii	"OP_RETURN(pc=%d) return %d args\n"
	.zero	169
	.section	.text.unlikely,"ax",@progbits
.LCOLDB5:
	.text
.LHOTB5:
	.p2align 4,,15
	.globl	ravif2
	.type	ravif2, @function
ravif2:
.LFB1:
	.cfi_startproc
.L36:
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	xorl	%edx, %edx
	xorl	%esi, %esi
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	movq	%rdi, %rbx
	movq	32(%rdi), %rdi
	movq	(%rdi), %rax
	movq	(%rax), %r12
	call	raviV_op_loadnil@PLT
	movq	32(%rbx), %rax
	movl	$3, %esi
	leaq	.LC2(%rip), %rdi
	movq	24(%r12), %rdx
	movq	32(%rax), %rax
	movq	48(%rdx), %rdx
	movq	(%rdx), %rcx
	movl	8(%rdx), %edx
	movq	%rcx, 16(%rax)
	movl	$5, %ecx
	movl	%edx, 24(%rax)
	movl	$1, %edx
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movl	$1, %edx
	movl	$9, %ecx
	leaq	.LC3(%rip), %rdi
	movl	$6, %esi
	movq	32(%rax), %rax
	movl	$0, 16(%rax)
	movl	$1, 24(%rax)
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movq	32(%rax), %rax
	movl	24(%rax), %edx
	testl	%edx, %edx
	je	.L39
	movl	16(%rax), %ecx
	testl	%ecx, %ecx
	je	.L52
.L38:
	movl	$1, (%rax)
	movl	$1, 8(%rax)
.L37:
.L39:
	movq	24(%r12), %rdx
	movl	$10, %esi
	leaq	.LC2(%rip), %rdi
	movq	48(%rdx), %rdx
	movq	(%rdx), %rcx
	movl	8(%rdx), %edx
	movq	%rcx, 16(%rax)
	movl	$12, %ecx
	movl	%edx, 24(%rax)
	movl	$1, %edx
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movl	$1, %edx
	movl	$13, %esi
	leaq	.LC4(%rip), %rdi
	movq	32(%rax), %rax
	movl	$0, 16(%rax)
	movl	$1, 24(%rax)
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movq	32(%rax), %rbp
	leaq	32(%rbp), %rax
	movq	%rax, 16(%rbx)
	movq	24(%r12), %rax
	movl	32(%rax), %eax
	testl	%eax, %eax
	jle	.L41
.L40:
	movq	%rbp, %rsi
	movq	%rbx, %rdi
	call	luaF_close@PLT
.L41:
	leaq	16(%rbp), %rsi
	movq	%rbx, %rdi
	call	luaD_poscall@PLT
	popq	%rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	movl	$1, %eax
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L52:
	.cfi_restore_state
	cmpl	$1, %edx
	jne	.L38
	jmp	.L39
	.cfi_endproc
.LFE1:
	.size	ravif2, .-ravif2
	.section	.text.unlikely
.LCOLDE5:
	.text
.LHOTE5:
	.ident	"GCC: (GNU) 5.1.0"
	.section	.note.GNU-stack,"",@progbits

[-- Attachment #4: bug_fdump.txt --]
[-- Type: text/plain, Size: 3309 bytes --]

extern int
ravif2 (struct ravi_lua_State * L)
{
  struct ravi_TValue * base;
  struct ravi_LClosure * cl;
  bool isfalse_0_4;
  bool comparison_0_5;
  bool comparison_0_6;
  bool comparison_0_7;
  bool isfalse_0_10;
  bool comparison_0_11;
  bool comparison_0_12;
  bool comparison_0_13;
  bool isfalse_0_16;
  bool comparison_0_17;
  bool comparison_0_18;
  bool comparison_0_19;
  bool comparison_0_22;
  bool comparison_0_26;

entry:
  cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
  base = L->ci->u.l.base;
  (void)raviV_op_loadnil (L->ci, (int)0, (int)0);
  base = L->ci->u.l.base;
  &base[(int)1]->value_.i = &cl->p->k[(int)0]->value_.i;
  &base[(int)1]->tt_ = &cl->p->k[(int)0]->tt_;
  base = L->ci->u.l.base;
  comparison_0_5 = &base[(int)1]->tt_ == (int)0;
  comparison_0_6 = &base[(int)1]->tt_ == (int)1;
  comparison_0_7 = &base[(int)1]->value_.b == (int)0;
  isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
  if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;

jmp_5_1:
  base = L->ci->u.l.base;
  &base[(int)1]->value_.b = (int)0;
  &base[(int)1]->tt_ = (int)1;
  base = L->ci->u.l.base;
  comparison_0_11 = &base[(int)1]->tt_ == (int)0;
  comparison_0_12 = &base[(int)1]->tt_ == (int)1;
  comparison_0_13 = &base[(int)1]->value_.b == (int)0;
  isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
  if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;

jmp_9_2:
  base = L->ci->u.l.base;
  &base[(int)1]->value_.i = &cl->p->k[(int)0]->value_.i;
  &base[(int)1]->tt_ = &cl->p->k[(int)0]->tt_;
  base = L->ci->u.l.base;
  comparison_0_17 = &base[(int)1]->tt_ == (int)0;
  comparison_0_18 = &base[(int)1]->tt_ == (int)1;
  comparison_0_19 = &base[(int)1]->value_.b == (int)0;
  isfalse_0_16 = comparison_0_17 || comparison_0_18 && comparison_0_19;
  if (!(isfalse_0_16)) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;

jmp_12_3:
  base = L->ci->u.l.base;
  &base[(int)1]->value_.b = (int)0;
  &base[(int)1]->tt_ = (int)1;
  (void)printf ("OP_RETURN(pc=%d) return %d args\
", (int)13, (int)1);
  base = L->ci->u.l.base;
  L->top = &base[(int)2];
  comparison_0_22 = cl->p->sizep > (int)0;
  if (comparison_0_22) goto OP_RETURN_if_sizep_gt_0_12_23; else goto OP_RETURN_else_sizep_gt_0_12_24;

OP_TEST_do_jmp_2_8:
  goto jmp_5_1;

OP_TEST_do_skip_2_9:
  goto jmp_5_1;

OP_TEST_do_jmp_5_14:
  goto jmp_9_2;

OP_TEST_do_skip_5_15:
  base = L->ci->u.l.base;
  &base[(int)0]->value_.b = (int)1;
  &base[(int)0]->tt_ = (int)1;
  goto jmp_9_2;

OP_TEST_do_jmp_9_20:
  goto jmp_12_3;

OP_TEST_do_skip_9_21:
  goto jmp_12_3;

OP_RETURN_if_sizep_gt_0_12_23:
  (void)luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_12_24;

OP_RETURN_else_sizep_gt_0_12_24:
  (void)luaD_poscall (L, &base[(int)1]);
  return (int)1;

OP_RETURN_13_25:
  (void)printf ("OP_RETURN(pc=%d) return %d args\
", (int)14, (int)0);
  base = L->ci->u.l.base;
  L->top = &base[(int)0];
  comparison_0_26 = cl->p->sizep > (int)0;
  if (comparison_0_26) goto OP_RETURN_if_sizep_gt_0_13_27; else goto OP_RETURN_else_sizep_gt_0_13_28;

OP_RETURN_if_sizep_gt_0_13_27:
  (void)luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_13_28;

OP_RETURN_else_sizep_gt_0_13_28:
  (void)luaD_poscall (L, &base[(int)0]);
  return (int)1;
}


[-- Attachment #5: bug_fdump_ok.txt --]
[-- Type: text/plain, Size: 3636 bytes --]

extern int
ravif2 (struct ravi_lua_State * L)
{
  struct ravi_TValue * base;
  struct ravi_LClosure * cl;
  bool isfalse_0_4;
  bool comparison_0_5;
  bool comparison_0_6;
  bool comparison_0_7;
  bool isfalse_0_10;
  bool comparison_0_11;
  bool comparison_0_12;
  bool comparison_0_13;
  bool isfalse_0_16;
  bool comparison_0_17;
  bool comparison_0_18;
  bool comparison_0_19;
  bool comparison_0_22;
  bool comparison_0_26;

entry:
  cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
  base = L->ci->u.l.base;
  (void)raviV_op_loadnil (L->ci, (int)0, (int)0);
  base = L->ci->u.l.base;
  &base[(int)1]->value_.i = &cl->p->k[(int)0]->value_.i;
  &base[(int)1]->tt_ = &cl->p->k[(int)0]->tt_;
  (void)printf ("OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to %d\
", (int)3, (int)1, (int)5);
  base = L->ci->u.l.base;
  comparison_0_5 = &base[(int)1]->tt_ == (int)0;
  comparison_0_6 = &base[(int)1]->tt_ == (int)1;
  comparison_0_7 = &base[(int)1]->value_.b == (int)0;
  isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
  if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;

jmp_5_1:
  base = L->ci->u.l.base;
  &base[(int)1]->value_.b = (int)0;
  &base[(int)1]->tt_ = (int)1;
  (void)printf ("OP_TEST(%d C=0) if (reg(A=%d)) then skip next else jmp to %d\
", (int)6, (int)1, (int)9);
  base = L->ci->u.l.base;
  comparison_0_11 = &base[(int)1]->tt_ == (int)0;
  comparison_0_12 = &base[(int)1]->tt_ == (int)1;
  comparison_0_13 = &base[(int)1]->value_.b == (int)0;
  isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
  if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;

jmp_9_2:
  base = L->ci->u.l.base;
  &base[(int)1]->value_.i = &cl->p->k[(int)0]->value_.i;
  &base[(int)1]->tt_ = &cl->p->k[(int)0]->tt_;
  (void)printf ("OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to %d\
", (int)10, (int)1, (int)12);
  base = L->ci->u.l.base;
  comparison_0_17 = &base[(int)1]->tt_ == (int)0;
  comparison_0_18 = &base[(int)1]->tt_ == (int)1;
  comparison_0_19 = &base[(int)1]->value_.b == (int)0;
  isfalse_0_16 = comparison_0_17 || comparison_0_18 && comparison_0_19;
  if (!(isfalse_0_16)) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;

jmp_12_3:
  base = L->ci->u.l.base;
  &base[(int)1]->value_.b = (int)0;
  &base[(int)1]->tt_ = (int)1;
  (void)printf ("OP_RETURN(pc=%d) return %d args\
", (int)13, (int)1);
  base = L->ci->u.l.base;
  L->top = &base[(int)2];
  comparison_0_22 = cl->p->sizep > (int)0;
  if (comparison_0_22) goto OP_RETURN_if_sizep_gt_0_12_23; else goto OP_RETURN_else_sizep_gt_0_12_24;

OP_TEST_do_jmp_2_8:
  goto jmp_5_1;

OP_TEST_do_skip_2_9:
  goto jmp_5_1;

OP_TEST_do_jmp_5_14:
  goto jmp_9_2;

OP_TEST_do_skip_5_15:
  base = L->ci->u.l.base;
  &base[(int)0]->value_.b = (int)1;
  &base[(int)0]->tt_ = (int)1;
  goto jmp_9_2;

OP_TEST_do_jmp_9_20:
  goto jmp_12_3;

OP_TEST_do_skip_9_21:
  goto jmp_12_3;

OP_RETURN_if_sizep_gt_0_12_23:
  (void)luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_12_24;

OP_RETURN_else_sizep_gt_0_12_24:
  (void)luaD_poscall (L, &base[(int)1]);
  return (int)1;

OP_RETURN_13_25:
  (void)printf ("OP_RETURN(pc=%d) return %d args\
", (int)14, (int)0);
  base = L->ci->u.l.base;
  L->top = &base[(int)0];
  comparison_0_26 = cl->p->sizep > (int)0;
  if (comparison_0_26) goto OP_RETURN_if_sizep_gt_0_13_27; else goto OP_RETURN_else_sizep_gt_0_13_28;

OP_RETURN_if_sizep_gt_0_13_27:
  (void)luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_13_28;

OP_RETURN_else_sizep_gt_0_13_28:
  (void)luaD_poscall (L, &base[(int)0]);
  return (int)1;
}


[-- Attachment #6: bug_rdump.txt --]
[-- Type: text/plain, Size: 214381 bytes --]

/* This code was autogenerated by gcc_jit_context_dump_reproducer_to_file.

   libgccjit (GCC) version 5.1.0 (x86_64-unknown-linux-gnu)
  	compiled by GNU C version 5.1.0, GMP version 5.1.3, MPFR version 3.1.2-p3, MPC version 1.0.1
*/
#include <libgccjit.h>

static void
set_options (gcc_jit_context *ctxt_0xdbef30,
             gcc_jit_context *ctxt_0xdd4060);

static void
create_code (gcc_jit_context *ctxt_0xdbef30,
             gcc_jit_context *ctxt_0xdd4060);

int
main (int argc, const char **argv)
{
  gcc_jit_context *ctxt_0xdbef30;
  gcc_jit_context *ctxt_0xdd4060;
  gcc_jit_result *result;

  ctxt_0xdbef30 = gcc_jit_context_acquire ();
  ctxt_0xdd4060 = gcc_jit_context_new_child_context (ctxt_0xdbef30);
  set_options (ctxt_0xdbef30,
               ctxt_0xdd4060);
  create_code (ctxt_0xdbef30,
               ctxt_0xdd4060);
  result = gcc_jit_context_compile (ctxt_0xdd4060);
  gcc_jit_context_release (ctxt_0xdd4060);
  gcc_jit_context_release (ctxt_0xdbef30);
  gcc_jit_result_release (result);
  return 0;
}

static void
set_options (gcc_jit_context *ctxt_0xdbef30,
             gcc_jit_context *ctxt_0xdd4060)
{
  /* Set options for ctxt_0xdbef30.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0xdbef30,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  "NULL");
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0xdbef30,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdbef30,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);

  /* Set options for ctxt_0xdd4060.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0xdd4060,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  "NULL");
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0xdd4060,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xdd4060,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
}

static void
create_code (gcc_jit_context *ctxt_0xdbef30,
             gcc_jit_context *ctxt_0xdd4060)
{
  /* Replay of API calls for ctxt_0xdbef30.  */
  gcc_jit_type *type_bool_0xdbf580 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_BOOL);
  gcc_jit_type *type_double_0xdbf5f0 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_DOUBLE);
  gcc_jit_type *type_double___0xdbf630 =
    gcc_jit_type_get_pointer (type_double_0xdbf5f0);
  gcc_jit_type *type_double_____0xdbf670 =
    gcc_jit_type_get_pointer (type_double___0xdbf630);
  gcc_jit_type *type_long_long_0xdbf6b0 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_LONG_LONG);
  gcc_jit_type *type_long_long___0xdbf740 =
    gcc_jit_type_get_pointer (type_long_long_0xdbf6b0);
  gcc_jit_type *type_long_long_____0xdbf780 =
    gcc_jit_type_get_pointer (type_long_long___0xdbf740);
  gcc_jit_type *type_unsigned_long_long_0xdbf7c0 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_UNSIGNED_LONG_LONG);
  gcc_jit_type *type_size_t_0xdbf800 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_SIZE_T);
  gcc_jit_type *type_int_0xdbf8d0 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_INT);
  gcc_jit_type *type_int___0xdbf910 =
    gcc_jit_type_get_pointer (type_int_0xdbf8d0);
  gcc_jit_type *type_short_0xdbf950 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_SHORT);
  gcc_jit_type *type_unsigned_short_0xdbf990 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_UNSIGNED_SHORT);
  gcc_jit_type *type_unsigned_int_0xdbf9d0 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_UNSIGNED_INT);
  gcc_jit_type *type_unsigned_char_0xdbfa10 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_UNSIGNED_CHAR);
  gcc_jit_type *type_char_0xdbfa50 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_CHAR);
  gcc_jit_type *type_char___0xdbfa90 =
    gcc_jit_type_get_pointer (type_char_0xdbfa50);
  gcc_jit_type *type_const_char___0xdbf840 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_CONST_CHAR_PTR);
  gcc_jit_type *type_void_0xdbf880 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_VOID);
  gcc_jit_type *type_void___0xdbfba0 = gcc_jit_context_get_type (ctxt_0xdbef30, GCC_JIT_TYPE_VOID_PTR);
  gcc_jit_type *type_unsigned_int___0xdbfbe0 =
    gcc_jit_type_get_pointer (type_unsigned_int_0xdbf9d0);
  gcc_jit_struct *struct_struct_ravi_lua_State_0xdbf6f0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_State___0xdbfc80 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_State_0xdbf6f0));
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____0xdbfcc0[1] = {
    type_struct_ravi_lua_State___0xdbfc80,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____0xdbfad0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                           1, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____0xdbfcc0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____int__long_long__0xdbfb10[3] = {
    type_struct_ravi_lua_State___0xdbfc80,
    type_int_0xdbf8d0,
    type_long_long_0xdbf6b0,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____int__long_long__0xdbfe70 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                           3, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____int__long_long__0xdbfb10, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_void__void____void____size_t__size_t__0xdbfeb0[4] = {
    type_void___0xdbfba0,
    type_void___0xdbfba0,
    type_size_t_0xdbf800,
    type_size_t_0xdbf800,
  };
  gcc_jit_type *ptr_to_void______void____void____size_t__size_t__0xdbff30 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void_0xdbf880, /* gcc_jit_type *return_type */
                                           4, /* int num_params */
                                           params_for_function_type_void__void____void____size_t__size_t__0xdbfeb0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_lua_Debug_0xdbffd0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_Debug"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_Debug___0xdc0020 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_Debug_0xdbffd0));
  gcc_jit_type *params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0xdc0060[2] = {
    type_struct_ravi_lua_State___0xdbfc80,
    type_struct_ravi_lua_Debug___0xdc0020,
  };
  gcc_jit_type *ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0xdc00e0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void___0xdbfba0, /* gcc_jit_type *return_type */
                                           2, /* int num_params */
                                           params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0xdc0060, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_GCObject_0xdc0180 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_GCObject"); /* const char *name */
  gcc_jit_type *type_struct_ravi_GCObject___0xdbfd40 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_GCObject_0xdc0180));
  gcc_jit_field *field_next_0xdbfde0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc03b0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc0460 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc04b0[3] = {
    field_next_0xdbfde0,
    field_tt_0xdc03b0,
    field_marked_0xdc0460,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_GCObject_0xdc0180, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xdc04b0); /* gcc_jit_field **fields */
  gcc_jit_field *field_gc_0xdc0580 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "gc"); /* const char *name */
  gcc_jit_field *field_p_0xdc0630 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xdbfba0, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_b_0xdc06e0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "b"); /* const char *name */
  gcc_jit_field *field_f_0xdc0790 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xdbfad0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_field *field_i_0xdc0840 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /* gcc_jit_type *type, */
                               "i"); /* const char *name */
  gcc_jit_field *field_n_0xdc0230 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0xdbf5f0, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Value_0xdc02e0[6] = {
    field_gc_0xdc0580,
    field_p_0xdc0630,
    field_b_0xdc06e0,
    field_f_0xdc0790,
    field_i_0xdc0840,
    field_n_0xdc0230,
  };
  gcc_jit_type *union_union_ravi_Value_0xdc02e0 =
    gcc_jit_context_new_union_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Value", /* const char *name */
                                    6, /* int num_fields */
                                    fields_for_union_union_ravi_Value_0xdc02e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_value__0xdc0be0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xdc02e0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0xdc0c90 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TValue_0xdc0d40 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TValue"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc0de0[2] = {
    field_value__0xdc0be0,
    field_tt__0xdc0c90,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TValue_0xdc0d40, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xdc0de0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_TValue___0xdc0e20 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xdc0d40));
  gcc_jit_type *type_const_struct_ravi_TValue_0xdc0e60 =
    gcc_jit_type_get_const (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xdc0d40));
  gcc_jit_type *type_const_struct_ravi_TValue___0xdc0ea0 =
    gcc_jit_type_get_pointer (type_const_struct_ravi_TValue_0xdc0e60);
  gcc_jit_struct *struct_struct_ravi_TString_0xdc0f40 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TString"); /* const char *name */
  gcc_jit_type *type_struct_ravi_TString___0xdc0f90 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TString_0xdc0f40));
  gcc_jit_type *type_struct_ravi_TString_____0xdc0fd0 =
    gcc_jit_type_get_pointer (type_struct_ravi_TString___0xdc0f90);
  gcc_jit_field *field_next_0xdc1070 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc1120 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc11d0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_extra_0xdc1280 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_hash_0xdc08f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xdbf9d0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_len_0xdc09a0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xdbf800, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_hash_0xdc0a50 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xdc0f90, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc0aa0[7] = {
    field_next_0xdc1070,
    field_tt_0xdc1120,
    field_marked_0xdc11d0,
    field_extra_0xdc1280,
    field_hash_0xdc08f0,
    field_len_0xdc09a0,
    field_hash_0xdc0a50,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TString_0xdc0f40, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xdc0aa0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Table_0xdc1710 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Table"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Table___0xdc1760 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Table_0xdc1710));
  gcc_jit_type *type_struct_ravi_Table_____0xdc17a0 =
    gcc_jit_type_get_pointer (type_struct_ravi_Table___0xdc1760);
  gcc_jit_field *field_next_0xdc1840 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc18f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc19a0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_ttuv__0xdc1a50 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "ttuv_"); /* const char *name */
  gcc_jit_field *field_metatable_0xdc1b00 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xdc1760, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_len_0xdc1bb0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xdbf800, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_user__0xdc1c60 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xdc02e0, /* gcc_jit_type *type, */
                               "user_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Udata_0xdc1d10 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Udata"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc1d60[7] = {
    field_next_0xdc1840,
    field_tt_0xdc18f0,
    field_marked_0xdc19a0,
    field_ttuv__0xdc1a50,
    field_metatable_0xdc1b00,
    field_len_0xdc1bb0,
    field_user__0xdc1c60,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Udata_0xdc1d10, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xdc1d60); /* gcc_jit_field **fields */
  gcc_jit_field *field_name_0xdc1e50 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xdc0f90, /* gcc_jit_type *type, */
                               "name"); /* const char *name */
  gcc_jit_field *field_type_0xdc1f00 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "type"); /* const char *name */
  gcc_jit_field *field_instack_0xdc1fb0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "instack"); /* const char *name */
  gcc_jit_field *field_idx_0xdc2060 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "idx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Upvaldesc_0xdc2110 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Upvaldesc"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc21f0[4] = {
    field_name_0xdc1e50,
    field_type_0xdc1f00,
    field_instack_0xdc1fb0,
    field_idx_0xdc2060,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Upvaldesc_0xdc2110, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0xdc21f0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Upvaldesc___0xdc2260 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Upvaldesc_0xdc2110));
  gcc_jit_field *field_varname_0xdc12f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xdc0f90, /* gcc_jit_type *type, */
                               "varname"); /* const char *name */
  gcc_jit_field *field_startpc_0xdc13a0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "startpc"); /* const char *name */
  gcc_jit_field *field_endpc_0xdc1450 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "endpc"); /* const char *name */
  gcc_jit_field *field_ravi_type_0xdc1500 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "ravi_type"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_LocVar_0xdc15b0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LocVar"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc1600[4] = {
    field_varname_0xdc12f0,
    field_startpc_0xdc13a0,
    field_endpc_0xdc1450,
    field_ravi_type_0xdc1500,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LocVar_0xdc15b0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0xdc1600); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_LocVar___0xdc1670 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LocVar_0xdc15b0));
  gcc_jit_struct *struct_struct_ravi_LClosure_0xdc28c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LClosure"); /* const char *name */
  gcc_jit_type *type_struct_ravi_LClosure___0xdc2910 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0xdc28c0));
  gcc_jit_type *type_struct_ravi_LClosure_____0xdc2950 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure___0xdc2910);
  gcc_jit_type *type_struct_ravi_LClosure_______0xdc2990 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure_____0xdc2950);
  gcc_jit_field *field_jit_status_0xdc2a30 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "jit_status"); /* const char *name */
  gcc_jit_field *field_jit_flags_0xdc2ae0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "jit_flags"); /* const char *name */
  gcc_jit_field *field_execution_count_0xdc2b90 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xdbf990, /* gcc_jit_type *type, */
                               "execution_count"); /* const char *name */
  gcc_jit_field *field_jit_data_0xdc2c40 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xdbfba0, /* gcc_jit_type *type, */
                               "jit_data"); /* const char *name */
  gcc_jit_field *field_jit_function_0xdc2cf0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xdbfad0, /* gcc_jit_type *type, */
                               "jit_function"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviJITProto_0xdc2da0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviJITProto"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc2df0[5] = {
    field_jit_status_0xdc2a30,
    field_jit_flags_0xdc2ae0,
    field_execution_count_0xdc2b90,
    field_jit_data_0xdc2c40,
    field_jit_function_0xdc2cf0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviJITProto_0xdc2da0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0xdc2df0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Proto_0xdc2ee0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Proto"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Proto___0xdc2f30 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Proto_0xdc2ee0));
  gcc_jit_type *type_struct_ravi_Proto_____0xdc2f70 =
    gcc_jit_type_get_pointer (type_struct_ravi_Proto___0xdc2f30);
  gcc_jit_field *field_next_0xdc3010 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc30c0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc3170 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_numparams_0xdc3220 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "numparams"); /* const char *name */
  gcc_jit_field *field_is_vararg_0xdc32d0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "is_vararg"); /* const char *name */
  gcc_jit_field *field_maxstacksize_0xdc3380 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "maxstacksize"); /* const char *name */
  gcc_jit_field *field_sizeupvalues_0xdc3430 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "sizeupvalues"); /* const char *name */
  gcc_jit_field *field_sizek_0xdc34e0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "sizek"); /* const char *name */
  gcc_jit_field *field_sizecode_0xdc3590 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "sizecode"); /* const char *name */
  gcc_jit_field *field_sizelineinfo_0xdc3640 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "sizelineinfo"); /* const char *name */
  gcc_jit_field *field_sizep_0xdc36f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "sizep"); /* const char *name */
  gcc_jit_field *field_sizelocvars_0xdc37a0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "sizelocvars"); /* const char *name */
  gcc_jit_field *field_linedefined_0xdc3850 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "linedefined"); /* const char *name */
  gcc_jit_field *field_lastlinedefined_0xdc2300 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "lastlinedefined"); /* const char *name */
  gcc_jit_field *field_k_0xdc23b0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_code_0xdc2460 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xdbfbe0, /* gcc_jit_type *type, */
                               "code"); /* const char *name */
  gcc_jit_field *field_p_0xdc2510 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto_____0xdc2f70, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_lineinfo_0xdc25c0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0xdbf910, /* gcc_jit_type *type, */
                               "lineinfo"); /* const char *name */
  gcc_jit_field *field_locvars_0xdc2670 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LocVar___0xdc1670, /* gcc_jit_type *type, */
                               "locvars"); /* const char *name */
  gcc_jit_field *field_upvalues_0xdc2720 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Upvaldesc___0xdc2260, /* gcc_jit_type *type, */
                               "upvalues"); /* const char *name */
  gcc_jit_field *field_cache_0xdc27d0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xdc2910, /* gcc_jit_type *type, */
                               "cache"); /* const char *name */
  gcc_jit_field *field_source_0xdc4150 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xdc0f90, /* gcc_jit_type *type, */
                               "source"); /* const char *name */
  gcc_jit_field *field_gclist_0xdc4200 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_jit_0xdc42b0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviJITProto_0xdc2da0), /* gcc_jit_type *type, */
                               "ravi_jit"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc4300[24] = {
    field_next_0xdc3010,
    field_tt_0xdc30c0,
    field_marked_0xdc3170,
    field_numparams_0xdc3220,
    field_is_vararg_0xdc32d0,
    field_maxstacksize_0xdc3380,
    field_sizeupvalues_0xdc3430,
    field_sizek_0xdc34e0,
    field_sizecode_0xdc3590,
    field_sizelineinfo_0xdc3640,
    field_sizep_0xdc36f0,
    field_sizelocvars_0xdc37a0,
    field_linedefined_0xdc3850,
    field_lastlinedefined_0xdc2300,
    field_k_0xdc23b0,
    field_code_0xdc2460,
    field_p_0xdc2510,
    field_lineinfo_0xdc25c0,
    field_locvars_0xdc2670,
    field_upvalues_0xdc2720,
    field_cache_0xdc27d0,
    field_source_0xdc4150,
    field_gclist_0xdc4200,
    field_ravi_jit_0xdc42b0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Proto_0xdc2ee0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0xdc4300); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_UpVal_0xdc4470 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal"); /* const char *name */
  gcc_jit_type *type_struct_ravi_UpVal___0xdc44c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_UpVal_0xdc4470));
  gcc_jit_field *field_next_0xdc4560 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc4610 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc46c0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0xdc4770 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0xdc4820 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_f_0xdc48d0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xdbfad0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_TValue_1__0xdc4920 =
    gcc_jit_context_new_array_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xdc0d40), /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvalue_0xdc49d0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_TValue_1__0xdc4920, /* gcc_jit_type *type, */
                               "upvalue"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CClosure_0xdc4a80 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CClosure"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc4ad0[7] = {
    field_next_0xdc4560,
    field_tt_0xdc4610,
    field_marked_0xdc46c0,
    field_nupvalues_0xdc4770,
    field_gclist_0xdc4820,
    field_f_0xdc48d0,
    field_upvalue_0xdc49d0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CClosure_0xdc4a80, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xdc4ad0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_CClosure___0xdc4b60 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0xdc4a80));
  gcc_jit_field *field_next_0xdc4c00 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc4cb0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc4d60 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0xdc4e10 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0xdc4ec0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_p_0xdc4f70 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto___0xdc2f30, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_UpVal___1__0xdc4fc0 =
    gcc_jit_context_new_array_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    type_struct_ravi_UpVal___0xdc44c0, /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvals_0xdc5070 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_UpVal___1__0xdc4fc0, /* gcc_jit_type *type, */
                               "upvals"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc50c0[7] = {
    field_next_0xdc4c00,
    field_tt_0xdc4cb0,
    field_marked_0xdc4d60,
    field_nupvalues_0xdc4e10,
    field_gclist_0xdc4ec0,
    field_p_0xdc4f70,
    field_upvals_0xdc5070,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LClosure_0xdc28c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xdc50c0); /* gcc_jit_field **fields */
  gcc_jit_field *field_c_0xdc51b0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0xdc4a80), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *field_l_0xdc5260 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0xdc28c0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Closure_0xdc5310[2] = {
    field_c_0xdc51b0,
    field_l_0xdc5260,
  };
  gcc_jit_type *union_union_ravi_Closure_0xdc5310 =
    gcc_jit_context_new_union_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Closure", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_Closure_0xdc5310); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_Closure___0xdc53e0 =
    gcc_jit_type_get_pointer (union_union_ravi_Closure_0xdc5310);
  gcc_jit_field *field_value__0xdc5480 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xdc02e0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0xdc5530 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_field *field_next_0xdc55e0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TKey_nk_0xdc5690 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TKey_nk"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc2160[3] = {
    field_value__0xdc5480,
    field_tt__0xdc5530,
    field_next_0xdc55e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TKey_nk_0xdc5690, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xdc2160); /* gcc_jit_field **fields */
  gcc_jit_field *field_nk_0xdc57f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TKey_nk_0xdc5690), /* gcc_jit_type *type, */
                               "nk"); /* const char *name */
  gcc_jit_field *field_tvk_0xdc58a0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xdc0d40), /* gcc_jit_type *type, */
                               "tvk"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_TKey_0xdc5950[2] = {
    field_nk_0xdc57f0,
    field_tvk_0xdc58a0,
  };
  gcc_jit_type *union_union_ravi_TKey_0xdc5950 =
    gcc_jit_context_new_union_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_TKey", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_TKey_0xdc5950); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_TKey___0xdc5a20 =
    gcc_jit_type_get_pointer (union_union_ravi_TKey_0xdc5950);
  gcc_jit_field *field_i_val_0xdc5ac0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xdc0d40), /* gcc_jit_type *type, */
                               "i_val"); /* const char *name */
  gcc_jit_field *field_i_key_0xdc5b70 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_TKey_0xdc5950, /* gcc_jit_type *type, */
                               "i_key"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Node_0xdc3900 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Node"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc3950[2] = {
    field_i_val_0xdc5ac0,
    field_i_key_0xdc5b70,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Node_0xdc3900, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xdc3950); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Node___0xdc39c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Node_0xdc3900));
  gcc_jit_field *field_data_0xdc3a60 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xdbfba0, /* gcc_jit_type *type, */
                               "data"); /* const char *name */
  gcc_jit_field *field_len_0xdc3b10 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xdbf9d0, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_size_0xdc3bc0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xdbf9d0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_field *field_array_type_0xdc3c70 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "array_type"); /* const char *name */
  gcc_jit_field *field_array_modifier_0xdc3d20 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "array_modifier"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviArray_0xdc3dd0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviArray"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc3e20[5] = {
    field_data_0xdc3a60,
    field_len_0xdc3b10,
    field_size_0xdc3bc0,
    field_array_type_0xdc3c70,
    field_array_modifier_0xdc3d20,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviArray_0xdc3dd0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0xdc3e20); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0xdc3f10 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc3fc0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc4070 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_flags_0xdc6880 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "flags"); /* const char *name */
  gcc_jit_field *field_lsizenode_0xdc6930 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "lsizenode"); /* const char *name */
  gcc_jit_field *field_sizearray_0xdc69e0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xdbf9d0, /* gcc_jit_type *type, */
                               "sizearray"); /* const char *name */
  gcc_jit_field *field_array_0xdc6a90 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "array"); /* const char *name */
  gcc_jit_field *field_node_0xdc6b40 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0xdc39c0, /* gcc_jit_type *type, */
                               "node"); /* const char *name */
  gcc_jit_field *field_lastfree_0xdc6bf0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0xdc39c0, /* gcc_jit_type *type, */
                               "lastfree"); /* const char *name */
  gcc_jit_field *field_metatable_0xdc6ca0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xdc1760, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_gclist_0xdc6d50 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_array_0xdc6e00 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviArray_0xdc3dd0), /* gcc_jit_type *type, */
                               "ravi_array"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc6e50[12] = {
    field_next_0xdc3f10,
    field_tt_0xdc3fc0,
    field_marked_0xdc4070,
    field_flags_0xdc6880,
    field_lsizenode_0xdc6930,
    field_sizearray_0xdc69e0,
    field_array_0xdc6a90,
    field_node_0xdc6b40,
    field_lastfree_0xdc6bf0,
    field_metatable_0xdc6ca0,
    field_gclist_0xdc6d50,
    field_ravi_array_0xdc6e00,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Table_0xdc1710, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             12, /* int num_fields */
                             fields_fields_0xdc6e50); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_lua_longjmp_0xdc6f80 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_longjmp"); /* const char *name */
  gcc_jit_field *field_buffer_0xdc7030 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_char___0xdbfa90, /* gcc_jit_type *type, */
                               "buffer"); /* const char *name */
  gcc_jit_field *field_n_0xdc70e0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xdbf800, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *field_buffsize_0xdc7190 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xdbf800, /* gcc_jit_type *type, */
                               "buffsize"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Mbuffer_0xdc7240 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Mbuffer"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc7290[3] = {
    field_buffer_0xdc7030,
    field_n_0xdc70e0,
    field_buffsize_0xdc7190,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Mbuffer_0xdc7240, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xdc7290); /* gcc_jit_field **fields */
  gcc_jit_field *field_hash_0xdc7360 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString_____0xdc0fd0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_nuse_0xdc7410 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "nuse"); /* const char *name */
  gcc_jit_field *field_size_0xdc74c0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_stringtable_0xdc7570 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_stringtable"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc75c0[3] = {
    field_hash_0xdc7360,
    field_nuse_0xdc7410,
    field_size_0xdc74c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_stringtable_0xdc7570, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xdc75c0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_CallInfo_0xdc7690 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo"); /* const char *name */
  gcc_jit_type *type_struct_ravi_CallInfo___0xdc76e0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0xdc7690));
  gcc_jit_field *field_base_0xdc7780 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "base"); /* const char *name */
  gcc_jit_field *field_savedpc_0xdc7830 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xdbfbe0, /* gcc_jit_type *type, */
                               "savedpc"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_lua_0xdc78e0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_lua"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc56e0[2] = {
    field_base_0xdc7780,
    field_savedpc_0xdc7830,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_lua_0xdc78e0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xdc56e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_k_0xdc7a60 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____int__long_long__0xdbfe70, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_old_errfunc_0xdc7b10 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /* gcc_jit_type *type, */
                               "old_errfunc"); /* const char *name */
  gcc_jit_field *field_ctx_0xdc7bc0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /* gcc_jit_type *type, */
                               "ctx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_C_0xdc7c70 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_C"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc7cc0[3] = {
    field_k_0xdc7a60,
    field_old_errfunc_0xdc7b10,
    field_ctx_0xdc7bc0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_C_0xdc7c70, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xdc7cc0); /* gcc_jit_field **fields */
  gcc_jit_field *field_l_0xdc7d90 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_lua_0xdc78e0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *field_c_0xdc7e40 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_C_0xdc7c70), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_CallInfo_u_0xdc7ef0[2] = {
    field_l_0xdc7d90,
    field_c_0xdc7e40,
  };
  gcc_jit_type *union_union_ravi_CallInfo_u_0xdc7ef0 =
    gcc_jit_context_new_union_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_CallInfo_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_CallInfo_u_0xdc7ef0); /* gcc_jit_field **fields */
  gcc_jit_field *field_func_0xdc8020 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "func"); /* const char *name */
  gcc_jit_field *field_top_0xdc80d0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_previous_0xdc8180 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /* gcc_jit_type *type, */
                               "previous"); /* const char *name */
  gcc_jit_field *field_next_0xdc8230 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_u_0xdc82e0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_CallInfo_u_0xdc7ef0, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *field_extra_0xdc8390 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_nresults_0xdc8440 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_short_0xdbf950, /* gcc_jit_type *type, */
                               "nresults"); /* const char *name */
  gcc_jit_field *field_callstatus_0xdc84f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "callstatus"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc8540[8] = {
    field_func_0xdc8020,
    field_top_0xdc80d0,
    field_previous_0xdc8180,
    field_next_0xdc8230,
    field_u_0xdc82e0,
    field_extra_0xdc8390,
    field_nresults_0xdc8440,
    field_callstatus_0xdc84f0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_0xdc7690, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             8, /* int num_fields */
                             fields_fields_0xdc8540); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_State_0xdc8630 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_State___0xdc8680 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_State_0xdc8630));
  gcc_jit_struct *struct_struct_ravi_global_State_0xdc8720 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_global_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_global_State___0xdc8770 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_global_State_0xdc8720));
  gcc_jit_field *field_next_0xdc8810 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xdc88c0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xdc8970 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_status_0xdc8a20 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "status"); /* const char *name */
  gcc_jit_field *field_top_0xdc8ad0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_l_G_0xdc8b80 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_global_State___0xdc8770, /* gcc_jit_type *type, */
                               "l_G"); /* const char *name */
  gcc_jit_field *field_ci_0xdc8c30 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /* gcc_jit_type *type, */
                               "ci"); /* const char *name */
  gcc_jit_field *field_oldpc_0xdc8ce0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xdbfbe0, /* gcc_jit_type *type, */
                               "oldpc"); /* const char *name */
  gcc_jit_field *field_stack_last_0xdc8d90 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "stack_last"); /* const char *name */
  gcc_jit_field *field_stack_0xdc8e40 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "stack"); /* const char *name */
  gcc_jit_field *field_openupval_0xdc8ef0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xdc44c0, /* gcc_jit_type *type, */
                               "openupval"); /* const char *name */
  gcc_jit_field *field_gclist_0xdc8fa0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xdbfd40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_twups_0xdc5c20 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /* gcc_jit_type *type, */
                               "twups"); /* const char *name */
  gcc_jit_field *field_errorJmp_0xdc5cd0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_lua_longjmp_0xdc6f80), /* gcc_jit_type *type, */
                               "errorJmp"); /* const char *name */
  gcc_jit_field *field_base_ci_0xdc5d80 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0xdc7690), /* gcc_jit_type *type, */
                               "base_ci"); /* const char *name */
  gcc_jit_field *field_hook_0xdc5e30 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0xdc00e0, /* gcc_jit_type *type, */
                               "hook"); /* const char *name */
  gcc_jit_field *field_errfunc_0xdc5ee0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /* gcc_jit_type *type, */
                               "errfunc"); /* const char *name */
  gcc_jit_field *field_stacksize_0xdc5f90 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "stacksize"); /* const char *name */
  gcc_jit_field *field_basehookcount_0xdc6040 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "basehookcount"); /* const char *name */
  gcc_jit_field *field_hookcount_0xdc60f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "hookcount"); /* const char *name */
  gcc_jit_field *field_nny_0xdc61a0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xdbf990, /* gcc_jit_type *type, */
                               "nny"); /* const char *name */
  gcc_jit_field *field_nCcalls_0xdc6250 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xdbf990, /* gcc_jit_type *type, */
                               "nCcalls"); /* const char *name */
  gcc_jit_field *field_hookmask_0xdc6300 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "hookmask"); /* const char *name */
  gcc_jit_field *field_allowhook_0xdc63b0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xdbfa10, /* gcc_jit_type *type, */
                               "allowhook"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc6400[24] = {
    field_next_0xdc8810,
    field_tt_0xdc88c0,
    field_marked_0xdc8970,
    field_status_0xdc8a20,
    field_top_0xdc8ad0,
    field_l_G_0xdc8b80,
    field_ci_0xdc8c30,
    field_oldpc_0xdc8ce0,
    field_stack_last_0xdc8d90,
    field_stack_0xdc8e40,
    field_openupval_0xdc8ef0,
    field_gclist_0xdc8fa0,
    field_twups_0xdc5c20,
    field_errorJmp_0xdc5cd0,
    field_base_ci_0xdc5d80,
    field_hook_0xdc5e30,
    field_errfunc_0xdc5ee0,
    field_stacksize_0xdc5f90,
    field_basehookcount_0xdc6040,
    field_hookcount_0xdc60f0,
    field_nny_0xdc61a0,
    field_nCcalls_0xdc6250,
    field_hookmask_0xdc6300,
    field_allowhook_0xdc63b0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_lua_State_0xdbf6f0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0xdc6400); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0xdc6570 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xdc44c0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_touched_0xdc6620 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /* gcc_jit_type *type, */
                               "touched"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_UpVal_u_open_0xdc66d0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xdbef30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal_u_open"); /* const char *name */
  gcc_jit_field *fields_fields_0xdc6720[2] = {
    field_next_0xdc6570,
    field_touched_0xdc6620,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_u_open_0xdc66d0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xdc6720); /* gcc_jit_field **fields */
  gcc_jit_field *field_open_0xdc67f0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_UpVal_u_open_0xdc66d0), /* gcc_jit_type *type, */
                               "open"); /* const char *name */
  gcc_jit_field *field_value_0xdca330 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xdc0d40), /* gcc_jit_type *type, */
                               "value"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_UpVal_u_0xdca3e0[2] = {
    field_open_0xdc67f0,
    field_value_0xdca330,
  };
  gcc_jit_type *union_union_ravi_UpVal_u_0xdca3e0 =
    gcc_jit_context_new_union_type (ctxt_0xdbef30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_UpVal_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_UpVal_u_0xdca3e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_v_0xdca510 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type, */
                               "v"); /* const char *name */
  gcc_jit_field *field_refcount_0xdca5c0 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xdbf800, /* gcc_jit_type *type, */
                               "refcount"); /* const char *name */
  gcc_jit_field *field_u_0xdca670 =
    gcc_jit_context_new_field (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_UpVal_u_0xdca3e0, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *fields_fields_0xdca6c0[3] = {
    field_v_0xdca510,
    field_refcount_0xdca5c0,
    field_u_0xdca670,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_0xdc4470, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xdca6c0); /* gcc_jit_field **fields */
  gcc_jit_param *param_L_0xdca790 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_firstResult_0xdca840 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "firstResult"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_poscall_0xdca8f0[2] = {
    param_L_0xdca790,
    param_firstResult_0xdca840,
  };
  gcc_jit_function *func_luaD_poscall_0xdca8f0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaD_poscall", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaD_poscall_0xdca8f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcaa20 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_uv_0xdcaad0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xdc44c0, /*gcc_jit_type *type */
                               "uv"); /* const char *name */
  gcc_jit_param *params_for_func_luaC_upvalbarrier__0xdcab80[2] = {
    param_L_0xdcaa20,
    param_uv_0xdcaad0,
  };
  gcc_jit_function *func_luaC_upvalbarrier__0xdcab80 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaC_upvalbarrier_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaC_upvalbarrier__0xdcab80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcac80 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0xdcad30 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0xdcade0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_precall_0xdcae90[3] = {
    param_L_0xdcac80,
    param_func_0xdcad30,
    param_nresults_0xdcade0,
  };
  gcc_jit_function *func_luaD_precall_0xdcae90 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaD_precall", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaD_precall_0xdcae90, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcaf90 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0xdcb040 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0xdcb0f0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *param_allowyield_0xdcb1a0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "allowyield"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_call_0xdcb250[4] = {
    param_L_0xdcaf90,
    param_func_0xdcb040,
    param_nresults_0xdcb0f0,
    param_allowyield_0xdcb1a0,
  };
  gcc_jit_function *func_luaD_call_0xdcb250 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaD_call", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaD_call_0xdcb250, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcb350 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_execute_0xdcb400[1] = {
    param_L_0xdcb350,
  };
  gcc_jit_function *func_luaV_execute_0xdcb400 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaV_execute", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_luaV_execute_0xdcb400, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcb550 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_level_0xdcb600 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "level"); /* const char *name */
  gcc_jit_param *params_for_func_luaF_close_0xdcb6b0[2] = {
    param_L_0xdcb550,
    param_level_0xdcb600,
  };
  gcc_jit_function *func_luaF_close_0xdcb6b0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaF_close", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaF_close_0xdcb6b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcb780 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t1_0xdcb830 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "t1"); /* const char *name */
  gcc_jit_param *param_t2_0xdcb8e0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "t2"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_equalobj_0xdcb990[3] = {
    param_L_0xdcb780,
    param_t1_0xdcb830,
    param_t2_0xdcb8e0,
  };
  gcc_jit_function *func_luaV_equalobj_0xdcb990 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaV_equalobj", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_equalobj_0xdcb990, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcba90 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0xdcbb40 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0xdcbbf0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessthan_0xdcbca0[3] = {
    param_L_0xdcba90,
    param_l_0xdcbb40,
    param_r_0xdcbbf0,
  };
  gcc_jit_function *func_luaV_lessthan_0xdcbca0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaV_lessthan", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessthan_0xdcbca0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcbda0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0xdcbe50 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0xdcbf00 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessequal_0xdcbfb0[3] = {
    param_L_0xdcbda0,
    param_l_0xdcbe50,
    param_r_0xdcbf00,
  };
  gcc_jit_function *func_luaV_lessequal_0xdcbfb0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaV_lessequal", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessequal_0xdcbfb0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcb4a0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_fmt_0xdcc1a0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0xdbf840, /*gcc_jit_type *type */
                               "fmt"); /* const char *name */
  gcc_jit_param *params_for_func_luaG_runerror_0xdcc250[2] = {
    param_L_0xdcb4a0,
    param_fmt_0xdcc1a0,
  };
  gcc_jit_function *func_luaG_runerror_0xdcc250 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaG_runerror", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaG_runerror_0xdcc250, /* gcc_jit_param **params */
                                  1); /* int is_variadic */
  gcc_jit_param *param_obj_0xdcc350 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0xdcc400 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0xdbf740, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *param_step_0xdcc4b0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /*gcc_jit_type *type */
                               "step"); /* const char *name */
  gcc_jit_param *param_stopnow_0xdcc560 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0xdbf910, /*gcc_jit_type *type */
                               "stopnow"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_forlimit_0xdcc610[4] = {
    param_obj_0xdcc350,
    param_p_0xdcc400,
    param_step_0xdcc4b0,
    param_stopnow_0xdcc560,
  };
  gcc_jit_function *func_luaV_forlimit_0xdcc610 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaV_forlimit", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_forlimit_0xdcc610, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0xdcc710 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_n_0xdcc7c0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_double___0xdbf630, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tonumber__0xdcc870[2] = {
    param_obj_0xdcc710,
    param_n_0xdcc7c0,
  };
  gcc_jit_function *func_luaV_tonumber__0xdcc870 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaV_tonumber_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tonumber__0xdcc870, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0xdcc970 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0xdcca20 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0xdbf740, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tointeger__0xdccad0[2] = {
    param_obj_0xdcc970,
    param_p_0xdcca20,
  };
  gcc_jit_function *func_luaV_tointeger__0xdccad0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "luaV_tointeger_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tointeger__0xdccad0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdccbd0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ra_0xdccc80 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_rb_0xdccd30 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "rb"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_objlen_0xdccde0[3] = {
    param_L_0xdccbd0,
    param_ra_0xdccc80,
    param_rb_0xdccd30,
  };
  gcc_jit_function *func_luaV_objlen_0xdccde0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaV_objlen", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_objlen_0xdccde0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdccee0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0xdccf90 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0xdcd040 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0xdcd0f0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_gettable_0xdcd1a0[4] = {
    param_L_0xdccee0,
    param_t_0xdccf90,
    param_key_0xdcd040,
    param_val_0xdcd0f0,
  };
  gcc_jit_function *func_luaV_gettable_0xdcd1a0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaV_gettable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_gettable_0xdcd1a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcd2a0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0xdcd350 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0xdcd400 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0xdcd4b0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_settable_0xdcd560[4] = {
    param_L_0xdcd2a0,
    param_t_0xdcd350,
    param_key_0xdcd400,
    param_val_0xdcd4b0,
  };
  gcc_jit_function *func_luaV_settable_0xdcd560 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaV_settable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_settable_0xdcd560, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcd660 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_p1_0xdcd710 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "p1"); /* const char *name */
  gcc_jit_param *param_p2_0xdcd7c0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xdc0ea0, /*gcc_jit_type *type */
                               "p2"); /* const char *name */
  gcc_jit_param *param_res_0xdcd870 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "res"); /* const char *name */
  gcc_jit_param *param_event_0xdcd920 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "event"); /* const char *name */
  gcc_jit_param *params_for_func_luaT_trybinTM_0xdcd9d0[5] = {
    param_L_0xdcd660,
    param_p1_0xdcd710,
    param_p2_0xdcd7c0,
    param_res_0xdcd870,
    param_event_0xdcd920,
  };
  gcc_jit_function *func_luaT_trybinTM_0xdcd9d0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "luaT_trybinTM", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_luaT_trybinTM_0xdcd9d0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_ci_0xdcdb60 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0xdcdbf0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0xdcdca0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_loadnil_0xdcdd50[3] = {
    param_ci_0xdcdb60,
    param_a_0xdcdbf0,
    param_b_0xdcdca0,
  };
  gcc_jit_function *func_raviV_op_loadnil_0xdcdd50 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_loadnil", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_loadnil_0xdcdd50, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcde50 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdcdf00 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xdcdfb0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayint_0xdce060[3] = {
    param_L_0xdcde50,
    param_ci_0xdcdf00,
    param_ra_0xdcdfb0,
  };
  gcc_jit_function *func_raviV_op_newarrayint_0xdce060 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayint", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayint_0xdce060, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdce160 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdce210 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xdce2c0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayfloat_0xdce370[3] = {
    param_L_0xdce160,
    param_ci_0xdce210,
    param_ra_0xdce2c0,
  };
  gcc_jit_function *func_raviV_op_newarrayfloat_0xdce370 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayfloat", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayfloat_0xdce370, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdc8ff0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdc90a0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xdc9150 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0xdc9200 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0xdc92b0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newtable_0xdc9360[5] = {
    param_L_0xdc8ff0,
    param_ci_0xdc90a0,
    param_ra_0xdc9150,
    param_b_0xdc9200,
    param_c_0xdc92b0,
  };
  gcc_jit_function *func_raviV_op_newtable_0xdc9360 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_newtable", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_newtable_0xdc9360, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdc9480 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdc9530 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0xdc95e0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xdc0e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0xdc9690 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0xdc9740 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setlist_0xdc97f0[5] = {
    param_L_0xdc9480,
    param_ci_0xdc9530,
    param_ra_0xdc95e0,
    param_b_0xdc9690,
    param_c_0xdc9740,
  };
  gcc_jit_function *func_raviV_op_setlist_0xdc97f0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_setlist", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_setlist_0xdc97f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdc9910 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0xdc99c0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0xdc9a70 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_div_0xdc9b20[3] = {
    param_L_0xdc9910,
    param_m_0xdc99c0,
    param_n_0xdc9a70,
  };
  gcc_jit_function *func_luaV_div_0xdc9b20 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0xdbf6b0, /* gcc_jit_type *return_type */
                                  "luaV_div", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_div_0xdc9b20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdc9c20 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0xdc9cd0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0xdc9d80 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_mod_0xdc9e30[3] = {
    param_L_0xdc9c20,
    param_m_0xdc9cd0,
    param_n_0xdc9d80,
  };
  gcc_jit_function *func_luaV_mod_0xdc9e30 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0xdbf6b0, /* gcc_jit_type *return_type */
                                  "luaV_mod", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_mod_0xdc9e30, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdc9f30 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdc9fe0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0xdca090 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0xdca140 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0xdca1f0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_concat_0xdca2a0[5] = {
    param_L_0xdc9f30,
    param_ci_0xdc9fe0,
    param_a_0xdca090,
    param_b_0xdca140,
    param_c_0xdca1f0,
  };
  gcc_jit_function *func_raviV_op_concat_0xdca2a0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_concat", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_concat_0xdca2a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdcdaf0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdd02d0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0xdd0380 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xdc2910, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0xdd0430 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_Bx_0xdd04e0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "Bx"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_closure_0xdd0590[5] = {
    param_L_0xdcdaf0,
    param_ci_0xdd02d0,
    param_cl_0xdd0380,
    param_a_0xdd0430,
    param_Bx_0xdd04e0,
  };
  gcc_jit_function *func_raviV_op_closure_0xdd0590 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_closure", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_closure_0xdd0590, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdd06b0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0xdd0760 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xdc76e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0xdd0810 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xdc2910, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0xdd08c0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0xdd0970 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xdbf8d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_vararg_0xdd0a20[5] = {
    param_L_0xdd06b0,
    param_ci_0xdd0760,
    param_cl_0xdd0810,
    param_a_0xdd08c0,
    param_b_0xdd0970,
  };
  gcc_jit_function *func_raviV_op_vararg_0xdd0a20 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviV_op_vararg", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_vararg_0xdd0a20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdd0b40 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0xdd0bf0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xdc1760, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0xdd0ca0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xdbf9d0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0xdd0d50 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xdbf6b0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_int_0xdd0e00[4] = {
    param_L_0xdd0b40,
    param_table_0xdd0bf0,
    param_key_0xdd0ca0,
    param_value_0xdd0d50,
  };
  gcc_jit_function *func_raviH_set_int_0xdd0e00 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviH_set_int", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_int_0xdd0e00, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0xdd0f00 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0xdd0fb0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xdc1760, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0xdd1060 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xdbf9d0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0xdd1110 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0xdbf5f0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_float_0xdd11c0[4] = {
    param_L_0xdd0f00,
    param_table_0xdd0fb0,
    param_key_0xdd1060,
    param_value_0xdd1110,
  };
  gcc_jit_function *func_raviH_set_float_0xdd11c0 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xdbf880, /* gcc_jit_type *return_type */
                                  "raviH_set_float", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_float_0xdd11c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_format_0xdd12c0 =
    gcc_jit_context_new_param (ctxt_0xdbef30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0xdbf840, /*gcc_jit_type *type */
                               "format"); /* const char *name */
  gcc_jit_param *params_for_func_printf_0xdd1370[1] = {
    param_format_0xdd12c0,
  };
  gcc_jit_function *func_printf_0xdd1370 =
    gcc_jit_context_new_function (ctxt_0xdbef30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "printf", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_printf_0xdd1370, /* gcc_jit_param **params */
                                  1); /* int is_variadic */


  /* Replay of API calls for ctxt_0xdd4060.  */
  gcc_jit_param *param_L_0xdf8a60 =
    gcc_jit_context_new_param (ctxt_0xdd4060,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xdbfc80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_ravif2_0xe04e80[1] = {
    param_L_0xdf8a60,
  };
  gcc_jit_function *func_ravif2_0xe04e80 =
    gcc_jit_context_new_function (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_EXPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xdbf8d0, /* gcc_jit_type *return_type */
                                  "ravif2", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_ravif2_0xe04e80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_block *block_entry_0xdf8870 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "entry");
  gcc_jit_lvalue *local_base_0xdf87d0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_TValue___0xdc0e20, /* gcc_jit_type *type */
                                "base"); /* const char *name */
  gcc_jit_lvalue *local_cl_0xdf8970 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_LClosure___0xdc2910, /* gcc_jit_type *type */
                                "cl"); /* const char *name */
  gcc_jit_block *block_jmp_5_1_0xdf8780 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "jmp_5_1");
  gcc_jit_block *block_jmp_9_2_0xdf86c0 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "jmp_9_2");
  gcc_jit_block *block_jmp_12_3_0xdf8600 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "jmp_12_3");
  gcc_jit_lvalue *lvalue_L__ci_0xdf8550=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0xdf8a60), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_ci_0xdc8c30); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func_0xdf84c0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0xdf8550), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_func_0xdc8020); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__0xdf8470=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func_0xdf84c0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__gc_0xdf8420 = 
    gcc_jit_lvalue_access_field (lvalue_L__ci__func__value__0xdf8470, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_gc_0xdc0580);
  gcc_jit_rvalue *rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0xdf83d0 =
    gcc_jit_context_new_cast (ctxt_0xdd4060,
                              NULL, /* gcc_jit_location *loc */
                              gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func__value__gc_0xdf8420), /* gcc_jit_rvalue *rvalue */
                              type_struct_ravi_LClosure___0xdc2910); /* gcc_jit_type *type */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_cl_0xdf8970, /* gcc_jit_lvalue *lvalue */
                                rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0xdf83d0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_L__ci__u_0xdf8330=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0xdf8550), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_u_0xdc82e0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue_L__ci__u_l_0xdf82e0 = 
    gcc_jit_rvalue_access_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__u_0xdf8330), /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_l_0xdc7d90);
  gcc_jit_rvalue *rvalue_L__ci__u_l_base_0xdf8290 = 
    gcc_jit_rvalue_access_field (rvalue_L__ci__u_l_0xdf82e0, /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_base_0xdc7780);
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p_0xdf81f0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (local_cl_0xdf8970), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_p_0xdc4f70); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_cl__p__k_0xdf81a0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0xdf81f0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_k_0xdc23b0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xdf80f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_0_0xdd93d0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0xdd9310[3] = {
    gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0xdf8550),
    rvalue__int_0_0xdd93d0,
    rvalue__int_0_0xdf80f0,
  };
  gcc_jit_rvalue *call_raviV_op_loadnil__L__ci___int_0___int_0__0xdd9310 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_raviV_op_loadnil_0xdcdd50, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0xdd9310); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_entry_0xdf8870, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_raviV_op_loadnil__L__ci___int_0___int_0__0xdd9310); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdd9200 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xdd91b0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xdd9200); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xdd9160 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xdd91b0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xdd9110 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0xdd90c0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0xdf81a0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xdd9110); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0xdd8fd0 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0xdd90c0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xdd8f20=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdd9160, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__i_0xdd8e90 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xdd8f20, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xdc0840);
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__0xdd8dd0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xdd8fd0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__i_0xdd7870 = 
    gcc_jit_lvalue_access_field (lvalue__cl__p__k__int_0___value__0xdd8dd0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xdc0840);
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__i_0xdd8e90, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___value__i_0xdd7870)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xdd8bd0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdd9160, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___tt__0xdf7370=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xdd8fd0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0xdd8bd0, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___tt__0xdf7370)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdf7170 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xdf7120 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xdf7170); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xdf70d0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xdf7120, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_4_0xdf6fe0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "isfalse_0_4"); /* const char *name */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xdf6f90=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdf70d0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xdf6f40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_5_0xdf6ef0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_5"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_0_0xdf85a0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0xdf6f90), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xdf6f40); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_5_0xdf6ef0, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_0_0xdf85a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdf6e50 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_6_0xdf6e00 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_6"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_1_0xdd8f70 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0xdf6f90), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0xdf6e50); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_6_0xdf6e00, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_1_0xdd8f70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xdf8820=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdf70d0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0xdf6d10 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xdf8820, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xdc06e0);
  gcc_jit_rvalue *rvalue__int_0_0xdf6c90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_7_0xdf6c00 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_7"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___value__b_____int_0_0xdf7250 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___value__b_0xdf6d10), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xdf6c90); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_7_0xdf6c00, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___value__b_____int_0_0xdf7250); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_6____comparison_0_7_0xdd9980 =
    gcc_jit_context_new_binary_op (ctxt_0xdd4060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_6_0xdf6e00), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_7_0xdf6c00)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0xdd7b80 =
    gcc_jit_context_new_binary_op (ctxt_0xdd4060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_5_0xdf6ef0), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_6____comparison_0_7_0xdd9980); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0xdf8870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_4_0xdf6fe0, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0xdd7b80); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_4__0xdda2d0 =
    gcc_jit_context_new_unary_op (ctxt_0xdd4060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_4_0xdf6fe0)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_2_8_0xdda280 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_TEST_do_jmp_2_8");
  gcc_jit_block *block_OP_TEST_do_skip_2_9_0xdda1e0 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_TEST_do_skip_2_9");
  gcc_jit_block_end_with_conditional (block_entry_0xdf8870, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_4__0xdda2d0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_2_8_0xdda280, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_2_9_0xdda1e0); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_2_8_0xdda280, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0xdf8780); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_2_9_0xdda1e0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0xdf8780); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdda0f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xdda070 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xdda0f0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xdd9fb0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xdda070, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xdd9eb0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xdd9e60=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdd9fb0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0xdd9e10 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xdd9e60, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xdc06e0);
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__b_0xdd9e10, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0xdd9eb0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdd9d70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xdd9d20=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdd9fb0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0xdd9d20, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xdd9d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdd9c30 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xdd9be0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xdd9c30); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xdd9b90 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xdd9be0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_10_0xdd9b00 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "isfalse_0_10"); /* const char *name */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xdd9ab0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdd9b90, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xdd9a20 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_11_0xdd73a0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_11"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_0_0xdd8b20 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0xdd9ab0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xdd9a20); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_11_0xdd73a0, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_0_0xdd8b20); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdd97c0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_12_0xdd9770 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_12"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_1_0xdd73f0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0xdd9ab0), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0xdd97c0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_12_0xdd9770, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_1_0xdd73f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xdd9720=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdd9b90, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0xdd96d0 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xdd9720, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xdc06e0);
  gcc_jit_rvalue *rvalue__int_0_0xdd9680 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_13_0xdd9630 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_13"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___value__b_____int_0_0xe03db0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___value__b_0xdd96d0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xdd9680); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_13_0xdd9630, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___value__b_____int_0_0xe03db0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_12____comparison_0_13_0xe030d0 =
    gcc_jit_context_new_binary_op (ctxt_0xdd4060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_12_0xdd9770), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_13_0xdd9630)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0xe093a0 =
    gcc_jit_context_new_binary_op (ctxt_0xdd4060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_11_0xdd73a0), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_12____comparison_0_13_0xe030d0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_10_0xdd9b00, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0xe093a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_10__0xdd9500 =
    gcc_jit_context_new_unary_op (ctxt_0xdd4060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_10_0xdd9b00)); /* gcc_jit_rvalue *a */
  gcc_jit_rvalue *rvalue_____isfalse_0_10___0xdd94b0 =
    gcc_jit_context_new_unary_op (ctxt_0xdd4060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                  rvalue___isfalse_0_10__0xdd9500); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_5_14_0xdeab20 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_TEST_do_jmp_5_14");
  gcc_jit_block *block_OP_TEST_do_skip_5_15_0xef5d60 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_TEST_do_skip_5_15");
  gcc_jit_block_end_with_conditional (block_jmp_5_1_0xdf8780, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue_____isfalse_0_10___0xdd94b0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_5_14_0xdeab20, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_5_15_0xef5d60); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_5_14_0xdeab20, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0xdf86c0); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0xef5d60, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_0_0xdd8b80 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_base__int_0__0xe09350 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xdd8b80); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_0__0xdd41b0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_0__0xe09350, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_1_0xec0390 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_0___value__0xe946c0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_0__0xdd41b0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_0___value__b_0xdeb3e0 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_0___value__0xe946c0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xdc06e0);
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0xef5d60, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_0___value__b_0xdeb3e0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xec0390); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe46870 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_0___tt__0xdec8d0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_0__0xdd41b0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0xef5d60, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_0___tt__0xdec8d0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xe46870); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_5_15_0xef5d60, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0xdf86c0); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe04170 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xe0eb50 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xe04170); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xdffca0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xe0eb50, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xe051d0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0xe05510 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0xdf81a0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xe051d0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0xe03b40 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0xe05510, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xe03c40=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdffca0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__i_0xe03e30 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xe03c40, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xdc0840);
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__0xe03eb0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xe03b40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__i_0xe062c0 = 
    gcc_jit_lvalue_access_field (lvalue__cl__p__k__int_0___value__0xe03eb0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xdc0840);
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__i_0xe03e30, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___value__i_0xe062c0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xdd3fd0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xdffca0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___tt__0xe02840=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0xe03b40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0xdd3fd0, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___tt__0xe02840)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe02b50 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xe02bd0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xe02b50); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xe02cf0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xe02bd0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_16_0xe02e00 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "isfalse_0_16"); /* const char *name */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xe02e80=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xe02cf0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xe03050 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_17_0xe02fc0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_17"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_0_0xe031f0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0xe02e80), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xe03050); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_17_0xe02fc0, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_0_0xe031f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe03420 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_18_0xe034a0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_18"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_1_0xe037a0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0xe02e80), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0xe03420); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_18_0xe034a0, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_1_0xe037a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xe03680=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xe02cf0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0xe03700 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xe03680, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xdc06e0);
  gcc_jit_rvalue *rvalue__int_0_0xe03a40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_19_0xe03920 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_19"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___value__b_____int_0_0xdfffe0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___value__b_0xe03700), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xe03a40); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_19_0xe03920, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___value__b_____int_0_0xdfffe0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_18____comparison_0_19_0xdffe40 =
    gcc_jit_context_new_binary_op (ctxt_0xdd4060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_18_0xe034a0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_19_0xe03920)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0xdffec0 =
    gcc_jit_context_new_binary_op (ctxt_0xdd4060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_17_0xe02fc0), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_18____comparison_0_19_0xdffe40); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_16_0xe02e00, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0xdffec0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_16__0xe00060 =
    gcc_jit_context_new_unary_op (ctxt_0xdd4060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xdbf580, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_16_0xe02e00)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_9_20_0xe00160 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_TEST_do_jmp_9_20");
  gcc_jit_block *block_OP_TEST_do_skip_9_21_0xdda230 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_TEST_do_skip_9_21");
  gcc_jit_block_end_with_conditional (block_jmp_9_2_0xdf86c0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_16__0xe00060, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_9_20_0xe00160, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_9_21_0xdda230); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_9_20_0xe00160, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0xdf8600); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_9_21_0xdda230, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0xdf8600); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe00540 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xe005c0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xe00540); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xe050d0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xe005c0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xe05150 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___value__0xe05490=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xe050d0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xdc0be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0xe03ac0 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0xe05490, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xdc06e0);
  gcc_jit_block_add_assignment (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__b_0xe03ac0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0xe05150); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe04070 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0xe03f30=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0xe050d0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xdc0c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0xe03f30, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0xe04070); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe6fbc0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_rvalue *rvalue__int_13_0xdd5d50 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         13); /* int value */
  gcc_jit_rvalue *rvalue__OP_RETURN_pc__d__return__d_args____0xe03270 =
    gcc_jit_context_new_string_literal (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                        "OP_RETURN(pc=%d) return %d args\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0xe02d70[3] = {
    rvalue__OP_RETURN_pc__d__return__d_args____0xe03270,
    rvalue__int_13_0xdd5d50,
    rvalue__int_1_0xe6fbc0,
  };
  gcc_jit_rvalue *call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0xe02d70 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0xdd1370, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0xe02d70); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0xe02d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xdda9e0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0xe1c970 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0xdda9e0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0xe97050 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0xe1c970, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_2_0xe06710 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         2); /* int value */
  gcc_jit_lvalue *lvalue_base__int_2__0xdd3750 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_2_0xe06710); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_2__0xe03380 =
    gcc_jit_lvalue_get_address (lvalue_base__int_2__0xdd3750, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0xe02920=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0xdf8a60), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0xdc8ad0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0xe02920, /* gcc_jit_lvalue *lvalue */
                                address_of__base__int_2__0xe03380); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0xe02f20=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0xdf81f0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0xdc36f0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xe03150 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_22_0xe039a0 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_22"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0xe03600 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0xe02f20), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xe03150); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_22_0xe039a0, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0xe03600); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_12_23_0xdfff40 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_RETURN_if_sizep_gt_0_12_23");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_12_24_0xe08220 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_RETURN_else_sizep_gt_0_12_24");
  gcc_jit_block_end_with_conditional (block_jmp_12_3_0xdf8600, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_22_0xe039a0), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_12_23_0xdfff40, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_12_24_0xe08220); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__base__0xe08990[2] = {
    gcc_jit_param_as_rvalue (param_L_0xdf8a60),
    gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0),
  };
  gcc_jit_rvalue *call_luaF_close__L__base__0xe08990 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0xdcb6b0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__base__0xe08990); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_12_23_0xdfff40, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__base__0xe08990); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_12_23_0xdfff40, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_12_24_0xe08220); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L___base__int_1___0xe05b70[2] = {
    gcc_jit_param_as_rvalue (param_L_0xdf8a60),
    address_of__base__int_1__0xe97050,
  };
  gcc_jit_rvalue *call_luaD_poscall__L___base__int_1___0xe05b70 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0xdca8f0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L___base__int_1___0xe05b70); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_12_24_0xe08220, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L___base__int_1___0xe05b70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe060a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_12_24_0xe08220, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0xe060a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_13_25_0xe07a90 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_RETURN_13_25");
  gcc_jit_rvalue *rvalue__int_0_0xe073f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_14_0xe0efb0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         14); /* int value */
  gcc_jit_rvalue *rvalue__OP_RETURN_pc__d__return__d_args____0xdebb60 =
    gcc_jit_context_new_string_literal (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                        "OP_RETURN(pc=%d) return %d args\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0xdebbb0[3] = {
    rvalue__OP_RETURN_pc__d__return__d_args____0xdebb60,
    rvalue__int_14_0xe0efb0,
    rvalue__int_0_0xe073f0,
  };
  gcc_jit_rvalue *call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0xdebbb0 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0xdd1370, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0xdebbb0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_13_25_0xe07a90, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0xdebbb0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_OP_RETURN_13_25_0xe07a90, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0xdf87d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0xdf8290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_0_0xebe000 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_base__int_0__0xef5bb0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xebe000); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_0__0xef5c00 =
    gcc_jit_lvalue_get_address (lvalue_base__int_0__0xef5bb0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0xe43f50 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_base__int_0__0xe43fa0 = 
    gcc_jit_context_new_array_access (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0xe43f50); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_0__0xddaac0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_0__0xe43fa0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0xddab10=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0xdf8a60), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0xdc8ad0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_RETURN_13_25_0xe07a90, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0xddab10, /* gcc_jit_lvalue *lvalue */
                                address_of__base__int_0__0xddaac0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0xdebd40=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0xdf81f0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0xdc36f0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0xe0afb0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_26_0xe94f90 =
    gcc_jit_function_new_local (func_ravif2_0xe04e80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xdbf580, /* gcc_jit_type *type */
                                "comparison_0_26"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0xe94fe0 =
    gcc_jit_context_new_comparison (ctxt_0xdd4060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0xdebd40), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0xe0afb0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_OP_RETURN_13_25_0xe07a90, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_26_0xe94f90, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0xe94fe0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_13_27_0xe96130 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_RETURN_if_sizep_gt_0_13_27");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_13_28_0xdf8af0 =
    gcc_jit_function_new_block (func_ravif2_0xe04e80, "OP_RETURN_else_sizep_gt_0_13_28");
  gcc_jit_block_end_with_conditional (block_OP_RETURN_13_25_0xe07a90, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_26_0xe94f90), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_13_27_0xe96130, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_13_28_0xdf8af0); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__base__0xe055e0[2] = {
    gcc_jit_param_as_rvalue (param_L_0xdf8a60),
    gcc_jit_lvalue_as_rvalue (local_base_0xdf87d0),
  };
  gcc_jit_rvalue *call_luaF_close__L__base__0xe055e0 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0xdcb6b0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__base__0xe055e0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_13_27_0xe96130, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__base__0xe055e0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_13_27_0xe96130, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_13_28_0xdf8af0); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L___base__int_0___0xe93930[2] = {
    gcc_jit_param_as_rvalue (param_L_0xdf8a60),
    address_of__base__int_0__0xef5c00,
  };
  gcc_jit_rvalue *call_luaD_poscall__L___base__int_0___0xe93930 =
    gcc_jit_context_new_call (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0xdca8f0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L___base__int_0___0xe93930); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_13_28_0xdf8af0, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L___base__int_0___0xe93930); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0xe939c0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0xdd4060, /* gcc_jit_context *ctxt */
                                         type_int_0xdbf8d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_13_28_0xdf8af0, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0xe939c0); /* gcc_jit_rvalue *rvalue */
}

[-- Attachment #7: bug_rdump_ok.txt --]
[-- Type: text/plain, Size: 222177 bytes --]

/* This code was autogenerated by gcc_jit_context_dump_reproducer_to_file.

   libgccjit (GCC) version 5.1.0 (x86_64-unknown-linux-gnu)
  	compiled by GNU C version 5.1.0, GMP version 5.1.3, MPFR version 3.1.2-p3, MPC version 1.0.1
*/
#include <libgccjit.h>

static void
set_options (gcc_jit_context *ctxt_0xff6f30,
             gcc_jit_context *ctxt_0x100c060);

static void
create_code (gcc_jit_context *ctxt_0xff6f30,
             gcc_jit_context *ctxt_0x100c060);

int
main (int argc, const char **argv)
{
  gcc_jit_context *ctxt_0xff6f30;
  gcc_jit_context *ctxt_0x100c060;
  gcc_jit_result *result;

  ctxt_0xff6f30 = gcc_jit_context_acquire ();
  ctxt_0x100c060 = gcc_jit_context_new_child_context (ctxt_0xff6f30);
  set_options (ctxt_0xff6f30,
               ctxt_0x100c060);
  create_code (ctxt_0xff6f30,
               ctxt_0x100c060);
  result = gcc_jit_context_compile (ctxt_0x100c060);
  gcc_jit_context_release (ctxt_0x100c060);
  gcc_jit_context_release (ctxt_0xff6f30);
  gcc_jit_result_release (result);
  return 0;
}

static void
set_options (gcc_jit_context *ctxt_0xff6f30,
             gcc_jit_context *ctxt_0x100c060)
{
  /* Set options for ctxt_0xff6f30.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0xff6f30,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  "NULL");
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0xff6f30,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0xff6f30,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);

  /* Set options for ctxt_0x100c060.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0x100c060,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  "NULL");
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0x100c060,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x100c060,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
}

static void
create_code (gcc_jit_context *ctxt_0xff6f30,
             gcc_jit_context *ctxt_0x100c060)
{
  /* Replay of API calls for ctxt_0xff6f30.  */
  gcc_jit_type *type_bool_0xff7580 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_BOOL);
  gcc_jit_type *type_double_0xff75f0 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_DOUBLE);
  gcc_jit_type *type_double___0xff7630 =
    gcc_jit_type_get_pointer (type_double_0xff75f0);
  gcc_jit_type *type_double_____0xff7670 =
    gcc_jit_type_get_pointer (type_double___0xff7630);
  gcc_jit_type *type_long_long_0xff76b0 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_LONG_LONG);
  gcc_jit_type *type_long_long___0xff7740 =
    gcc_jit_type_get_pointer (type_long_long_0xff76b0);
  gcc_jit_type *type_long_long_____0xff7780 =
    gcc_jit_type_get_pointer (type_long_long___0xff7740);
  gcc_jit_type *type_unsigned_long_long_0xff77c0 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_UNSIGNED_LONG_LONG);
  gcc_jit_type *type_size_t_0xff7800 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_SIZE_T);
  gcc_jit_type *type_int_0xff78d0 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_INT);
  gcc_jit_type *type_int___0xff7910 =
    gcc_jit_type_get_pointer (type_int_0xff78d0);
  gcc_jit_type *type_short_0xff7950 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_SHORT);
  gcc_jit_type *type_unsigned_short_0xff7990 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_UNSIGNED_SHORT);
  gcc_jit_type *type_unsigned_int_0xff79d0 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_UNSIGNED_INT);
  gcc_jit_type *type_unsigned_char_0xff7a10 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_UNSIGNED_CHAR);
  gcc_jit_type *type_char_0xff7a50 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_CHAR);
  gcc_jit_type *type_char___0xff7a90 =
    gcc_jit_type_get_pointer (type_char_0xff7a50);
  gcc_jit_type *type_const_char___0xff7840 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_CONST_CHAR_PTR);
  gcc_jit_type *type_void_0xff7880 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_VOID);
  gcc_jit_type *type_void___0xff7ba0 = gcc_jit_context_get_type (ctxt_0xff6f30, GCC_JIT_TYPE_VOID_PTR);
  gcc_jit_type *type_unsigned_int___0xff7be0 =
    gcc_jit_type_get_pointer (type_unsigned_int_0xff79d0);
  gcc_jit_struct *struct_struct_ravi_lua_State_0xff76f0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_State___0xff7c80 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_State_0xff76f0));
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____0xff7cc0[1] = {
    type_struct_ravi_lua_State___0xff7c80,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____0xff7ad0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0xff78d0, /* gcc_jit_type *return_type */
                                           1, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____0xff7cc0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____int__long_long__0xff7b10[3] = {
    type_struct_ravi_lua_State___0xff7c80,
    type_int_0xff78d0,
    type_long_long_0xff76b0,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____int__long_long__0xff7e70 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0xff78d0, /* gcc_jit_type *return_type */
                                           3, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____int__long_long__0xff7b10, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_void__void____void____size_t__size_t__0xff7eb0[4] = {
    type_void___0xff7ba0,
    type_void___0xff7ba0,
    type_size_t_0xff7800,
    type_size_t_0xff7800,
  };
  gcc_jit_type *ptr_to_void______void____void____size_t__size_t__0xff7f30 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void_0xff7880, /* gcc_jit_type *return_type */
                                           4, /* int num_params */
                                           params_for_function_type_void__void____void____size_t__size_t__0xff7eb0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_lua_Debug_0xff7fd0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_Debug"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_Debug___0xff8020 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_Debug_0xff7fd0));
  gcc_jit_type *params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0xff8060[2] = {
    type_struct_ravi_lua_State___0xff7c80,
    type_struct_ravi_lua_Debug___0xff8020,
  };
  gcc_jit_type *ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0xff80e0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void___0xff7ba0, /* gcc_jit_type *return_type */
                                           2, /* int num_params */
                                           params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0xff8060, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_GCObject_0xff8180 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_GCObject"); /* const char *name */
  gcc_jit_type *type_struct_ravi_GCObject___0xff7d40 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_GCObject_0xff8180));
  gcc_jit_field *field_next_0xff7de0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xff83b0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xff8460 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *fields_fields_0xff84b0[3] = {
    field_next_0xff7de0,
    field_tt_0xff83b0,
    field_marked_0xff8460,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_GCObject_0xff8180, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xff84b0); /* gcc_jit_field **fields */
  gcc_jit_field *field_gc_0xff8580 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "gc"); /* const char *name */
  gcc_jit_field *field_p_0xff8630 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xff7ba0, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_b_0xff86e0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "b"); /* const char *name */
  gcc_jit_field *field_f_0xff8790 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xff7ad0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_field *field_i_0xff8840 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /* gcc_jit_type *type, */
                               "i"); /* const char *name */
  gcc_jit_field *field_n_0xff8230 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0xff75f0, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Value_0xff82e0[6] = {
    field_gc_0xff8580,
    field_p_0xff8630,
    field_b_0xff86e0,
    field_f_0xff8790,
    field_i_0xff8840,
    field_n_0xff8230,
  };
  gcc_jit_type *union_union_ravi_Value_0xff82e0 =
    gcc_jit_context_new_union_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Value", /* const char *name */
                                    6, /* int num_fields */
                                    fields_for_union_union_ravi_Value_0xff82e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_value__0xff8be0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xff82e0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0xff8c90 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TValue_0xff8d40 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TValue"); /* const char *name */
  gcc_jit_field *fields_fields_0xff8de0[2] = {
    field_value__0xff8be0,
    field_tt__0xff8c90,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TValue_0xff8d40, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xff8de0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_TValue___0xff8e20 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xff8d40));
  gcc_jit_type *type_const_struct_ravi_TValue_0xff8e60 =
    gcc_jit_type_get_const (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xff8d40));
  gcc_jit_type *type_const_struct_ravi_TValue___0xff8ea0 =
    gcc_jit_type_get_pointer (type_const_struct_ravi_TValue_0xff8e60);
  gcc_jit_struct *struct_struct_ravi_TString_0xff8f40 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TString"); /* const char *name */
  gcc_jit_type *type_struct_ravi_TString___0xff8f90 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TString_0xff8f40));
  gcc_jit_type *type_struct_ravi_TString_____0xff8fd0 =
    gcc_jit_type_get_pointer (type_struct_ravi_TString___0xff8f90);
  gcc_jit_field *field_next_0xff9070 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xff9120 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xff91d0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_extra_0xff9280 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_hash_0xff88f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xff79d0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_len_0xff89a0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xff7800, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_hash_0xff8a50 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xff8f90, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *fields_fields_0xff8aa0[7] = {
    field_next_0xff9070,
    field_tt_0xff9120,
    field_marked_0xff91d0,
    field_extra_0xff9280,
    field_hash_0xff88f0,
    field_len_0xff89a0,
    field_hash_0xff8a50,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TString_0xff8f40, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xff8aa0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Table_0xff9710 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Table"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Table___0xff9760 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Table_0xff9710));
  gcc_jit_type *type_struct_ravi_Table_____0xff97a0 =
    gcc_jit_type_get_pointer (type_struct_ravi_Table___0xff9760);
  gcc_jit_field *field_next_0xff9840 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xff98f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xff99a0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_ttuv__0xff9a50 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "ttuv_"); /* const char *name */
  gcc_jit_field *field_metatable_0xff9b00 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xff9760, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_len_0xff9bb0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xff7800, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_user__0xff9c60 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xff82e0, /* gcc_jit_type *type, */
                               "user_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Udata_0xff9d10 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Udata"); /* const char *name */
  gcc_jit_field *fields_fields_0xff9d60[7] = {
    field_next_0xff9840,
    field_tt_0xff98f0,
    field_marked_0xff99a0,
    field_ttuv__0xff9a50,
    field_metatable_0xff9b00,
    field_len_0xff9bb0,
    field_user__0xff9c60,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Udata_0xff9d10, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xff9d60); /* gcc_jit_field **fields */
  gcc_jit_field *field_name_0xff9e50 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xff8f90, /* gcc_jit_type *type, */
                               "name"); /* const char *name */
  gcc_jit_field *field_type_0xff9f00 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "type"); /* const char *name */
  gcc_jit_field *field_instack_0xff9fb0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "instack"); /* const char *name */
  gcc_jit_field *field_idx_0xffa060 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "idx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Upvaldesc_0xffa110 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Upvaldesc"); /* const char *name */
  gcc_jit_field *fields_fields_0xffa1f0[4] = {
    field_name_0xff9e50,
    field_type_0xff9f00,
    field_instack_0xff9fb0,
    field_idx_0xffa060,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Upvaldesc_0xffa110, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0xffa1f0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Upvaldesc___0xffa260 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Upvaldesc_0xffa110));
  gcc_jit_field *field_varname_0xff92f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xff8f90, /* gcc_jit_type *type, */
                               "varname"); /* const char *name */
  gcc_jit_field *field_startpc_0xff93a0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "startpc"); /* const char *name */
  gcc_jit_field *field_endpc_0xff9450 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "endpc"); /* const char *name */
  gcc_jit_field *field_ravi_type_0xff9500 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "ravi_type"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_LocVar_0xff95b0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LocVar"); /* const char *name */
  gcc_jit_field *fields_fields_0xff9600[4] = {
    field_varname_0xff92f0,
    field_startpc_0xff93a0,
    field_endpc_0xff9450,
    field_ravi_type_0xff9500,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LocVar_0xff95b0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0xff9600); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_LocVar___0xff9670 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LocVar_0xff95b0));
  gcc_jit_struct *struct_struct_ravi_LClosure_0xffa8c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LClosure"); /* const char *name */
  gcc_jit_type *type_struct_ravi_LClosure___0xffa910 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0xffa8c0));
  gcc_jit_type *type_struct_ravi_LClosure_____0xffa950 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure___0xffa910);
  gcc_jit_type *type_struct_ravi_LClosure_______0xffa990 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure_____0xffa950);
  gcc_jit_field *field_jit_status_0xffaa30 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "jit_status"); /* const char *name */
  gcc_jit_field *field_jit_flags_0xffaae0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "jit_flags"); /* const char *name */
  gcc_jit_field *field_execution_count_0xffab90 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xff7990, /* gcc_jit_type *type, */
                               "execution_count"); /* const char *name */
  gcc_jit_field *field_jit_data_0xffac40 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xff7ba0, /* gcc_jit_type *type, */
                               "jit_data"); /* const char *name */
  gcc_jit_field *field_jit_function_0xffacf0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xff7ad0, /* gcc_jit_type *type, */
                               "jit_function"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviJITProto_0xffada0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviJITProto"); /* const char *name */
  gcc_jit_field *fields_fields_0xffadf0[5] = {
    field_jit_status_0xffaa30,
    field_jit_flags_0xffaae0,
    field_execution_count_0xffab90,
    field_jit_data_0xffac40,
    field_jit_function_0xffacf0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviJITProto_0xffada0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0xffadf0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Proto_0xffaee0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Proto"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Proto___0xffaf30 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Proto_0xffaee0));
  gcc_jit_type *type_struct_ravi_Proto_____0xffaf70 =
    gcc_jit_type_get_pointer (type_struct_ravi_Proto___0xffaf30);
  gcc_jit_field *field_next_0xffb010 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xffb0c0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xffb170 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_numparams_0xffb220 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "numparams"); /* const char *name */
  gcc_jit_field *field_is_vararg_0xffb2d0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "is_vararg"); /* const char *name */
  gcc_jit_field *field_maxstacksize_0xffb380 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "maxstacksize"); /* const char *name */
  gcc_jit_field *field_sizeupvalues_0xffb430 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "sizeupvalues"); /* const char *name */
  gcc_jit_field *field_sizek_0xffb4e0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "sizek"); /* const char *name */
  gcc_jit_field *field_sizecode_0xffb590 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "sizecode"); /* const char *name */
  gcc_jit_field *field_sizelineinfo_0xffb640 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "sizelineinfo"); /* const char *name */
  gcc_jit_field *field_sizep_0xffb6f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "sizep"); /* const char *name */
  gcc_jit_field *field_sizelocvars_0xffb7a0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "sizelocvars"); /* const char *name */
  gcc_jit_field *field_linedefined_0xffb850 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "linedefined"); /* const char *name */
  gcc_jit_field *field_lastlinedefined_0xffa300 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "lastlinedefined"); /* const char *name */
  gcc_jit_field *field_k_0xffa3b0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_code_0xffa460 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xff7be0, /* gcc_jit_type *type, */
                               "code"); /* const char *name */
  gcc_jit_field *field_p_0xffa510 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto_____0xffaf70, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_lineinfo_0xffa5c0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0xff7910, /* gcc_jit_type *type, */
                               "lineinfo"); /* const char *name */
  gcc_jit_field *field_locvars_0xffa670 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LocVar___0xff9670, /* gcc_jit_type *type, */
                               "locvars"); /* const char *name */
  gcc_jit_field *field_upvalues_0xffa720 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Upvaldesc___0xffa260, /* gcc_jit_type *type, */
                               "upvalues"); /* const char *name */
  gcc_jit_field *field_cache_0xffa7d0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xffa910, /* gcc_jit_type *type, */
                               "cache"); /* const char *name */
  gcc_jit_field *field_source_0xffc150 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0xff8f90, /* gcc_jit_type *type, */
                               "source"); /* const char *name */
  gcc_jit_field *field_gclist_0xffc200 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_jit_0xffc2b0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviJITProto_0xffada0), /* gcc_jit_type *type, */
                               "ravi_jit"); /* const char *name */
  gcc_jit_field *fields_fields_0xffc300[24] = {
    field_next_0xffb010,
    field_tt_0xffb0c0,
    field_marked_0xffb170,
    field_numparams_0xffb220,
    field_is_vararg_0xffb2d0,
    field_maxstacksize_0xffb380,
    field_sizeupvalues_0xffb430,
    field_sizek_0xffb4e0,
    field_sizecode_0xffb590,
    field_sizelineinfo_0xffb640,
    field_sizep_0xffb6f0,
    field_sizelocvars_0xffb7a0,
    field_linedefined_0xffb850,
    field_lastlinedefined_0xffa300,
    field_k_0xffa3b0,
    field_code_0xffa460,
    field_p_0xffa510,
    field_lineinfo_0xffa5c0,
    field_locvars_0xffa670,
    field_upvalues_0xffa720,
    field_cache_0xffa7d0,
    field_source_0xffc150,
    field_gclist_0xffc200,
    field_ravi_jit_0xffc2b0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Proto_0xffaee0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0xffc300); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_UpVal_0xffc470 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal"); /* const char *name */
  gcc_jit_type *type_struct_ravi_UpVal___0xffc4c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_UpVal_0xffc470));
  gcc_jit_field *field_next_0xffc560 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xffc610 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xffc6c0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0xffc770 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0xffc820 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_f_0xffc8d0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0xff7ad0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_TValue_1__0xffc920 =
    gcc_jit_context_new_array_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xff8d40), /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvalue_0xffc9d0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_TValue_1__0xffc920, /* gcc_jit_type *type, */
                               "upvalue"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CClosure_0xffca80 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CClosure"); /* const char *name */
  gcc_jit_field *fields_fields_0xffcad0[7] = {
    field_next_0xffc560,
    field_tt_0xffc610,
    field_marked_0xffc6c0,
    field_nupvalues_0xffc770,
    field_gclist_0xffc820,
    field_f_0xffc8d0,
    field_upvalue_0xffc9d0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CClosure_0xffca80, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xffcad0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_CClosure___0xffcb60 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0xffca80));
  gcc_jit_field *field_next_0xffcc00 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xffccb0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xffcd60 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0xffce10 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0xffcec0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_p_0xffcf70 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto___0xffaf30, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_UpVal___1__0xffcfc0 =
    gcc_jit_context_new_array_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    type_struct_ravi_UpVal___0xffc4c0, /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvals_0xffd070 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_UpVal___1__0xffcfc0, /* gcc_jit_type *type, */
                               "upvals"); /* const char *name */
  gcc_jit_field *fields_fields_0xffd0c0[7] = {
    field_next_0xffcc00,
    field_tt_0xffccb0,
    field_marked_0xffcd60,
    field_nupvalues_0xffce10,
    field_gclist_0xffcec0,
    field_p_0xffcf70,
    field_upvals_0xffd070,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LClosure_0xffa8c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0xffd0c0); /* gcc_jit_field **fields */
  gcc_jit_field *field_c_0xffd1b0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0xffca80), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *field_l_0xffd260 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0xffa8c0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Closure_0xffd310[2] = {
    field_c_0xffd1b0,
    field_l_0xffd260,
  };
  gcc_jit_type *union_union_ravi_Closure_0xffd310 =
    gcc_jit_context_new_union_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Closure", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_Closure_0xffd310); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_Closure___0xffd3e0 =
    gcc_jit_type_get_pointer (union_union_ravi_Closure_0xffd310);
  gcc_jit_field *field_value__0xffd480 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0xff82e0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0xffd530 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_field *field_next_0xffd5e0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TKey_nk_0xffd690 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TKey_nk"); /* const char *name */
  gcc_jit_field *fields_fields_0xffa160[3] = {
    field_value__0xffd480,
    field_tt__0xffd530,
    field_next_0xffd5e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TKey_nk_0xffd690, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xffa160); /* gcc_jit_field **fields */
  gcc_jit_field *field_nk_0xffd7f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TKey_nk_0xffd690), /* gcc_jit_type *type, */
                               "nk"); /* const char *name */
  gcc_jit_field *field_tvk_0xffd8a0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xff8d40), /* gcc_jit_type *type, */
                               "tvk"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_TKey_0xffd950[2] = {
    field_nk_0xffd7f0,
    field_tvk_0xffd8a0,
  };
  gcc_jit_type *union_union_ravi_TKey_0xffd950 =
    gcc_jit_context_new_union_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_TKey", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_TKey_0xffd950); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_TKey___0xffda20 =
    gcc_jit_type_get_pointer (union_union_ravi_TKey_0xffd950);
  gcc_jit_field *field_i_val_0xffdac0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xff8d40), /* gcc_jit_type *type, */
                               "i_val"); /* const char *name */
  gcc_jit_field *field_i_key_0xffdb70 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_TKey_0xffd950, /* gcc_jit_type *type, */
                               "i_key"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Node_0xffb900 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Node"); /* const char *name */
  gcc_jit_field *fields_fields_0xffb950[2] = {
    field_i_val_0xffdac0,
    field_i_key_0xffdb70,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Node_0xffb900, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xffb950); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Node___0xffb9c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Node_0xffb900));
  gcc_jit_field *field_data_0xffba60 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0xff7ba0, /* gcc_jit_type *type, */
                               "data"); /* const char *name */
  gcc_jit_field *field_len_0xffbb10 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xff79d0, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_size_0xffbbc0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xff79d0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_field *field_array_type_0xffbc70 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "array_type"); /* const char *name */
  gcc_jit_field *field_array_modifier_0xffbd20 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "array_modifier"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviArray_0xffbdd0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviArray"); /* const char *name */
  gcc_jit_field *fields_fields_0xffbe20[5] = {
    field_data_0xffba60,
    field_len_0xffbb10,
    field_size_0xffbbc0,
    field_array_type_0xffbc70,
    field_array_modifier_0xffbd20,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviArray_0xffbdd0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0xffbe20); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0xffbf10 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0xffbfc0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0xffc070 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_flags_0xffe880 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "flags"); /* const char *name */
  gcc_jit_field *field_lsizenode_0xffe930 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "lsizenode"); /* const char *name */
  gcc_jit_field *field_sizearray_0xffe9e0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xff79d0, /* gcc_jit_type *type, */
                               "sizearray"); /* const char *name */
  gcc_jit_field *field_array_0xffea90 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "array"); /* const char *name */
  gcc_jit_field *field_node_0xffeb40 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0xffb9c0, /* gcc_jit_type *type, */
                               "node"); /* const char *name */
  gcc_jit_field *field_lastfree_0xffebf0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0xffb9c0, /* gcc_jit_type *type, */
                               "lastfree"); /* const char *name */
  gcc_jit_field *field_metatable_0xffeca0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xff9760, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_gclist_0xffed50 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_array_0xffee00 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviArray_0xffbdd0), /* gcc_jit_type *type, */
                               "ravi_array"); /* const char *name */
  gcc_jit_field *fields_fields_0xffee50[12] = {
    field_next_0xffbf10,
    field_tt_0xffbfc0,
    field_marked_0xffc070,
    field_flags_0xffe880,
    field_lsizenode_0xffe930,
    field_sizearray_0xffe9e0,
    field_array_0xffea90,
    field_node_0xffeb40,
    field_lastfree_0xffebf0,
    field_metatable_0xffeca0,
    field_gclist_0xffed50,
    field_ravi_array_0xffee00,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Table_0xff9710, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             12, /* int num_fields */
                             fields_fields_0xffee50); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_lua_longjmp_0xffef80 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_longjmp"); /* const char *name */
  gcc_jit_field *field_buffer_0xfff030 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_char___0xff7a90, /* gcc_jit_type *type, */
                               "buffer"); /* const char *name */
  gcc_jit_field *field_n_0xfff0e0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xff7800, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *field_buffsize_0xfff190 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xff7800, /* gcc_jit_type *type, */
                               "buffsize"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Mbuffer_0xfff240 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Mbuffer"); /* const char *name */
  gcc_jit_field *fields_fields_0xfff290[3] = {
    field_buffer_0xfff030,
    field_n_0xfff0e0,
    field_buffsize_0xfff190,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Mbuffer_0xfff240, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xfff290); /* gcc_jit_field **fields */
  gcc_jit_field *field_hash_0xfff360 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString_____0xff8fd0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_nuse_0xfff410 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "nuse"); /* const char *name */
  gcc_jit_field *field_size_0xfff4c0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_stringtable_0xfff570 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_stringtable"); /* const char *name */
  gcc_jit_field *fields_fields_0xfff5c0[3] = {
    field_hash_0xfff360,
    field_nuse_0xfff410,
    field_size_0xfff4c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_stringtable_0xfff570, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xfff5c0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_CallInfo_0xfff690 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo"); /* const char *name */
  gcc_jit_type *type_struct_ravi_CallInfo___0xfff6e0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0xfff690));
  gcc_jit_field *field_base_0xfff780 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "base"); /* const char *name */
  gcc_jit_field *field_savedpc_0xfff830 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xff7be0, /* gcc_jit_type *type, */
                               "savedpc"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_lua_0xfff8e0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_lua"); /* const char *name */
  gcc_jit_field *fields_fields_0xffd6e0[2] = {
    field_base_0xfff780,
    field_savedpc_0xfff830,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_lua_0xfff8e0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xffd6e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_k_0xfffa60 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____int__long_long__0xff7e70, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_old_errfunc_0xfffb10 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /* gcc_jit_type *type, */
                               "old_errfunc"); /* const char *name */
  gcc_jit_field *field_ctx_0xfffbc0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /* gcc_jit_type *type, */
                               "ctx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_C_0xfffc70 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_C"); /* const char *name */
  gcc_jit_field *fields_fields_0xfffcc0[3] = {
    field_k_0xfffa60,
    field_old_errfunc_0xfffb10,
    field_ctx_0xfffbc0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_C_0xfffc70, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0xfffcc0); /* gcc_jit_field **fields */
  gcc_jit_field *field_l_0xfffd90 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_lua_0xfff8e0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *field_c_0xfffe40 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_C_0xfffc70), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_CallInfo_u_0xfffef0[2] = {
    field_l_0xfffd90,
    field_c_0xfffe40,
  };
  gcc_jit_type *union_union_ravi_CallInfo_u_0xfffef0 =
    gcc_jit_context_new_union_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_CallInfo_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_CallInfo_u_0xfffef0); /* gcc_jit_field **fields */
  gcc_jit_field *field_func_0x1000020 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "func"); /* const char *name */
  gcc_jit_field *field_top_0x10000d0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_previous_0x1000180 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /* gcc_jit_type *type, */
                               "previous"); /* const char *name */
  gcc_jit_field *field_next_0x1000230 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_u_0x10002e0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_CallInfo_u_0xfffef0, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *field_extra_0x1000390 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_nresults_0x1000440 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_short_0xff7950, /* gcc_jit_type *type, */
                               "nresults"); /* const char *name */
  gcc_jit_field *field_callstatus_0x10004f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "callstatus"); /* const char *name */
  gcc_jit_field *fields_fields_0x1000540[8] = {
    field_func_0x1000020,
    field_top_0x10000d0,
    field_previous_0x1000180,
    field_next_0x1000230,
    field_u_0x10002e0,
    field_extra_0x1000390,
    field_nresults_0x1000440,
    field_callstatus_0x10004f0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_0xfff690, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             8, /* int num_fields */
                             fields_fields_0x1000540); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_State_0x1000630 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_State___0x1000680 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_State_0x1000630));
  gcc_jit_struct *struct_struct_ravi_global_State_0x1000720 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_global_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_global_State___0x1000770 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_global_State_0x1000720));
  gcc_jit_field *field_next_0x1000810 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x10008c0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x1000970 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_status_0x1000a20 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "status"); /* const char *name */
  gcc_jit_field *field_top_0x1000ad0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_l_G_0x1000b80 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_global_State___0x1000770, /* gcc_jit_type *type, */
                               "l_G"); /* const char *name */
  gcc_jit_field *field_ci_0x1000c30 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /* gcc_jit_type *type, */
                               "ci"); /* const char *name */
  gcc_jit_field *field_oldpc_0x1000ce0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0xff7be0, /* gcc_jit_type *type, */
                               "oldpc"); /* const char *name */
  gcc_jit_field *field_stack_last_0x1000d90 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "stack_last"); /* const char *name */
  gcc_jit_field *field_stack_0x1000e40 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "stack"); /* const char *name */
  gcc_jit_field *field_openupval_0x1000ef0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xffc4c0, /* gcc_jit_type *type, */
                               "openupval"); /* const char *name */
  gcc_jit_field *field_gclist_0x1000fa0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0xff7d40, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_twups_0xffdc20 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /* gcc_jit_type *type, */
                               "twups"); /* const char *name */
  gcc_jit_field *field_errorJmp_0xffdcd0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_lua_longjmp_0xffef80), /* gcc_jit_type *type, */
                               "errorJmp"); /* const char *name */
  gcc_jit_field *field_base_ci_0xffdd80 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0xfff690), /* gcc_jit_type *type, */
                               "base_ci"); /* const char *name */
  gcc_jit_field *field_hook_0xffde30 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0xff80e0, /* gcc_jit_type *type, */
                               "hook"); /* const char *name */
  gcc_jit_field *field_errfunc_0xffdee0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /* gcc_jit_type *type, */
                               "errfunc"); /* const char *name */
  gcc_jit_field *field_stacksize_0xffdf90 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "stacksize"); /* const char *name */
  gcc_jit_field *field_basehookcount_0xffe040 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "basehookcount"); /* const char *name */
  gcc_jit_field *field_hookcount_0xffe0f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "hookcount"); /* const char *name */
  gcc_jit_field *field_nny_0xffe1a0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xff7990, /* gcc_jit_type *type, */
                               "nny"); /* const char *name */
  gcc_jit_field *field_nCcalls_0xffe250 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0xff7990, /* gcc_jit_type *type, */
                               "nCcalls"); /* const char *name */
  gcc_jit_field *field_hookmask_0xffe300 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "hookmask"); /* const char *name */
  gcc_jit_field *field_allowhook_0xffe3b0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0xff7a10, /* gcc_jit_type *type, */
                               "allowhook"); /* const char *name */
  gcc_jit_field *fields_fields_0xffe400[24] = {
    field_next_0x1000810,
    field_tt_0x10008c0,
    field_marked_0x1000970,
    field_status_0x1000a20,
    field_top_0x1000ad0,
    field_l_G_0x1000b80,
    field_ci_0x1000c30,
    field_oldpc_0x1000ce0,
    field_stack_last_0x1000d90,
    field_stack_0x1000e40,
    field_openupval_0x1000ef0,
    field_gclist_0x1000fa0,
    field_twups_0xffdc20,
    field_errorJmp_0xffdcd0,
    field_base_ci_0xffdd80,
    field_hook_0xffde30,
    field_errfunc_0xffdee0,
    field_stacksize_0xffdf90,
    field_basehookcount_0xffe040,
    field_hookcount_0xffe0f0,
    field_nny_0xffe1a0,
    field_nCcalls_0xffe250,
    field_hookmask_0xffe300,
    field_allowhook_0xffe3b0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_lua_State_0xff76f0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0xffe400); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0xffe570 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xffc4c0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_touched_0xffe620 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /* gcc_jit_type *type, */
                               "touched"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_UpVal_u_open_0xffe6d0 =
    gcc_jit_context_new_opaque_struct (ctxt_0xff6f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal_u_open"); /* const char *name */
  gcc_jit_field *fields_fields_0xffe720[2] = {
    field_next_0xffe570,
    field_touched_0xffe620,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_u_open_0xffe6d0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0xffe720); /* gcc_jit_field **fields */
  gcc_jit_field *field_open_0xffe7f0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_UpVal_u_open_0xffe6d0), /* gcc_jit_type *type, */
                               "open"); /* const char *name */
  gcc_jit_field *field_value_0x1002330 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0xff8d40), /* gcc_jit_type *type, */
                               "value"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_UpVal_u_0x10023e0[2] = {
    field_open_0xffe7f0,
    field_value_0x1002330,
  };
  gcc_jit_type *union_union_ravi_UpVal_u_0x10023e0 =
    gcc_jit_context_new_union_type (ctxt_0xff6f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_UpVal_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_UpVal_u_0x10023e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_v_0x1002510 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type, */
                               "v"); /* const char *name */
  gcc_jit_field *field_refcount_0x10025c0 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0xff7800, /* gcc_jit_type *type, */
                               "refcount"); /* const char *name */
  gcc_jit_field *field_u_0x1002670 =
    gcc_jit_context_new_field (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_UpVal_u_0x10023e0, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *fields_fields_0x10026c0[3] = {
    field_v_0x1002510,
    field_refcount_0x10025c0,
    field_u_0x1002670,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_0xffc470, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x10026c0); /* gcc_jit_field **fields */
  gcc_jit_param *param_L_0x1002790 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_firstResult_0x1002840 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "firstResult"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_poscall_0x10028f0[2] = {
    param_L_0x1002790,
    param_firstResult_0x1002840,
  };
  gcc_jit_function *func_luaD_poscall_0x10028f0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaD_poscall", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaD_poscall_0x10028f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1002a20 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_uv_0x1002ad0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0xffc4c0, /*gcc_jit_type *type */
                               "uv"); /* const char *name */
  gcc_jit_param *params_for_func_luaC_upvalbarrier__0x1002b80[2] = {
    param_L_0x1002a20,
    param_uv_0x1002ad0,
  };
  gcc_jit_function *func_luaC_upvalbarrier__0x1002b80 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaC_upvalbarrier_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaC_upvalbarrier__0x1002b80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1002c80 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0x1002d30 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0x1002de0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_precall_0x1002e90[3] = {
    param_L_0x1002c80,
    param_func_0x1002d30,
    param_nresults_0x1002de0,
  };
  gcc_jit_function *func_luaD_precall_0x1002e90 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaD_precall", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaD_precall_0x1002e90, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1002f90 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0x1003040 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0x10030f0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *param_allowyield_0x10031a0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "allowyield"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_call_0x1003250[4] = {
    param_L_0x1002f90,
    param_func_0x1003040,
    param_nresults_0x10030f0,
    param_allowyield_0x10031a0,
  };
  gcc_jit_function *func_luaD_call_0x1003250 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaD_call", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaD_call_0x1003250, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1003350 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_execute_0x1003400[1] = {
    param_L_0x1003350,
  };
  gcc_jit_function *func_luaV_execute_0x1003400 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaV_execute", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_luaV_execute_0x1003400, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1003550 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_level_0x1003600 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "level"); /* const char *name */
  gcc_jit_param *params_for_func_luaF_close_0x10036b0[2] = {
    param_L_0x1003550,
    param_level_0x1003600,
  };
  gcc_jit_function *func_luaF_close_0x10036b0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaF_close", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaF_close_0x10036b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1003780 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t1_0x1003830 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "t1"); /* const char *name */
  gcc_jit_param *param_t2_0x10038e0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "t2"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_equalobj_0x1003990[3] = {
    param_L_0x1003780,
    param_t1_0x1003830,
    param_t2_0x10038e0,
  };
  gcc_jit_function *func_luaV_equalobj_0x1003990 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaV_equalobj", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_equalobj_0x1003990, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1003a90 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0x1003b40 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0x1003bf0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessthan_0x1003ca0[3] = {
    param_L_0x1003a90,
    param_l_0x1003b40,
    param_r_0x1003bf0,
  };
  gcc_jit_function *func_luaV_lessthan_0x1003ca0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaV_lessthan", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessthan_0x1003ca0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1003da0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0x1003e50 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0x1003f00 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessequal_0x1003fb0[3] = {
    param_L_0x1003da0,
    param_l_0x1003e50,
    param_r_0x1003f00,
  };
  gcc_jit_function *func_luaV_lessequal_0x1003fb0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaV_lessequal", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessequal_0x1003fb0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x10034a0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_fmt_0x10041a0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0xff7840, /*gcc_jit_type *type */
                               "fmt"); /* const char *name */
  gcc_jit_param *params_for_func_luaG_runerror_0x1004250[2] = {
    param_L_0x10034a0,
    param_fmt_0x10041a0,
  };
  gcc_jit_function *func_luaG_runerror_0x1004250 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaG_runerror", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaG_runerror_0x1004250, /* gcc_jit_param **params */
                                  1); /* int is_variadic */
  gcc_jit_param *param_obj_0x1004350 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0x1004400 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0xff7740, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *param_step_0x10044b0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /*gcc_jit_type *type */
                               "step"); /* const char *name */
  gcc_jit_param *param_stopnow_0x1004560 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0xff7910, /*gcc_jit_type *type */
                               "stopnow"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_forlimit_0x1004610[4] = {
    param_obj_0x1004350,
    param_p_0x1004400,
    param_step_0x10044b0,
    param_stopnow_0x1004560,
  };
  gcc_jit_function *func_luaV_forlimit_0x1004610 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaV_forlimit", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_forlimit_0x1004610, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0x1004710 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_n_0x10047c0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double___0xff7630, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tonumber__0x1004870[2] = {
    param_obj_0x1004710,
    param_n_0x10047c0,
  };
  gcc_jit_function *func_luaV_tonumber__0x1004870 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaV_tonumber_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tonumber__0x1004870, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0x1004970 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0x1004a20 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0xff7740, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tointeger__0x1004ad0[2] = {
    param_obj_0x1004970,
    param_p_0x1004a20,
  };
  gcc_jit_function *func_luaV_tointeger__0x1004ad0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "luaV_tointeger_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tointeger__0x1004ad0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1004bd0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ra_0x1004c80 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_rb_0x1004d30 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "rb"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_objlen_0x1004de0[3] = {
    param_L_0x1004bd0,
    param_ra_0x1004c80,
    param_rb_0x1004d30,
  };
  gcc_jit_function *func_luaV_objlen_0x1004de0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaV_objlen", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_objlen_0x1004de0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1004ee0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0x1004f90 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0x1005040 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0x10050f0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_gettable_0x10051a0[4] = {
    param_L_0x1004ee0,
    param_t_0x1004f90,
    param_key_0x1005040,
    param_val_0x10050f0,
  };
  gcc_jit_function *func_luaV_gettable_0x10051a0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaV_gettable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_gettable_0x10051a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x10052a0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0x1005350 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0x1005400 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0x10054b0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_settable_0x1005560[4] = {
    param_L_0x10052a0,
    param_t_0x1005350,
    param_key_0x1005400,
    param_val_0x10054b0,
  };
  gcc_jit_function *func_luaV_settable_0x1005560 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaV_settable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_settable_0x1005560, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1005660 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_p1_0x1005710 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "p1"); /* const char *name */
  gcc_jit_param *param_p2_0x10057c0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0xff8ea0, /*gcc_jit_type *type */
                               "p2"); /* const char *name */
  gcc_jit_param *param_res_0x1005870 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "res"); /* const char *name */
  gcc_jit_param *param_event_0x1005920 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "event"); /* const char *name */
  gcc_jit_param *params_for_func_luaT_trybinTM_0x10059d0[5] = {
    param_L_0x1005660,
    param_p1_0x1005710,
    param_p2_0x10057c0,
    param_res_0x1005870,
    param_event_0x1005920,
  };
  gcc_jit_function *func_luaT_trybinTM_0x10059d0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "luaT_trybinTM", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_luaT_trybinTM_0x10059d0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_ci_0x1005b60 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0x1005bf0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x1005ca0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_loadnil_0x1005d50[3] = {
    param_ci_0x1005b60,
    param_a_0x1005bf0,
    param_b_0x1005ca0,
  };
  gcc_jit_function *func_raviV_op_loadnil_0x1005d50 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_loadnil", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_loadnil_0x1005d50, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1005e50 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x1005f00 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x1005fb0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayint_0x1006060[3] = {
    param_L_0x1005e50,
    param_ci_0x1005f00,
    param_ra_0x1005fb0,
  };
  gcc_jit_function *func_raviV_op_newarrayint_0x1006060 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayint", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayint_0x1006060, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1006160 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x1006210 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x10062c0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayfloat_0x1006370[3] = {
    param_L_0x1006160,
    param_ci_0x1006210,
    param_ra_0x10062c0,
  };
  gcc_jit_function *func_raviV_op_newarrayfloat_0x1006370 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayfloat", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayfloat_0x1006370, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1000ff0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x10010a0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x1001150 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x1001200 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x10012b0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newtable_0x1001360[5] = {
    param_L_0x1000ff0,
    param_ci_0x10010a0,
    param_ra_0x1001150,
    param_b_0x1001200,
    param_c_0x10012b0,
  };
  gcc_jit_function *func_raviV_op_newtable_0x1001360 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_newtable", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_newtable_0x1001360, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1001480 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x1001530 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x10015e0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0xff8e20, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x1001690 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x1001740 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setlist_0x10017f0[5] = {
    param_L_0x1001480,
    param_ci_0x1001530,
    param_ra_0x10015e0,
    param_b_0x1001690,
    param_c_0x1001740,
  };
  gcc_jit_function *func_raviV_op_setlist_0x10017f0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_setlist", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_setlist_0x10017f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1001910 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0x10019c0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0x1001a70 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_div_0x1001b20[3] = {
    param_L_0x1001910,
    param_m_0x10019c0,
    param_n_0x1001a70,
  };
  gcc_jit_function *func_luaV_div_0x1001b20 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0xff76b0, /* gcc_jit_type *return_type */
                                  "luaV_div", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_div_0x1001b20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1001c20 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0x1001cd0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0x1001d80 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_mod_0x1001e30[3] = {
    param_L_0x1001c20,
    param_m_0x1001cd0,
    param_n_0x1001d80,
  };
  gcc_jit_function *func_luaV_mod_0x1001e30 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0xff76b0, /* gcc_jit_type *return_type */
                                  "luaV_mod", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_mod_0x1001e30, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1001f30 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x1001fe0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0x1002090 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x1002140 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x10021f0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_concat_0x10022a0[5] = {
    param_L_0x1001f30,
    param_ci_0x1001fe0,
    param_a_0x1002090,
    param_b_0x1002140,
    param_c_0x10021f0,
  };
  gcc_jit_function *func_raviV_op_concat_0x10022a0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_concat", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_concat_0x10022a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1005af0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x10082d0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0x1008380 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xffa910, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0x1008430 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_Bx_0x10084e0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "Bx"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_closure_0x1008590[5] = {
    param_L_0x1005af0,
    param_ci_0x10082d0,
    param_cl_0x1008380,
    param_a_0x1008430,
    param_Bx_0x10084e0,
  };
  gcc_jit_function *func_raviV_op_closure_0x1008590 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_closure", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_closure_0x1008590, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x10086b0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x1008760 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0xfff6e0, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0x1008810 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0xffa910, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0x10088c0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x1008970 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0xff78d0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_vararg_0x1008a20[5] = {
    param_L_0x10086b0,
    param_ci_0x1008760,
    param_cl_0x1008810,
    param_a_0x10088c0,
    param_b_0x1008970,
  };
  gcc_jit_function *func_raviV_op_vararg_0x1008a20 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviV_op_vararg", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_vararg_0x1008a20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1008b40 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0x1008bf0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xff9760, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0x1008ca0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xff79d0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0x1008d50 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0xff76b0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_int_0x1008e00[4] = {
    param_L_0x1008b40,
    param_table_0x1008bf0,
    param_key_0x1008ca0,
    param_value_0x1008d50,
  };
  gcc_jit_function *func_raviH_set_int_0x1008e00 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviH_set_int", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_int_0x1008e00, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x1008f00 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0x1008fb0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0xff9760, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0x1009060 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0xff79d0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0x1009110 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0xff75f0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_float_0x10091c0[4] = {
    param_L_0x1008f00,
    param_table_0x1008fb0,
    param_key_0x1009060,
    param_value_0x1009110,
  };
  gcc_jit_function *func_raviH_set_float_0x10091c0 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0xff7880, /* gcc_jit_type *return_type */
                                  "raviH_set_float", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_float_0x10091c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_format_0x10092c0 =
    gcc_jit_context_new_param (ctxt_0xff6f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0xff7840, /*gcc_jit_type *type */
                               "format"); /* const char *name */
  gcc_jit_param *params_for_func_printf_0x1009370[1] = {
    param_format_0x10092c0,
  };
  gcc_jit_function *func_printf_0x1009370 =
    gcc_jit_context_new_function (ctxt_0xff6f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "printf", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_printf_0x1009370, /* gcc_jit_param **params */
                                  1); /* int is_variadic */


  /* Replay of API calls for ctxt_0x100c060.  */
  gcc_jit_param *param_L_0x1030a60 =
    gcc_jit_context_new_param (ctxt_0x100c060,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0xff7c80, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_ravif2_0x103ce80[1] = {
    param_L_0x1030a60,
  };
  gcc_jit_function *func_ravif2_0x103ce80 =
    gcc_jit_context_new_function (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_EXPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0xff78d0, /* gcc_jit_type *return_type */
                                  "ravif2", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_ravif2_0x103ce80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_block *block_entry_0x1030870 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "entry");
  gcc_jit_lvalue *local_base_0x10307d0 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_TValue___0xff8e20, /* gcc_jit_type *type */
                                "base"); /* const char *name */
  gcc_jit_lvalue *local_cl_0x1030970 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_LClosure___0xffa910, /* gcc_jit_type *type */
                                "cl"); /* const char *name */
  gcc_jit_block *block_jmp_5_1_0x1030780 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "jmp_5_1");
  gcc_jit_block *block_jmp_9_2_0x10306c0 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "jmp_9_2");
  gcc_jit_block *block_jmp_12_3_0x1030600 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "jmp_12_3");
  gcc_jit_lvalue *lvalue_L__ci_0x1030550=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x1030a60), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_ci_0x1000c30); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func_0x10304c0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x1030550), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_func_0x1000020); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__0x1030470=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func_0x10304c0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__gc_0x1030420 = 
    gcc_jit_lvalue_access_field (lvalue_L__ci__func__value__0x1030470, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_gc_0xff8580);
  gcc_jit_rvalue *rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0x10303d0 =
    gcc_jit_context_new_cast (ctxt_0x100c060,
                              NULL, /* gcc_jit_location *loc */
                              gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func__value__gc_0x1030420), /* gcc_jit_rvalue *rvalue */
                              type_struct_ravi_LClosure___0xffa910); /* gcc_jit_type *type */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_cl_0x1030970, /* gcc_jit_lvalue *lvalue */
                                rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0x10303d0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_L__ci__u_0x1030330=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x1030550), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_u_0x10002e0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue_L__ci__u_l_0x10302e0 = 
    gcc_jit_rvalue_access_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__u_0x1030330), /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_l_0xfffd90);
  gcc_jit_rvalue *rvalue_L__ci__u_l_base_0x1030290 = 
    gcc_jit_rvalue_access_field (rvalue_L__ci__u_l_0x10302e0, /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_base_0xfff780);
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p_0x10301f0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (local_cl_0x1030970), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_p_0xffcf70); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_cl__p__k_0x10301a0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x10301f0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_k_0xffa3b0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x10300f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_0_0x10113d0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0x1011310[3] = {
    gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x1030550),
    rvalue__int_0_0x10113d0,
    rvalue__int_0_0x10300f0,
  };
  gcc_jit_rvalue *call_raviV_op_loadnil__L__ci___int_0___int_0__0x1011310 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_raviV_op_loadnil_0x1005d50, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0x1011310); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_entry_0x1030870, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_raviV_op_loadnil__L__ci___int_0___int_0__0x1011310); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1011200 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x10111b0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x1011200); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x1011160 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x10111b0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x1011110 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0x10110c0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0x10301a0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x1011110); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0x1010fd0 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0x10110c0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x1010f20=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x1011160, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__i_0x1010e90 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x1010f20, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xff8840);
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__0x1010dd0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x1010fd0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__i_0x100f870 = 
    gcc_jit_lvalue_access_field (lvalue__cl__p__k__int_0___value__0x1010dd0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xff8840);
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__i_0x1010e90, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___value__i_0x100f870)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x1010bd0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x1011160, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___tt__0x102f370=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x1010fd0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0x1010bd0, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___tt__0x102f370)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_5_0x102f200 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         5); /* int value */
  gcc_jit_rvalue *rvalue__int_1_0x102f170 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_rvalue *rvalue__int_3_0x102f120 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         3); /* int value */
  gcc_jit_rvalue *rvalue__OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d____0x102efe0 =
    gcc_jit_context_new_string_literal (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                        "OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to %d\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_printf___OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d______int_3___int_1___int_5__0x102ef90[4] = {
    rvalue__OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d____0x102efe0,
    rvalue__int_3_0x102f120,
    rvalue__int_1_0x102f170,
    rvalue__int_5_0x102f200,
  };
  gcc_jit_rvalue *call_printf___OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d______int_3___int_1___int_5__0x102ef90 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0x1009370, /* gcc_jit_function *func */
                              4, /* int numargs  */ 
                              args_for__call_printf___OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d______int_3___int_1___int_5__0x102ef90); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_entry_0x1030870, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_printf___OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d______int_3___int_1___int_5__0x102ef90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x102eef0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x102eea0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x102eef0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x102ee50 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x102eea0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_4_0x102ee00 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "isfalse_0_4"); /* const char *name */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x102edb0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x102ee50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x102ed60 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_5_0x102ed10 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_5"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_0_0x10305a0 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0x102edb0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x102ed60); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_5_0x102ed10, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_0_0x10305a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1030820 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_6_0x102ec00 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_6"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_1_0x1010f70 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0x102edb0), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x1030820); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_6_0x102ec00, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_1_0x1010f70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x10122d0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x102ee50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0x1012280 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x10122d0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xff86e0);
  gcc_jit_rvalue *rvalue__int_0_0x1012230 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_7_0x10121e0 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_7"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___value__b_____int_0_0x102f250 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___value__b_0x1012280), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x1012230); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_7_0x10121e0, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___value__b_____int_0_0x102f250); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_6____comparison_0_7_0x1011980 =
    gcc_jit_context_new_binary_op (ctxt_0x100c060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xff7580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_6_0x102ec00), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_7_0x10121e0)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0x100fb80 =
    gcc_jit_context_new_binary_op (ctxt_0x100c060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xff7580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_5_0x102ed10), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_6____comparison_0_7_0x1011980); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x1030870, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_4_0x102ee00, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0x100fb80); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_4__0x10120f0 =
    gcc_jit_context_new_unary_op (ctxt_0x100c060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xff7580, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_4_0x102ee00)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_2_8_0x1012070 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_TEST_do_jmp_2_8");
  gcc_jit_block *block_OP_TEST_do_skip_2_9_0x1011eb0 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_TEST_do_skip_2_9");
  gcc_jit_block_end_with_conditional (block_entry_0x1030870, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_4__0x10120f0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_2_8_0x1012070, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_2_9_0x1011eb0); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_2_8_0x1012070, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0x1030780); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_2_9_0x1011eb0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0x1030780); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1011dc0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x1011d70 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x1011dc0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x1011d20 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x1011d70, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x1011cd0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x1011c80=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x1011d20, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0x1011c30 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x1011c80, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xff86e0);
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__b_0x1011c30, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0x1011cd0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1011b90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x1011b00=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x1011d20, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0x1011b00, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x1011b90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_9_0x1011a20 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         9); /* int value */
  gcc_jit_rvalue *rvalue__int_1_0x100f3a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_rvalue *rvalue__int_6_0x10118a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         6); /* int value */
  gcc_jit_rvalue *rvalue__OP_TEST__d_C_0__if__reg_A__d___then_skip_next_else_jmp_to__d____0x10117c0 =
    gcc_jit_context_new_string_literal (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                        "OP_TEST(%d C=0) if (reg(A=%d)) then skip next else jmp to %d\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_printf___OP_TEST__d_C_0__if__reg_A__d___then_skip_next_else_jmp_to__d______int_6___int_1___int_9__0x1011770[4] = {
    rvalue__OP_TEST__d_C_0__if__reg_A__d___then_skip_next_else_jmp_to__d____0x10117c0,
    rvalue__int_6_0x10118a0,
    rvalue__int_1_0x100f3a0,
    rvalue__int_9_0x1011a20,
  };
  gcc_jit_rvalue *call_printf___OP_TEST__d_C_0__if__reg_A__d___then_skip_next_else_jmp_to__d______int_6___int_1___int_9__0x1011770 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0x1009370, /* gcc_jit_function *func */
                              4, /* int numargs  */ 
                              args_for__call_printf___OP_TEST__d_C_0__if__reg_A__d___then_skip_next_else_jmp_to__d______int_6___int_1___int_9__0x1011770); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_printf___OP_TEST__d_C_0__if__reg_A__d___then_skip_next_else_jmp_to__d______int_6___int_1___int_9__0x1011770); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1011680 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x1011630 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x1011680); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x10115e0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x1011630, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_10_0x1011590 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "isfalse_0_10"); /* const char *name */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x1011500=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x10115e0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x10114b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_11_0x1011460 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_11"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_0_0x1010b20 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0x1011500), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x10114b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_11_0x1011460, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_0_0x1010b20); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x100fc70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_12_0x100fbe0 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_12"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_1_0x10f8390 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0x1011500), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x100fc70); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_12_0x100fbe0, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_1_0x10f8390); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x1022b20=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x10115e0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0x112dd60 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x1022b20, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xff86e0);
  gcc_jit_rvalue *rvalue__int_0_0x10243d0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_13_0x1010b80 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_13"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___value__b_____int_0_0x10cc6c0 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___value__b_0x112dd60), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x10243d0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_13_0x1010b80, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___value__b_____int_0_0x10cc6c0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_12____comparison_0_13_0x10233e0 =
    gcc_jit_context_new_binary_op (ctxt_0x100c060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xff7580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_12_0x100fbe0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_13_0x1010b80)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0x10f2b90 =
    gcc_jit_context_new_binary_op (ctxt_0x100c060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xff7580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_11_0x1011460), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_12____comparison_0_13_0x10233e0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_10_0x1011590, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0x10f2b90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_10__0x10116d0 =
    gcc_jit_context_new_unary_op (ctxt_0x100c060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xff7580, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_10_0x1011590)); /* gcc_jit_rvalue *a */
  gcc_jit_rvalue *rvalue_____isfalse_0_10___0x10248d0 =
    gcc_jit_context_new_unary_op (ctxt_0x100c060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xff7580, /* gcc_jit_type *result_type */
                                  rvalue___isfalse_0_10__0x10116d0); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_5_14_0x1012880 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_TEST_do_jmp_5_14");
  gcc_jit_block *block_OP_TEST_do_skip_5_15_0x1038280 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_TEST_do_skip_5_15");
  gcc_jit_block_end_with_conditional (block_jmp_5_1_0x1030780, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue_____isfalse_0_10___0x10248d0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_5_14_0x1012880, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_5_15_0x1038280); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_5_14_0x1012880, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0x10306c0); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x1038280, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_0_0x1037ca0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_base__int_0__0x103d1d0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x1037ca0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_0__0x103d510 =
    gcc_jit_lvalue_get_address (lvalue_base__int_0__0x103d1d0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_1_0x103bb40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_0___value__0x103bc40=
    gcc_jit_rvalue_dereference_field (address_of__base__int_0__0x103d510, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_0___value__b_0x103be30 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_0___value__0x103bc40, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xff86e0);
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x1038280, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_0___value__b_0x103be30, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x103bb40); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x103bdb0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_0___tt__0x103b0d0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_0__0x103d510, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x1038280, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_0___tt__0x103b0d0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x103bdb0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_5_15_0x1038280, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0x10306c0); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x100bfd0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x103a840 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x100bfd0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x103a9c0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x103a840, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x103aa40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0x103ab50 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0x10301a0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x103aa40); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0x103abd0 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0x103ab50, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x103acf0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x103a9c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__i_0x103ae00 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x103acf0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xff8840);
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__0x103ae80=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x103abd0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___value__i_0x103b050 = 
    gcc_jit_lvalue_access_field (lvalue__cl__p__k__int_0___value__0x103ae80, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0xff8840);
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__i_0x103ae00, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___value__i_0x103b050)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x103b1f0=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x103a9c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__cl__p__k__int_0___tt__0x103b300=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x103abd0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0x103b1f0, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue__cl__p__k__int_0___tt__0x103b300)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_12_0x103b420 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         12); /* int value */
  gcc_jit_rvalue *rvalue__int_1_0x103b4a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_rvalue *rvalue__int_10_0x103b7a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         10); /* int value */
  gcc_jit_rvalue *rvalue__OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d____0x103b680 =
    gcc_jit_context_new_string_literal (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                        "OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to %d\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_0x103b700[4] = {
    rvalue__OP_TEST__d_C_1___if___reg_A__d___then_skip_next_else_jmp_to__d____0x103b680,
    rvalue__int_10_0x103b7a0,
    rvalue__int_1_0x103b4a0,
    rvalue__int_12_0x103b420,
  };
  gcc_jit_rvalue *call_0x103b700 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0x1009370, /* gcc_jit_function *func */
                              4, /* int numargs  */ 
                              args_for__call_0x103b700); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_0x103b700); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1037fe0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x1037d20 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x1037fe0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x1037e40 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x1037d20, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_16_0x1038200 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "isfalse_0_16"); /* const char *name */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x1038060=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x1037e40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x10380e0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_17_0x1038690 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_17"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_0_0x1038710 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0x1038060), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x10380e0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_17_0x1038690, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_0_0x1038710); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1038380 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_18_0x1038540 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_18"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___tt______int_1_0x10385c0 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___tt__0x1038060), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x1038380); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_18_0x1038540, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___tt______int_1_0x10385c0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x103d150=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x1037e40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0x103d490 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x103d150, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xff86e0);
  gcc_jit_rvalue *rvalue__int_0_0x103bac0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_19_0x103c070 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_19"); /* const char *name */
  gcc_jit_rvalue *rvalue__base__int_1___value__b_____int_0_0x103bf30 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue__base__int_1___value__b_0x103d490), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x103bac0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_19_0x103c070, /* gcc_jit_lvalue *lvalue */
                                rvalue__base__int_1___value__b_____int_0_0x103bf30); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_18____comparison_0_19_0x10a7bc0 =
    gcc_jit_context_new_binary_op (ctxt_0x100c060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0xff7580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_18_0x1038540), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_19_0x103c070)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0x100dd50 =
    gcc_jit_context_new_binary_op (ctxt_0x100c060,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0xff7580, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_17_0x1038690), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_18____comparison_0_19_0x10a7bc0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_16_0x1038200, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0x100dd50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_16__0x103b270 =
    gcc_jit_context_new_unary_op (ctxt_0x100c060,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0xff7580, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_16_0x1038200)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_9_20_0x1038790 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_TEST_do_jmp_9_20");
  gcc_jit_block *block_OP_TEST_do_skip_9_21_0x1011fb0 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_TEST_do_skip_9_21");
  gcc_jit_block_end_with_conditional (block_jmp_9_2_0x10306c0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_16__0x103b270, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_9_20_0x1038790, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_9_21_0x1011fb0); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_9_20_0x1038790, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0x1030600); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_9_21_0x1011fb0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0x1030600); /* gcc_jit_block *target */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x10cf050 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x103e710 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x10cf050); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x100b750 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x103e710, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x103b380 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___value__0x103a920=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x100b750, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0xff8be0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue__base__int_1___value__b_0x103ac50 = 
    gcc_jit_lvalue_access_field (lvalue__base__int_1___value__0x103a920, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0xff86e0);
  gcc_jit_block_add_assignment (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___value__b_0x103ac50, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0x103b380); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x103b150 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue__base__int_1___tt__0x103b560=
    gcc_jit_rvalue_dereference_field (address_of__base__int_1__0x100b750, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0xff8c90); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue__base__int_1___tt__0x103b560, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x103b150); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1037da0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_rvalue *rvalue__int_13_0x1037f40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         13); /* int value */
  gcc_jit_rvalue *rvalue__OP_RETURN_pc__d__return__d_args____0x103d2b0 =
    gcc_jit_context_new_string_literal (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                        "OP_RETURN(pc=%d) return %d args\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0x1040220[3] = {
    rvalue__OP_RETURN_pc__d__return__d_args____0x103d2b0,
    rvalue__int_13_0x1037f40,
    rvalue__int_1_0x1037da0,
  };
  gcc_jit_rvalue *call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0x1040220 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0x1009370, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0x1040220); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_printf___OP_RETURN_pc__d__return__d_args______int_13___int_1__0x1040220); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x103db70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_base__int_1__0x103e0a0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x103db70); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_1__0x103ed80 =
    gcc_jit_lvalue_get_address (lvalue_base__int_1__0x103e0a0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_2_0x103fa90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         2); /* int value */
  gcc_jit_lvalue *lvalue_base__int_2__0x103f3f0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_2_0x103fa90); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_2__0x1046fb0 =
    gcc_jit_lvalue_get_address (lvalue_base__int_2__0x103f3f0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0x10475b0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x1030a60), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0x1000ad0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0x10475b0, /* gcc_jit_lvalue *lvalue */
                                address_of__base__int_2__0x1046fb0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0x107bfa0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x10301f0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0xffb6f0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x1012ac0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_22_0x1012b10 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_22"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0x103b920 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0x107bfa0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x1012ac0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_22_0x1012b10, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0x103b920); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_12_23_0x1042fb0 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_RETURN_if_sizep_gt_0_12_23");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_12_24_0x1041350 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_RETURN_else_sizep_gt_0_12_24");
  gcc_jit_block_end_with_conditional (block_jmp_12_3_0x1030600, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_22_0x1012b10), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_12_23_0x1042fb0, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_12_24_0x1041350); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__base__0x10ccf90[2] = {
    gcc_jit_param_as_rvalue (param_L_0x1030a60),
    gcc_jit_lvalue_as_rvalue (local_base_0x10307d0),
  };
  gcc_jit_rvalue *call_luaF_close__L__base__0x10ccf90 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0x10036b0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__base__0x10ccf90); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_12_23_0x1042fb0, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__base__0x10ccf90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_12_23_0x1042fb0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_12_24_0x1041350); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L___base__int_1___0x1082ca0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x1030a60),
    address_of__base__int_1__0x103ed80,
  };
  gcc_jit_rvalue *call_luaD_poscall__L___base__int_1___0x1082ca0 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0x10028f0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L___base__int_1___0x1082ca0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_12_24_0x1041350, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L___base__int_1___0x1082ca0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x10ce170 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_12_24_0x1041350, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0x10ce170); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_13_25_0x1030b30 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_RETURN_13_25");
  gcc_jit_rvalue *rvalue__int_0_0x103d590 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_14_0x103d5e0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         14); /* int value */
  gcc_jit_rvalue *rvalue__OP_RETURN_pc__d__return__d_args____0x10cb930 =
    gcc_jit_context_new_string_literal (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                        "OP_RETURN(pc=%d) return %d args\
"); /* const char *value */
  gcc_jit_rvalue *args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0x10cb980[3] = {
    rvalue__OP_RETURN_pc__d__return__d_args____0x10cb930,
    rvalue__int_14_0x103d5e0,
    rvalue__int_0_0x103d590,
  };
  gcc_jit_rvalue *call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0x10cb980 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_printf_0x1009370, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0x10cb980); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_13_25_0x1030b30, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_printf___OP_RETURN_pc__d__return__d_args______int_14___int_0__0x10cb980); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_add_assignment (block_OP_RETURN_13_25_0x1030b30, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_base_0x10307d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_L__ci__u_l_base_0x1030290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_0_0x10255f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_base__int_0__0x1025640 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x10255f0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_0__0x1025690 =
    gcc_jit_lvalue_get_address (lvalue_base__int_0__0x1025640, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x112da60 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_base__int_0__0x112dab0 = 
    gcc_jit_context_new_array_access (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_base_0x10307d0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x112da60); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__base__int_0__0x112db00 =
    gcc_jit_lvalue_get_address (lvalue_base__int_0__0x112dab0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0x109a9a0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x1030a60), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0x1000ad0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_RETURN_13_25_0x1030b30, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0x109a9a0, /* gcc_jit_lvalue *lvalue */
                                address_of__base__int_0__0x112db00); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0x109aa40=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x10301f0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0xffb6f0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x10d0af0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_26_0x10d0b80 =
    gcc_jit_function_new_local (func_ravif2_0x103ce80, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0xff7580, /* gcc_jit_type *type */
                                "comparison_0_26"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0x10f2a50 =
    gcc_jit_context_new_comparison (ctxt_0x100c060,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0x109aa40), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x10d0af0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_OP_RETURN_13_25_0x1030b30, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_26_0x10d0b80, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0x10f2a50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_13_27_0x10f2b00 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_RETURN_if_sizep_gt_0_13_27");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_13_28_0x109a1c0 =
    gcc_jit_function_new_block (func_ravif2_0x103ce80, "OP_RETURN_else_sizep_gt_0_13_28");
  gcc_jit_block_end_with_conditional (block_OP_RETURN_13_25_0x1030b30, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_26_0x10d0b80), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_13_27_0x10f2b00, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_13_28_0x109a1c0); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__base__0x1010d00[2] = {
    gcc_jit_param_as_rvalue (param_L_0x1030a60),
    gcc_jit_lvalue_as_rvalue (local_base_0x10307d0),
  };
  gcc_jit_rvalue *call_luaF_close__L__base__0x1010d00 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0x10036b0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__base__0x1010d00); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_13_27_0x10f2b00, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__base__0x1010d00); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_13_27_0x10f2b00, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_13_28_0x109a1c0); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L___base__int_0___0x1025ab0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x1030a60),
    address_of__base__int_0__0x1025690,
  };
  gcc_jit_rvalue *call_luaD_poscall__L___base__int_0___0x1025ab0 =
    gcc_jit_context_new_call (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0x10028f0, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L___base__int_0___0x1025ab0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_13_28_0x109a1c0, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L___base__int_0___0x1025ab0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x1025b00 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x100c060, /* gcc_jit_context *ctxt */
                                         type_int_0xff78d0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_13_28_0x109a1c0, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0x1025b00); /* gcc_jit_rvalue *rvalue */
}

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                           ` Dibyendu Majumdar
@ 2015-01-01  0:00                                             ` David Malcolm
  2015-01-01  0:00                                               ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Fri, 2015-07-10 at 01:39 +0100, Dibyendu Majumdar wrote:
> On 10 July 2015 at 01:14, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > On 10 July 2015 at 00:30, David Malcolm <dmalcolm@redhat.com> wrote:
> >> On Thu, 2015-07-09 at 23:20 +0100, Dibyendu Majumdar wrote:
> >>> On 9 July 2015 at 22:24, David Malcolm <dmalcolm@redhat.com> wrote:
> >>> > On Thu, 2015-07-09 at 17:15 -0400, David Malcolm wrote:
> >>> >> On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:
> >>> >>
> >>> >> (snip)
> >>> >>
> >>> >> > The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
> >>> >> > API thus giving libgccjit some rules about aliasing.  Some options:
> >>> >> >
> >>> >> > (i) make it identical to C.
> >>> >> > (ii) give the client code some control over this
> >>> >> >
> >>> >> > My initial gut feeling is to go with (i).
> >>> >>
> >>> >> ...or possibly to do what the link-time optimizer does, which is to use
> >>> >> this internal API:
> >>> >>
> >>> >> /* Return the typed-based alias set for T, which may be an expression
> >>> >>    or a type.  Return -1 if we don't do anything special.  */
> >>> >>
> >>> >> alias_set_type
> >>> >> gimple_get_alias_set (tree t)
> >>> >>
> >>> >> which does almost all of what the C frontend does.  I'll try to cook up
> >>> >> a patch.
> >>> >
> >>> > Attached is a patch [1] which fixes the minimal reproducer I created,
> >>> > and the reproducer you sent.
> >>> >
> >>> > Does it work for you?
> >>> >
> >>>
> >>> I get this error when compiling:
> >>>
> >>> In file included from ../../gcc-5.1.0/gcc/jit/dummy-frontend.c:54:0:
> >>> ../../gcc-5.1.0/gcc/gimple.h: In function ‘void
> >>> gimple_call_set_fndecl(gimple, tree)’:
> >>> ../../gcc-5.1.0/gcc/gimple.h:2769:77: error:
> >>> ‘build_fold_addr_expr_loc’ was not declared in this scope
> >>>    gimple_set_op (gs, 1, build_fold_addr_expr_loc (gimple_location (gs), decl));
> >>>                                                                              ^
> >>> Am I missing something?
> >>
> >> The patch was for trunk, where GCC's internal headers have been
> >> reorganized, so we need different #includes for gcc-5-branch.
> >>
> >> Does the attached work?  (it compiles; I haven't tested it though)
> >>
> >
> > The isolated test works. Now running the full Lua test suite.
> 
> Tests worked

Good

> however performance degraded similar to when
> -fno-strict-aliasing is used.

Bother.  What kind of numbers are we talking about?

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00               ` Dibyendu Majumdar
@ 2015-01-01  0:00                 ` David Malcolm
  2015-01-01  0:00                   ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 20:01 +0100, Dibyendu Majumdar wrote:
> On 8 July 2015 at 18:46, David Malcolm <dmalcolm@redhat.com> wrote:
> > Dibyendu: what Lua code generated the reproducer?  What is the code
> > meant to be doing?
> >
> 
> Hi Dave - the Lua test is this:
> 
> function x()
>   local IX
>   if ((10 or true) and false) then
>     IX = true
>   end;
>   return ((10 or true) and false)
> end
> assert(x() == false)
> 
> In the original test IX is an upvalue - i.e. a variable in outer
> scope. This is my standalone version of the test. The original test is
> generated as part of the Lua test suite - its purpose is to test
> various permutations of boolean operators.
> 
> The original test compares IX and the function return.
> 
> The issue is that this test should return false - if you see the
> return statement. However when -O2 or -O3 is enabled it returns true.
> 
> The if statement is indeed redundant in this cut down version as IX is
> a local variable. But the return statement is not redundant.

Thanks.  What does this look like as bytecodes?

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                       ` David Malcolm
@ 2015-01-01  0:00                                         ` Dibyendu Majumdar
  2015-01-01  0:00                                           ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 10 July 2015 at 00:30, David Malcolm <dmalcolm@redhat.com> wrote:
> On Thu, 2015-07-09 at 23:20 +0100, Dibyendu Majumdar wrote:
>> On 9 July 2015 at 22:24, David Malcolm <dmalcolm@redhat.com> wrote:
>> > On Thu, 2015-07-09 at 17:15 -0400, David Malcolm wrote:
>> >> On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:
>> >>
>> >> (snip)
>> >>
>> >> > The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
>> >> > API thus giving libgccjit some rules about aliasing.  Some options:
>> >> >
>> >> > (i) make it identical to C.
>> >> > (ii) give the client code some control over this
>> >> >
>> >> > My initial gut feeling is to go with (i).
>> >>
>> >> ...or possibly to do what the link-time optimizer does, which is to use
>> >> this internal API:
>> >>
>> >> /* Return the typed-based alias set for T, which may be an expression
>> >>    or a type.  Return -1 if we don't do anything special.  */
>> >>
>> >> alias_set_type
>> >> gimple_get_alias_set (tree t)
>> >>
>> >> which does almost all of what the C frontend does.  I'll try to cook up
>> >> a patch.
>> >
>> > Attached is a patch [1] which fixes the minimal reproducer I created,
>> > and the reproducer you sent.
>> >
>> > Does it work for you?
>> >
>>
>> I get this error when compiling:
>>
>> In file included from ../../gcc-5.1.0/gcc/jit/dummy-frontend.c:54:0:
>> ../../gcc-5.1.0/gcc/gimple.h: In function ‘void
>> gimple_call_set_fndecl(gimple, tree)’:
>> ../../gcc-5.1.0/gcc/gimple.h:2769:77: error:
>> ‘build_fold_addr_expr_loc’ was not declared in this scope
>>    gimple_set_op (gs, 1, build_fold_addr_expr_loc (gimple_location (gs), decl));
>>                                                                              ^
>> Am I missing something?
>
> The patch was for trunk, where GCC's internal headers have been
> reorganized, so we need different #includes for gcc-5-branch.
>
> Does the attached work?  (it compiles; I haven't tested it though)
>

The isolated test works. Now running the full Lua test suite.

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00   ` Dibyendu Majumdar
@ 2015-01-01  0:00     ` Dibyendu Majumdar
  2015-01-01  0:00       ` Filed PR jit/66812 for the " David Malcolm
  2015-01-01  0:00       ` A possible " David Malcolm
  0 siblings, 2 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: jit

On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
>> Looks like in the failure case the code is being incorrectly
>> optimized. I wonder if this is a manifestation of the get_address bug,
>> perhaps the real fix will be better than the patch I am using. I will
>> use the latest gcc 5 branch and see if that helps.
>>
>
> Hi Dave,
>
> I am now using the latest gcc-5-branch from gcc github mirror.
> Unfortunately the issue still persists.
>
> If set optimization level to 0 or 1, then it works ok, but at levels 2
> or 3 the break occurs.
>

Adding the -fno-strict-aliasing appears to resolve the issue with -O2
and -O3 but with this enabled the benchmarks are degraded.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00           ` David Malcolm
  2015-01-01  0:00             ` Dibyendu Majumdar
@ 2015-01-01  0:00             ` David Malcolm
  2015-01-01  0:00               ` Dibyendu Majumdar
                                 ` (2 more replies)
  1 sibling, 3 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 11:30 -0400, David Malcolm wrote:
> On Wed, 2015-07-08 at 11:05 -0400, David Malcolm wrote:
> > On Wed, 2015-07-08 at 10:21 -0400, David Malcolm wrote:
> > > On Sat, 2015-07-04 at 16:58 +0100, Dibyendu Majumdar wrote:
> > > > On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > > > On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > > >> Looks like in the failure case the code is being incorrectly
> > > > >> optimized. I wonder if this is a manifestation of the get_address bug,
> > > > >> perhaps the real fix will be better than the patch I am using. I will
> > > > >> use the latest gcc 5 branch and see if that helps.
> > > > >>
> > > > >
> > > > > Hi Dave,
> > > > >
> > > > > I am now using the latest gcc-5-branch from gcc github mirror.
> > > > > Unfortunately the issue still persists.
> > > > >
> > > > > If set optimization level to 0 or 1, then it works ok, but at levels 2
> > > > > or 3 the break occurs.
> > > > >
> > > > 
> > > > Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> > > > and -O3 but with this enabled the benchmarks are degraded.
> > > 
> > > I've filed the bad code generation issue as:
> > >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812
> > > 
> > > and I'm investigating it.
> > 
> > 
> > Notes on investigation so far.
> > 
> > With the fixes here
> >   https://gcc.gnu.org/ml/jit/2015-q3/msg00025.html
> > and here:
> >   https://gcc.gnu.org/ml/jit/2015-q3/msg00028.html
> > the reproducer from
> >  https://gcc.gnu.org/ml/jit/2015-q3/msg00012.html
> > now correctly fails with:
> >  error: gcc_jit_context_new_field: unknown size for field
> > "errorJmp" (type: struct ravi_lua_longjmp)
> > 
> > Upon applying the equivalent of the fix from:
> > https://github.com/dibyendumajumdar/ravi/commit/d65d2e68fbdcf211ed36deea05727f996ede8296
> > to the generator you provided, gcc_jit_context_compile completes.
> > 
> > I don't know if it's generating bad code (given that I don't have Ravi
> > itself running, just the reproducer).  However, I tried comparing the
> > bug_rdump.txt and bug_rdump_ok.txt reproducers, and tried adding
> > -fno-strict-aliasing to the former.
> > 
> > I turned on GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING and started comparing
> > the dumpfiles.
> > 
> > The diffs stay easily comparable until fake.c.018t.ssa, when numbering
> > differences between temporaries mean that a simple "diff" becomes
> > unreadable.
> > 
> > So I wrote a tool to try to alleviate this:
> >   https://github.com/davidmalcolm/gcc-dump-diff
> > The tool tries to renumber temporaries in dumpfiles so that they are
> > more consistent between runs, and then tries to do a textual diff of two
> > dumpfiles.
> > 
> > (note that it might renumber labels also)
> 
> Yes, labels *were* being renumbered.  I've fixed that now.
> 
> > With this, the dumpfiles become comparable again.  I see that when
> > rerunning the bug_rdump.txt reproducer, the first big difference between
> > the with and without -fno-strict-aliasing case happens at 035t.fre1.
> > 
> > Note in the following how, without -fno-strict-aliasing, various
> > statements and blocks are eliminated at 035t.fre1, which treats them as
> > dead code.  In particular, it seems to have optimized away
> > OP_TEST_do_jmp_5_0 and OP_TEST_do_skip_5_0 (if I'm reading things
> > right).
> 
> It's OP_TEST_do_jmp_5_14, jmp_9_2 and OP_TEST_do_skip_5_15 that are
> being optimized away by pass fre1 when -fno-strict-aliasing isn't
> supplied.
> 
> I'm attaching a fixed diff, showing the correct label names.
> 
> 
> > My hunch at this time is that this optimization is being too
> > aggressive... for some reason.  I'll continue poking at this.

Dibyendu: what Lua code generated the reproducer?  What is the code
meant to be doing?

I used gcc_jit_function_dump_to_dot to dump the CFG in GraphViz format;
you can see the result here:
 https://dmalcolm.fedorapeople.org/gcc/2015-07-08/rdump.png
and with the printfs here:
 https://dmalcolm.fedorapeople.org/gcc/2015-07-08/rdump_ok.png

I see that both paths out of the "entry" block go through empty blocks
and then into "jmp_5_1".

A similar thing happens later with "jmp_9_2": both paths from the
conditional lead through empty blocks to "jmp_12_3".

Those pairs of empty blocks look odd.  Is the code correct?

Looking at the body of "jmp_5_1", and annotating, I see:

jmp_5_1:
  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;

  comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
     /* this must be true because of the 2nd assignment above */

  comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
     /* similarly this must be false */

  comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
     /* this must be true because of the 1st assignment above */

  isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
     /* hence we have:   true || false && true
        and hence:       true  */

  if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;
      /* hence this always takes the 1st path;
         the 2nd path is indeed dead code */

So it does in fact seem reasonable for the optimizer to optimize away
OP_TEST_do_skip_5_15, and I think that once it does that, it merges
OP_TEST_do_jmp_5_14 and jmp_9_2 into jmp_5_1, and can then do similar
optimizations to the statements that were in jmp_9_2.

So it seems that things I reported pass "fre1" as doing are reasonable.

It seems that the optimizer is only able to assume the above values when
strict aliasing is enabled, but it seems to be a reasonable
optimization.  (I suspect that for some reason the presence of the
printfs also is stopping this optimization; perhaps JIT doesn't know as
much as the C frontend about the lack of side-effects of printf?)

Is the code being supplied correct?  It's not clear to me what it's
meant to be doing, but that CFG looks curious to me.  Maybe the input is
incorrect, but it only turns into a problem when optimized?

FWIW, if this is a CFG issue, note that blocks are cheap in libgccjit; I
find it easiest to simply create a gcc_jit_block * at the entrypoint of
every opcode even if there's no fancy control flow going on; blocks get
immediately consolidated internally, so any redundancy there is very
brief.

Hope this is helpful
Dave

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                           ` David Malcolm
@ 2015-01-01  0:00                             ` David Malcolm
  2015-01-01  0:00                               ` Dibyendu Majumdar
  2015-01-01  0:00                             ` Dibyendu Majumdar
  1 sibling, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 21:03 -0400, David Malcolm wrote:
> On Wed, 2015-07-08 at 22:54 +0100, Dibyendu Majumdar wrote:
> > Apologies I think the previous description of the flow was incorrect.
> > Here is my second attempt (this is doing my head in so I will stop
> > now):
> 
> [snip detailed analysis of bytecode]
> 
> Thanks.
> 
> So it's basically:
> 
>   * do a bunch of stuff
>   * then set R(1) to boolean false in that last LOADBOOL op
>   * then return
> 
> 
> > 12 [3] LOADBOOL 1 0 0
> > 
> >   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
> >   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
> > 
> > Above sets the register 1 to false and this is the return value.
> 
> I've been poring over the dumps:
> https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/
> and I believe the problem is in pass "fre1"; it's eliminating this
> statement for some reason:
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
> 
> so 
>   R1.tt_ = 1 (correct)
> but:
>   R1.value_.i = K0.value_.i  (incorrect, is int 10, not 0)
> 
> The statement is still present at pass 034t.ealias:
> https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/fake.c.034t.ealias
>  
> but is optimized away in pass 035t.fre1:
> https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/fake.c.035t.fre1
> 
> I'll have a more detailed look tomorrow at why fre1 is getting it wrong.
> 
> [snip]

I've managed to create a minimal reproducer for this; see:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812
where libgccjit miscompiles it, but the C frontend (cc1) handles the
equivalent C code just fine (even at -O3, without needing
-fno-strict-aliasing).

So the next step seems to be to step through the fre1 pass in both
libgccjit and in cc1, and to see what's different.

Yay, progress!

Dave


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66811: jit dumps aren't compilable as C (Re: A possible code generation issue)
  2015-01-01  0:00             ` Filed PR jit/66811: jit jumps aren't compilable as C (Re: A possible code generation issue) David Malcolm
@ 2015-01-01  0:00               ` David Malcolm
  0 siblings, 0 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 10:15 -0400, David Malcolm wrote:
> On Mon, 2015-07-06 at 22:29 +0100, Dibyendu Majumdar wrote:
> > On 4 July 2015 at 23:09, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > On 4 July 2015 at 22:41, David Malcolm <dmalcolm@redhat.com> wrote:
> > >>> Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> > >>> and -O3 but with this enabled the benchmarks are degraded.
> > >>
> > >> If "-fno-strict-aliasing" resolved this, then that suggests that there
> > >> are various casts in the code that if this were C would take us into
> > >> "undefined behavior" territory, and the optimizer is trying a little too
> > >> hard.   This isn't C, but similar rules apply.  If that's what this is,
> > >> then this is at least a documentation issue with libgccjit; we need to
> > >> document what the rules are.
> > >>
> > >>
> > >> Of course, it could well be a bug at my end.
> > >>
> > 
> > Dave,
> > 
> > Attached is a hacked version in C of the dump from the code. I thought
> > it might be useful to generate code directly using gcc -O3 -S on this
> > file - from what I can tell the generated code looks different from
> > what I am getting in libgccjit.
> > 
> > BTW the dump of types is problematic in many ways:
> > 1) types are in wrong order
> > 2) function types are incorrectly output
> > 3) array types are incorrectly output
> > 4) in one case as least a pointer was missing.
> > 
> > It would be useful if the generated dump was correct C so that it can
> > directly compiled in gcc.
> 
> Agreed.  I've filed this as an RFE for the jit as:
>   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66811

fixing typo in Subject: s/jumps/dumps/


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00       ` Filed PR jit/66812 for the " David Malcolm
@ 2015-01-01  0:00         ` David Malcolm
  2015-01-01  0:00           ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Wed, 2015-07-08 at 10:21 -0400, David Malcolm wrote:
> On Sat, 2015-07-04 at 16:58 +0100, Dibyendu Majumdar wrote:
> > On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > >> Looks like in the failure case the code is being incorrectly
> > >> optimized. I wonder if this is a manifestation of the get_address bug,
> > >> perhaps the real fix will be better than the patch I am using. I will
> > >> use the latest gcc 5 branch and see if that helps.
> > >>
> > >
> > > Hi Dave,
> > >
> > > I am now using the latest gcc-5-branch from gcc github mirror.
> > > Unfortunately the issue still persists.
> > >
> > > If set optimization level to 0 or 1, then it works ok, but at levels 2
> > > or 3 the break occurs.
> > >
> > 
> > Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> > and -O3 but with this enabled the benchmarks are degraded.
> 
> I've filed the bad code generation issue as:
>   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812
> 
> and I'm investigating it.


Notes on investigation so far.

With the fixes here
  https://gcc.gnu.org/ml/jit/2015-q3/msg00025.html
and here:
  https://gcc.gnu.org/ml/jit/2015-q3/msg00028.html
the reproducer from
 https://gcc.gnu.org/ml/jit/2015-q3/msg00012.html
now correctly fails with:
 error: gcc_jit_context_new_field: unknown size for field
"errorJmp" (type: struct ravi_lua_longjmp)

Upon applying the equivalent of the fix from:
https://github.com/dibyendumajumdar/ravi/commit/d65d2e68fbdcf211ed36deea05727f996ede8296
to the generator you provided, gcc_jit_context_compile completes.

I don't know if it's generating bad code (given that I don't have Ravi
itself running, just the reproducer).  However, I tried comparing the
bug_rdump.txt and bug_rdump_ok.txt reproducers, and tried adding
-fno-strict-aliasing to the former.

I turned on GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING and started comparing
the dumpfiles.

The diffs stay easily comparable until fake.c.018t.ssa, when numbering
differences between temporaries mean that a simple "diff" becomes
unreadable.

So I wrote a tool to try to alleviate this:
  https://github.com/davidmalcolm/gcc-dump-diff
The tool tries to renumber temporaries in dumpfiles so that they are
more consistent between runs, and then tries to do a textual diff of two
dumpfiles.

(note that it might renumber labels also)

With this, the dumpfiles become comparable again.  I see that when
rerunning the bug_rdump.txt reproducer, the first big difference between
the with and without -fno-strict-aliasing case happens at 035t.fre1.

Note in the following how, without -fno-strict-aliasing, various
statements and blocks are eliminated at 035t.fre1, which treats them as
dead code.  In particular, it seems to have optimized away
OP_TEST_do_jmp_5_0 and OP_TEST_do_skip_5_0 (if I'm reading things
right).

My hunch at this time is that this optimization is being too
aggressive... for some reason.  I'll continue poking at this.

--- with-fno-strict-aliasing/fake.c.035t.fre1
+++ without-fno-strict-aliasing/fake.c.035t.fre1
@@ -2,6 +2,15 @@
 
 ;; Function ravif2 (ravif2, funcdef_no=0, decl_uid=364, cgraph_uid=0, symbol_order=0)
 
+Merging blocks 8 and 9
+Removing basic block 10
+Removing basic block 11
+Removing basic block 13
+Removing basic block 12
+Removing basic block 22
+Removing basic block 17
+Merging blocks 8 and 14
+Merging blocks 8 and 15
 ravif2 (struct ravi_lua_State * L)
 {
   struct ravi_TValue * base;
@@ -20,7 +29,6 @@
   <unnamed type> comparison_0_8;
   <unnamed type> comparison_0_9;
   <unnamed type> iftmp.1_0;
-  <unnamed type> iftmp.3_0;
   <unnamed type> iftmp.5_0;
   struct ravi_CallInfo * _0;
   struct ravi_TValue * _0;
@@ -28,31 +36,16 @@
   struct ravi_Proto * _0;
   struct ravi_TValue * _1;
   signed long _0;
+  signed int _0;
+  signed int _1;
+  <unnamed type> _0;
+  signed long _1;
+  signed int _1;
+  struct ravi_CallInfo * _2;
+  struct ravi_TValue * _0;
   struct ravi_Proto * _1;
-  struct ravi_TValue * _2;
-  signed int _0;
-  struct ravi_CallInfo * _2;
-  signed int _1;
-  signed int _2;
-  struct ravi_CallInfo * _3;
   signed int _3;
-  signed int _4;
-  <unnamed type> _0;
-  struct ravi_CallInfo * _4;
-  struct ravi_Proto * _2;
   struct ravi_TValue * _3;
-  signed long _0;
-  struct ravi_Proto * _3;
-  struct ravi_TValue * _4;
-  signed int _0;
-  struct ravi_CallInfo * _5;
-  signed int _6;
-  signed int _7;
-  struct ravi_CallInfo * _6;
-  struct ravi_TValue * _0;
-  struct ravi_Proto * _4;
-  signed int _8;
-  struct ravi_TValue * _6;
 
 entry:
   _0 = L_0(D)->ci;
@@ -66,14 +59,9 @@
   _1 = _0->k;
   _0 = _1->value_.i;
   MEM[(struct ravi_TValue *)base_0 + 16B].value_.i = _0;
-  _1 = cl_0->p;
-  _2 = _1->k;
-  _0 = _2->tt_;
+  _0 = _1->tt_;
   MEM[(struct ravi_TValue *)base_0 + 16B].tt_ = _0;
-  _2 = L_0(D)->ci;
-  base_2 = _2->u.l.base;
-  _1 = MEM[(struct ravi_TValue *)base_1 + 16B].tt_;
-  _2 = MEM[(struct ravi_TValue *)base_1 + 16B].value_.b;
+  _1 = MEM[(struct ravi_TValue *)base_0 + 16B].value_.b;
   if (_1 == 0)
     goto <bb 8>;
   else
@@ -104,119 +92,56 @@
 
   <bb 8>:
   # isfalse_0_4_0 = PHI <1(6), 0(7), 1(2)>
-  MEM[(struct ravi_TValue *)base_1 + 16B].value_.b = 0;
-  MEM[(struct ravi_TValue *)base_1 + 16B].tt_ = 1;
-  _3 = L_0(D)->ci;
-  base_3 = _3->u.l.base;
-  _3 = MEM[(struct ravi_TValue *)base_2 + 16B].tt_;
-  _4 = MEM[(struct ravi_TValue *)base_2 + 16B].value_.b;
+  MEM[(struct ravi_TValue *)base_0 + 16B].value_.b = 0;
+  MEM[(struct ravi_TValue *)base_0 + 16B].tt_ = 1;
+  _0 = 0;
+  _1 = _1->value_.i;
+  MEM[(struct ravi_TValue *)base_0 + 16B].value_.i = _1;
+  _1 = _1->tt_;
+  MEM[(struct ravi_TValue *)base_0 + 16B].tt_ = _1;
   if (_3 == 0)
-    goto <bb 14>;
+    goto <bb 13>;
   else
     goto <bb 9>;
 
   <bb 9>:
   if (_3 == 1)
+    goto <bb 11>;
+  else
     goto <bb 10>;
-  else
-    goto <bb 11>;
 
   <bb 10>:
-  if (_4 == 0)
-    goto <bb 12>;
-  else
-    goto <bb 11>;
 
   <bb 11>:
+  # iftmp.5_0 = PHI <1(9), 0(10)>
+  if (iftmp.5_0 != 0)
+    goto <bb 13>;
+  else
+    goto <bb 12>;
 
   <bb 12>:
-  # iftmp.3_0 = PHI <1(10), 0(11)>
-  if (iftmp.3_0 != 0)
-    goto <bb 14>;
-  else
-    goto <bb 13>;
 
   <bb 13>:
-
-  <bb 14>:
-  # isfalse_0_10_0 = PHI <1(12), 0(13), 1(8)>
-  _0 = ~isfalse_0_10_0;
-  if (isfalse_0_10_0 != 0)
-    goto <bb 15> (OP_TEST_do_jmp_5_0);
+  # isfalse_0_16_0 = PHI <1(11), 0(12), 1(8)>
+  MEM[(struct ravi_TValue *)base_0 + 16B].tt_ = 1;
+  printf ("OP_RETURN(pc=%d) return %d args", 13, 1);
+  _2 = L_0(D)->ci;
+  base_2 = _2->u.l.base;
+  _0 = base_2 + 32;
+  L_0(D)->top = _0;
+  _1 = cl_0->p;
+  _3 = _1->sizep;
+  if (_4 > 0)
+    goto <bb 14> (OP_RETURN_if_sizep_gt_0_12_0);
   else
-    goto <bb 22> (OP_TEST_do_skip_5_0);
-
-OP_TEST_do_jmp_5_0:
-jmp_9_0:
-  _4 = L_0(D)->ci;
-  base_4 = _4->u.l.base;
-  _2 = cl_0->p;
-  _3 = _2->k;
-  _0 = _3->value_.i;
-  MEM[(struct ravi_TValue *)base_3 + 16B].value_.i = _0;
-  _3 = cl_0->p;
-  _4 = _3->k;
-  _0 = _4->tt_;
-  MEM[(struct ravi_TValue *)base_3 + 16B].tt_ = _0;
-  _5 = L_0(D)->ci;
-  base_5 = _5->u.l.base;
-  _6 = MEM[(struct ravi_TValue *)base_4 + 16B].tt_;
-  _7 = MEM[(struct ravi_TValue *)base_4 + 16B].value_.b;
-  if (_5 == 0)
-    goto <bb 21>;
-  else
-    goto <bb 16>;
-
-  <bb 16>:
-  if (_5 == 1)
-    goto <bb 17>;
-  else
-    goto <bb 18>;
-
-  <bb 17>:
-  if (_6 == 0)
-    goto <bb 19>;
-  else
-    goto <bb 18>;
-
-  <bb 18>:
-
-  <bb 19>:
-  # iftmp.5_0 = PHI <1(17), 0(18)>
-  if (iftmp.5_0 != 0)
-    goto <bb 21>;
-  else
-    goto <bb 20>;
-
-  <bb 20>:
-
-  <bb 21>:
-  # isfalse_0_16_0 = PHI <1(19), 0(20), 1(15)>
-  MEM[(struct ravi_TValue *)base_4 + 16B].value_.b = 0;
-  MEM[(struct ravi_TValue *)base_4 + 16B].tt_ = 1;
-  printf ("OP_RETURN(pc=%d) return %d args", 13, 1);
-  _6 = L_0(D)->ci;
-  base_6 = _6->u.l.base;
-  _0 = base_6 + 32;
-  L_0(D)->top = _0;
-  _4 = cl_0->p;
-  _8 = _4->sizep;
-  if (_7 > 0)
-    goto <bb 23> (OP_RETURN_if_sizep_gt_0_12_0);
-  else
-    goto <bb 24> (OP_RETURN_else_sizep_gt_0_12_0);
-
-OP_TEST_do_skip_5_0:
-  base_3->value_.b = 1;
-  base_3->tt_ = 1;
-  goto <bb 15> (OP_TEST_do_jmp_5_0);
+    goto <bb 15> (OP_RETURN_else_sizep_gt_0_12_0);
 
 OP_RETURN_if_sizep_gt_0_12_0:
-  luaF_close (L_0(D), base_6);
+  luaF_close (L_0(D), base_2);
 
 OP_RETURN_else_sizep_gt_0_12_0:
-  _6 = base_6 + 16;
-  luaD_poscall (L_0(D), _6);
+  _3 = base_2 + 16;
+  luaD_poscall (L_0(D), _3);
   return 1;
 
 }


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                           ` David Malcolm
@ 2015-01-01  0:00                             ` Dibyendu Majumdar
  2015-01-01  0:00                               ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 9 July 2015 at 20:22, David Malcolm <dmalcolm@redhat.com> wrote:
>> but it does seem to have caused
>> the optimization bug to go away - i.e. the tests now pass. I will run
>> more tests tomorrow to see if this is true under all optimization
>> settings.
>
> FWIW, I suspect that this is effectively just papering over the problem,
> and that it will come back to bite us, just with a more complicated
> reproducer :(
>

Yes agree.

> Does something like:

>
>
> function x(some_arg)
>   local IX
>   if ((some_arg or true) and false) then
>     IX = true
>   end;
>   return ((some_arg or true) and false)
> end
> assert(x() == false)
>
>
>
> exhibit the bug?  (have never programmed Lua, so this probably even
> isn't syntactically correct, but hopefully you get the idea, with
> const-propagation of 10's value and typecode lots of code gets optimized
> away, so using an arg of unknown type to thwart that and hopefully get
> the bug to re-manifest itself).
>

Actually that is valid Lua. Since you aren't passing a value to x()
then some_arg will be NIL. In Lua, NIL and false are false, everything
else is true.
The example above works okay as is, and also when I pass 10 to x().
As usual with certain bugs - only a specific set of circumstances trigger it.

>
> (Note that I've managed to isolate a minimal reproducer for the problem,
> as noted in another mail this thread)
>

Yes that is very good news. Hope you will soon discover the root cause.

Thanks and Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00 A possible code generation issue Dibyendu Majumdar
@ 2015-01-01  0:00 ` Dibyendu Majumdar
  2015-01-01  0:00   ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: jit

[-- Attachment #1: Type: text/plain, Size: 809 bytes --]

Also attached are the initial gimples .

Looks like in the failure case the code is being incorrectly
optimized. I wonder if this is a manifestation of the get_address bug,
perhaps the real fix will be better than the patch I am using. I will
use the latest gcc 5 branch and see if that helps.

Regards

> I am getting a failure in one of the Lua tests. Attached are two dumps:
>
> 1. bug_fdump.txt and bug_rdump.txt - these are the versions that fail.
>
>
> 2. The bug_fdump_ok.txt and bug_rdump_ok.txt - this runs ok. The only
> difference between this version and the above is a debug printf call
> in this; so the printf call somehow seems to alter the code being
> generated.
>
> I have also attached the corresponding asm files.
>
>
> I am still using my patched version - not the latest from 5 branch.

[-- Attachment #2: bug_asm.txt --]
[-- Type: text/plain, Size: 7987 bytes --]

ravif2 (struct ravi_lua_State * L)
{
  struct ravi_CallInfo * D.1181;
  struct ravi_TValue * D.1182;
  sizetype D.1183;
  struct ravi_TValue * D.1184;
  struct ravi_Proto * D.1185;
  struct ravi_TValue * D.1186;
  sizetype D.1187;
  struct ravi_TValue * D.1188;
  signed long D.1189;
  signed int D.1190;
  signed int D.1191;
  signed int D.1192;
  <unnamed type> iftmp.3;
  <unnamed type> iftmp.4;
  <unnamed type> iftmp.5;
  <unnamed type> iftmp.6;
  <unnamed type> D.1213;
  signed int D.1214;
  <unnamed type> iftmp.7;
  <unnamed type> iftmp.8;
  sizetype D.1225;
  struct ravi_TValue * D.1226;
  signed int D.1227;
  struct ravi_TValue * D.1228;
  signed int D.1229;
  <unnamed type> comparison_0_26;
  <unnamed type> comparison_0_22;
  <unnamed type> comparison_0_19;
  <unnamed type> comparison_0_18;
  <unnamed type> comparison_0_17;
  <unnamed type> isfalse_0_16;
  <unnamed type> comparison_0_13;
  <unnamed type> comparison_0_12;
  <unnamed type> comparison_0_11;
  <unnamed type> isfalse_0_10;
  <unnamed type> comparison_0_7;
  <unnamed type> comparison_0_6;
  <unnamed type> comparison_0_5;
  <unnamed type> isfalse_0_4;
  struct ravi_LClosure * cl;
  struct ravi_TValue * base;

  entry:
  D.1181 = L->ci;
  D.1182 = D.1181->func;
  cl = D.1182->value_.gc;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1181 = L->ci;
  raviV_op_loadnil (D.1181, 0, 0);
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1189 = D.1188->value_.i;
  D.1184->value_.i = D.1189;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1190 = D.1188->tt_;
  D.1184->tt_ = D.1190;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_5 = D.1191 == 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_6 = D.1191 == 1;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1192 = D.1184->value_.b;
  comparison_0_7 = D.1192 == 0;
  if (comparison_0_5 != 0) goto <D.1194>; else goto <D.1197>;
  <D.1197>:
  if (comparison_0_6 != 0) goto <D.1201>; else goto <D.1199>;
  <D.1201>:
  if (comparison_0_7 != 0) goto <D.1202>; else goto <D.1199>;
  <D.1202>:
  iftmp.4 = 1;
  goto <D.1200>;
  <D.1199>:
  iftmp.4 = 0;
  <D.1200>:
  if (iftmp.4 != 0) goto <D.1194>; else goto <D.1195>;
  <D.1194>:
  iftmp.3 = 1;
  goto <D.1196>;
  <D.1195>:
  iftmp.3 = 0;
  <D.1196>:
  isfalse_0_4 = iftmp.3;
  if (isfalse_0_4 == 0) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;
  jmp_5_1:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->value_.b = 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->tt_ = 1;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_11 = D.1191 == 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_12 = D.1191 == 1;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1192 = D.1184->value_.b;
  comparison_0_13 = D.1192 == 0;
  if (comparison_0_11 != 0) goto <D.1204>; else goto <D.1207>;
  <D.1207>:
  if (comparison_0_12 != 0) goto <D.1211>; else goto <D.1209>;
  <D.1211>:
  if (comparison_0_13 != 0) goto <D.1212>; else goto <D.1209>;
  <D.1212>:
  iftmp.6 = 1;
  goto <D.1210>;
  <D.1209>:
  iftmp.6 = 0;
  <D.1210>:
  if (iftmp.6 != 0) goto <D.1204>; else goto <D.1205>;
  <D.1204>:
  iftmp.5 = 1;
  goto <D.1206>;
  <D.1205>:
  iftmp.5 = 0;
  <D.1206>:
  isfalse_0_10 = iftmp.5;
  D.1213 = ~isfalse_0_10;
  D.1214 = (signed int) D.1213;
  if (D.1214 == 0) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;
  jmp_9_2:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1189 = D.1188->value_.i;
  D.1184->value_.i = D.1189;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1190 = D.1188->tt_;
  D.1184->tt_ = D.1190;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_17 = D.1191 == 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_18 = D.1191 == 1;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1192 = D.1184->value_.b;
  comparison_0_19 = D.1192 == 0;
  if (comparison_0_17 != 0) goto <D.1216>; else goto <D.1219>;
  <D.1219>:
  if (comparison_0_18 != 0) goto <D.1223>; else goto <D.1221>;
  <D.1223>:
  if (comparison_0_19 != 0) goto <D.1224>; else goto <D.1221>;
  <D.1224>:
  iftmp.8 = 1;
  goto <D.1222>;
  <D.1221>:
  iftmp.8 = 0;
  <D.1222>:
  if (iftmp.8 != 0) goto <D.1216>; else goto <D.1217>;
  <D.1216>:
  iftmp.7 = 1;
  goto <D.1218>;
  <D.1217>:
  iftmp.7 = 0;
  <D.1218>:
  isfalse_0_16 = iftmp.7;
  if (isfalse_0_16 == 0) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;
  jmp_12_3:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->value_.b = 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->tt_ = 1;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1225 = 32;
  D.1226 = base + D.1225;
  L->top = D.1226;
  D.1185 = cl->p;
  D.1227 = D.1185->sizep;
  comparison_0_22 = D.1227 > 0;
  if (comparison_0_22 != 0) goto OP_RETURN_if_sizep_gt_0_12_23; else goto OP_RETURN_else_sizep_gt_0_12_24;
  OP_TEST_do_jmp_2_8:
  goto jmp_5_1;
  OP_TEST_do_skip_2_9:
  goto jmp_5_1;
  OP_TEST_do_jmp_5_14:
  goto jmp_9_2;
  OP_TEST_do_skip_5_15:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1187 = 0;
  D.1228 = base + D.1187;
  D.1228->value_.b = 1;
  D.1187 = 0;
  D.1228 = base + D.1187;
  D.1228->tt_ = 1;
  goto jmp_9_2;
  OP_TEST_do_jmp_9_20:
  goto jmp_12_3;
  OP_TEST_do_skip_9_21:
  goto jmp_12_3;
  OP_RETURN_if_sizep_gt_0_12_23:
  luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_12_24;
  OP_RETURN_else_sizep_gt_0_12_24:
  D.1183 = 16;
  D.1184 = base + D.1183;
  luaD_poscall (L, D.1184);
  D.1229 = 1;
  return D.1229;
  OP_RETURN_13_25:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1187 = 0;
  D.1228 = base + D.1187;
  L->top = D.1228;
  D.1185 = cl->p;
  D.1227 = D.1185->sizep;
  comparison_0_26 = D.1227 > 0;
  if (comparison_0_26 != 0) goto OP_RETURN_if_sizep_gt_0_13_27; else goto OP_RETURN_else_sizep_gt_0_13_28;
  OP_RETURN_if_sizep_gt_0_13_27:
  luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_13_28;
  OP_RETURN_else_sizep_gt_0_13_28:
  D.1187 = 0;
  D.1228 = base + D.1187;
  luaD_poscall (L, D.1228);
  D.1229 = 1;
  return D.1229;
}


	.file	"fake.c"
	.section	.text.unlikely,"ax",@progbits
.LCOLDB1:
	.text
.LHOTB1:
	.p2align 4,,15
	.globl	ravif2
	.type	ravif2, @function
ravif2:
.LFB1:
	.cfi_startproc
.L35:
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	xorl	%edx, %edx
	xorl	%esi, %esi
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	movq	%rdi, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	movq	32(%rdi), %rdi
	movq	(%rdi), %rax
	movq	(%rax), %r12
	call	raviV_op_loadnil@PLT
	movq	32(%rbp), %rax
	movq	32(%rax), %rbx
	movq	24(%r12), %rax
	movq	48(%rax), %rdx
	movl	32(%rax), %eax
	movq	(%rdx), %rcx
	movl	$1, 24(%rbx)
	movq	%rcx, 16(%rbx)
	movq	(%rdx), %rdx
	movq	%rdx, 16(%rbx)
	leaq	32(%rbx), %rdx
	movq	%rdx, 16(%rbp)
	testl	%eax, %eax
	jle	.L36
.L37:
	movq	%rbx, %rsi
	movq	%rbp, %rdi
	call	luaF_close@PLT
.L36:
	leaq	16(%rbx), %rsi
	movq	%rbp, %rdi
	call	luaD_poscall@PLT
	popq	%rbx
	.cfi_def_cfa_offset 24
	movl	$1, %eax
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE1:
	.size	ravif2, .-ravif2
	.section	.text.unlikely
.LCOLDE1:
	.text
.LHOTE1:
	.ident	"GCC: (GNU) 5.1.0"
	.section	.note.GNU-stack,"",@progbits
../build/lua: assertion failed!
stack traceback:
	[C]: in function 'assert'
	bug.lua: in main chunk
	[C]: in ?

[-- Attachment #3: bug_asm_ok.txt --]
[-- Type: text/plain, Size: 9277 bytes --]

ravif2 (struct ravi_lua_State * L)
{
  struct ravi_CallInfo * D.1181;
  struct ravi_TValue * D.1182;
  sizetype D.1183;
  struct ravi_TValue * D.1184;
  struct ravi_Proto * D.1185;
  struct ravi_TValue * D.1186;
  sizetype D.1187;
  struct ravi_TValue * D.1188;
  signed long D.1189;
  signed int D.1190;
  signed int D.1191;
  signed int D.1192;
  <unnamed type> iftmp.3;
  <unnamed type> iftmp.4;
  <unnamed type> iftmp.5;
  <unnamed type> iftmp.6;
  <unnamed type> D.1213;
  signed int D.1214;
  <unnamed type> iftmp.7;
  <unnamed type> iftmp.8;
  sizetype D.1225;
  struct ravi_TValue * D.1226;
  signed int D.1227;
  struct ravi_TValue * D.1228;
  signed int D.1229;
  <unnamed type> comparison_0_26;
  <unnamed type> comparison_0_22;
  <unnamed type> comparison_0_19;
  <unnamed type> comparison_0_18;
  <unnamed type> comparison_0_17;
  <unnamed type> isfalse_0_16;
  <unnamed type> comparison_0_13;
  <unnamed type> comparison_0_12;
  <unnamed type> comparison_0_11;
  <unnamed type> isfalse_0_10;
  <unnamed type> comparison_0_7;
  <unnamed type> comparison_0_6;
  <unnamed type> comparison_0_5;
  <unnamed type> isfalse_0_4;
  struct ravi_LClosure * cl;
  struct ravi_TValue * base;

  entry:
  D.1181 = L->ci;
  D.1182 = D.1181->func;
  cl = D.1182->value_.gc;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1181 = L->ci;
  raviV_op_loadnil (D.1181, 0, 0);
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1189 = D.1188->value_.i;
  D.1184->value_.i = D.1189;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1190 = D.1188->tt_;
  D.1184->tt_ = D.1190;
  printf ("OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to %d\n", 3, 1, 5);
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_5 = D.1191 == 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_6 = D.1191 == 1;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1192 = D.1184->value_.b;
  comparison_0_7 = D.1192 == 0;
  if (comparison_0_5 != 0) goto <D.1194>; else goto <D.1197>;
  <D.1197>:
  if (comparison_0_6 != 0) goto <D.1201>; else goto <D.1199>;
  <D.1201>:
  if (comparison_0_7 != 0) goto <D.1202>; else goto <D.1199>;
  <D.1202>:
  iftmp.4 = 1;
  goto <D.1200>;
  <D.1199>:
  iftmp.4 = 0;
  <D.1200>:
  if (iftmp.4 != 0) goto <D.1194>; else goto <D.1195>;
  <D.1194>:
  iftmp.3 = 1;
  goto <D.1196>;
  <D.1195>:
  iftmp.3 = 0;
  <D.1196>:
  isfalse_0_4 = iftmp.3;
  if (isfalse_0_4 == 0) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;
  jmp_5_1:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->value_.b = 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->tt_ = 1;
  printf ("OP_TEST(%d C=0) if (reg(A=%d)) then skip next else jmp to %d\n", 6, 1, 9);
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_11 = D.1191 == 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_12 = D.1191 == 1;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1192 = D.1184->value_.b;
  comparison_0_13 = D.1192 == 0;
  if (comparison_0_11 != 0) goto <D.1204>; else goto <D.1207>;
  <D.1207>:
  if (comparison_0_12 != 0) goto <D.1211>; else goto <D.1209>;
  <D.1211>:
  if (comparison_0_13 != 0) goto <D.1212>; else goto <D.1209>;
  <D.1212>:
  iftmp.6 = 1;
  goto <D.1210>;
  <D.1209>:
  iftmp.6 = 0;
  <D.1210>:
  if (iftmp.6 != 0) goto <D.1204>; else goto <D.1205>;
  <D.1204>:
  iftmp.5 = 1;
  goto <D.1206>;
  <D.1205>:
  iftmp.5 = 0;
  <D.1206>:
  isfalse_0_10 = iftmp.5;
  D.1213 = ~isfalse_0_10;
  D.1214 = (signed int) D.1213;
  if (D.1214 == 0) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;
  jmp_9_2:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1189 = D.1188->value_.i;
  D.1184->value_.i = D.1189;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1185 = cl->p;
  D.1186 = D.1185->k;
  D.1187 = 0;
  D.1188 = D.1186 + D.1187;
  D.1190 = D.1188->tt_;
  D.1184->tt_ = D.1190;
  printf ("OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to %d\n", 10, 1, 12);
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_17 = D.1191 == 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1191 = D.1184->tt_;
  comparison_0_18 = D.1191 == 1;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1192 = D.1184->value_.b;
  comparison_0_19 = D.1192 == 0;
  if (comparison_0_17 != 0) goto <D.1216>; else goto <D.1219>;
  <D.1219>:
  if (comparison_0_18 != 0) goto <D.1223>; else goto <D.1221>;
  <D.1223>:
  if (comparison_0_19 != 0) goto <D.1224>; else goto <D.1221>;
  <D.1224>:
  iftmp.8 = 1;
  goto <D.1222>;
  <D.1221>:
  iftmp.8 = 0;
  <D.1222>:
  if (iftmp.8 != 0) goto <D.1216>; else goto <D.1217>;
  <D.1216>:
  iftmp.7 = 1;
  goto <D.1218>;
  <D.1217>:
  iftmp.7 = 0;
  <D.1218>:
  isfalse_0_16 = iftmp.7;
  if (isfalse_0_16 == 0) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;
  jmp_12_3:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->value_.b = 0;
  D.1183 = 16;
  D.1184 = base + D.1183;
  D.1184->tt_ = 1;
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1225 = 32;
  D.1226 = base + D.1225;
  L->top = D.1226;
  D.1185 = cl->p;
  D.1227 = D.1185->sizep;
  comparison_0_22 = D.1227 > 0;
  if (comparison_0_22 != 0) goto OP_RETURN_if_sizep_gt_0_12_23; else goto OP_RETURN_else_sizep_gt_0_12_24;
  OP_TEST_do_jmp_2_8:
  goto jmp_5_1;
  OP_TEST_do_skip_2_9:
  goto jmp_5_1;
  OP_TEST_do_jmp_5_14:
  goto jmp_9_2;
  OP_TEST_do_skip_5_15:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1187 = 0;
  D.1228 = base + D.1187;
  D.1228->value_.b = 1;
  D.1187 = 0;
  D.1228 = base + D.1187;
  D.1228->tt_ = 1;
  goto jmp_9_2;
  OP_TEST_do_jmp_9_20:
  goto jmp_12_3;
  OP_TEST_do_skip_9_21:
  goto jmp_12_3;
  OP_RETURN_if_sizep_gt_0_12_23:
  luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_12_24;
  OP_RETURN_else_sizep_gt_0_12_24:
  D.1183 = 16;
  D.1184 = base + D.1183;
  luaD_poscall (L, D.1184);
  D.1229 = 1;
  return D.1229;
  OP_RETURN_13_25:
  D.1181 = L->ci;
  base = D.1181->u.l.base;
  D.1187 = 0;
  D.1228 = base + D.1187;
  L->top = D.1228;
  D.1185 = cl->p;
  D.1227 = D.1185->sizep;
  comparison_0_26 = D.1227 > 0;
  if (comparison_0_26 != 0) goto OP_RETURN_if_sizep_gt_0_13_27; else goto OP_RETURN_else_sizep_gt_0_13_28;
  OP_RETURN_if_sizep_gt_0_13_27:
  luaF_close (L, base);
  goto OP_RETURN_else_sizep_gt_0_13_28;
  OP_RETURN_else_sizep_gt_0_13_28:
  D.1187 = 0;
  D.1228 = base + D.1187;
  luaD_poscall (L, D.1228);
  D.1229 = 1;
  return D.1229;
}


	.file	"fake.c"
	.section	.rodata
	.align 8
.LC1:
	.ascii	"OP_TEST(%d C=1)) if (!reg(A=%d)) then skip next else jmp to "
	.ascii	"%d\n"
	.zero	138
	.align 8
.LC2:
	.ascii	"OP_TEST(%d C=0) if (reg(A=%d)) then skip next else jmp to %d"
	.ascii	"\n"
	.zero	140
	.section	.text.unlikely,"ax",@progbits
.LCOLDB3:
	.text
.LHOTB3:
	.p2align 4,,15
	.globl	ravif2
	.type	ravif2, @function
ravif2:
.LFB1:
	.cfi_startproc
.L35:
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	xorl	%edx, %edx
	xorl	%esi, %esi
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	movq	%rdi, %rbx
	movq	32(%rdi), %rdi
	movq	(%rdi), %rax
	movq	(%rax), %r12
	call	raviV_op_loadnil@PLT
	movq	32(%rbx), %rax
	movl	$3, %esi
	leaq	.LC1(%rip), %rdi
	movq	24(%r12), %rdx
	movq	32(%rax), %rax
	movq	48(%rdx), %rdx
	movq	(%rdx), %rcx
	movl	8(%rdx), %edx
	movq	%rcx, 16(%rax)
	movl	$5, %ecx
	movl	%edx, 24(%rax)
	movl	$1, %edx
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movl	$1, %edx
	movl	$9, %ecx
	leaq	.LC2(%rip), %rdi
	movl	$6, %esi
	movq	32(%rax), %rax
	movl	$0, 16(%rax)
	movl	$1, 24(%rax)
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movq	32(%rax), %rax
	movl	24(%rax), %edx
	testl	%edx, %edx
	je	.L38
	movl	16(%rax), %ecx
	testl	%ecx, %ecx
	je	.L51
.L37:
	movl	$1, (%rax)
	movl	$1, 8(%rax)
.L36:
.L38:
	movq	24(%r12), %rdx
	movl	$10, %esi
	leaq	.LC1(%rip), %rdi
	movq	48(%rdx), %rdx
	movq	(%rdx), %rcx
	movl	8(%rdx), %edx
	movq	%rcx, 16(%rax)
	movl	$12, %ecx
	movl	%edx, 24(%rax)
	movl	$1, %edx
	xorl	%eax, %eax
	call	printf@PLT
	movq	32(%rbx), %rax
	movq	32(%rax), %rbp
	leaq	32(%rbp), %rax
	movl	$0, 16(%rbp)
	movl	$1, 24(%rbp)
	movq	%rax, 16(%rbx)
	movq	24(%r12), %rax
	movl	32(%rax), %eax
	testl	%eax, %eax
	jle	.L40
.L39:
	movq	%rbp, %rsi
	movq	%rbx, %rdi
	call	luaF_close@PLT
.L40:
	leaq	16(%rbp), %rsi
	movq	%rbx, %rdi
	call	luaD_poscall@PLT
	popq	%rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	movl	$1, %eax
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L51:
	.cfi_restore_state
	cmpl	$1, %edx
	jne	.L37
	jmp	.L38
	.cfi_endproc
.LFE1:
	.size	ravif2, .-ravif2
	.section	.text.unlikely
.LCOLDE3:
	.text
.LHOTE3:
	.ident	"GCC: (GNU) 5.1.0"
	.section	.note.GNU-stack,"",@progbits

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                               ` David Malcolm
  2015-01-01  0:00                                 ` David Malcolm
@ 2015-01-01  0:00                                 ` Dibyendu Majumdar
  1 sibling, 0 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 9 July 2015 at 22:06, David Malcolm <dmalcolm@redhat.com> wrote:
> On Thu, 2015-07-09 at 21:52 +0100, Dibyendu Majumdar wrote:
>> On 9 July 2015 at 20:22, David Malcolm <dmalcolm@redhat.com> wrote:
>> >> but it does seem to have caused
>> >> the optimization bug to go away - i.e. the tests now pass. I will run
>> >> more tests tomorrow to see if this is true under all optimization
>> >> settings.
>> >
>> > FWIW, I suspect that this is effectively just papering over the problem,
>> > and that it will come back to bite us, just with a more complicated
>> > reproducer :(
>> >
>>
>> Yes agree.
>>
>> > Does something like:
>>
>> >
>> >
>> > function x(some_arg)
>> >   local IX
>> >   if ((some_arg or true) and false) then
>> >     IX = true
>> >   end;
>> >   return ((some_arg or true) and false)
>> > end
>> > assert(x() == false)
>> >
>> >
>> >
>> > exhibit the bug?  (have never programmed Lua, so this probably even
>> > isn't syntactically correct, but hopefully you get the idea, with
>> > const-propagation of 10's value and typecode lots of code gets optimized
>> > away, so using an arg of unknown type to thwart that and hopefully get
>> > the bug to re-manifest itself).
>> >
>>
>> Actually that is valid Lua. Since you aren't passing a value to x()
>> then some_arg will be NIL. In Lua, NIL and false are false, everything
>> else is true.
>> The example above works okay as is, and also when I pass 10 to x().
>> As usual with certain bugs - only a specific set of circumstances trigger it.
>>
>> >
>> > (Note that I've managed to isolate a minimal reproducer for the problem,
>> > as noted in another mail this thread)
>> >
>>
>> Yes that is very good news. Hope you will soon discover the root cause.
>
> Root cause found: it turns out that part of GCC's alias analysis is
> deferred to a frontend-specific hook:
>   LANG_HOOKS_GET_ALIAS_SET

Fanstastic news!

>
> For C/C++/Objective C this hook allows type-punning when directly
> accessing unions, and the Ravi code assumes this.
>
> I hadn't implemented this hook for libgccjit, so the optimizer assumes
> that in this sequence of assignments:
>
>   (1) R1.value_.b = 0;
>   (2) R1.value_.i = CONST0.value_.i;
>   (3) R1.value_.b = 0;
>
> that (1) and (3) have the same LHS, but (2) has a different LHS.
>
> Hence it assumes that (3) is redundant, due to (1), and optimizes it
> away.
>
> See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812 for more gory
> details.
>
> The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
> API thus giving libgccjit some rules about aliasing.  Some options:
>
> (i) make it identical to C.
> (ii) give the client code some control over this
>
> My initial gut feeling is to go with (i).

One of the pains in LLVM is that one has to manually provide aliasing
info - so while I don't fully understand what above means - if the
client code gets C like behaviour by default that would be great.
Maybe later on you can provide more flexibility.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00             ` David Malcolm
  2015-01-01  0:00               ` Dibyendu Majumdar
@ 2015-01-01  0:00               ` Dibyendu Majumdar
  2015-01-01  0:00                 ` David Malcolm
  2015-01-01  0:00               ` David Malcolm
  2 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 18:46, David Malcolm <dmalcolm@redhat.com> wrote:
> Dibyendu: what Lua code generated the reproducer?  What is the code
> meant to be doing?
>

Hi Dave - the Lua test is this:

function x()
  local IX
  if ((10 or true) and false) then
    IX = true
  end;
  return ((10 or true) and false)
end
assert(x() == false)

In the original test IX is an upvalue - i.e. a variable in outer
scope. This is my standalone version of the test. The original test is
generated as part of the Lua test suite - its purpose is to test
various permutations of boolean operators.

The original test compares IX and the function return.

The issue is that this test should return false - if you see the
return statement. However when -O2 or -O3 is enabled it returns true.

The if statement is indeed redundant in this cut down version as IX is
a local variable. But the return statement is not redundant.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                       ` Dibyendu Majumdar
@ 2015-01-01  0:00                         ` Dibyendu Majumdar
  2015-01-01  0:00                           ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

Apologies I think the previous description of the flow was incorrect.
Here is my second attempt (this is doing my head in so I will stop
now):

1 [2] LOADNIL   0 0

entry:
  cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
  (void)raviV_op_loadnil (L->ci, (int)0, (int)0);

Above sets register 0 (local variable IX) to NIL

2 [3] LOADK     1 -1 ; 10

  (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
  (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;

This sets the register at 1 (temporary) to 10.

3 [3] TEST     1 1
4 [3] JMP       0 0 ; to 5

The above two bytecodes go together. This says that if register 1 is
true then do JMP else skip JMP.

So we get:

  comparison_0_5 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_6 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_7 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
  if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;

Since register 1 is true (ie. not false) we therefore jump to jmp_2_8.

OP_TEST_do_jmp_2_8:
  goto jmp_5_1;

jmp_5_1:

5 [3] LOADBOOL 1 0 0

This is setting register 1 to false so we get:

  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;

Next instruction is:

6 [3] TEST     1 0
7 [3] JMP       0 1 ; to 9

Now this is saying that if register 1 is false then do JMP else skip JMP.

  comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
  if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto
OP_TEST_do_skip_5_15;

Since we know that register 1 is false as above then the code should
do the jump to jmp_5_14:

OP_TEST_do_jmp_5_14:
  goto jmp_9_2;

Next we jump to 9_2 which is the start of the return statement.

Here we essentially have a repeat of what was in entry block:

9 [3] LOADK     1 -1 ; 10
10 [3] TEST     1 1
11 [3] JMP       0 0 ; to 12

jmp_9_2:
  (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
  (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
  comparison_0_17 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_18 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_19 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_16 = comparison_0_17 || comparison_0_18 && comparison_0_19;
  if (!(isfalse_0_16)) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;

So the JMP is taken and we go to 9_20:
OP_TEST_do_jmp_9_20:
  goto jmp_12_3;

jmp_12_3:

12 [3] LOADBOOL 1 0 0

  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;

Above sets the register 1 to false and this is the return value.

Next the return instruction begins:

  L->top = &L->ci->u.l.base[(int)2];
  comparison_0_22 = cl->p->sizep > (int)0;
  if (comparison_0_22) goto OP_RETURN_if_sizep_gt_0_12_23; else goto
OP_RETURN_else_sizep_gt_0_12_24;

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00 ` Dibyendu Majumdar
@ 2015-01-01  0:00   ` Dibyendu Majumdar
  2015-01-01  0:00     ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: jit

On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> Looks like in the failure case the code is being incorrectly
> optimized. I wonder if this is a manifestation of the get_address bug,
> perhaps the real fix will be better than the patch I am using. I will
> use the latest gcc 5 branch and see if that helps.
>

Hi Dave,

I am now using the latest gcc-5-branch from gcc github mirror.
Unfortunately the issue still persists.

If set optimization level to 0 or 1, then it works ok, but at levels 2
or 3 the break occurs.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00           ` Dibyendu Majumdar
@ 2015-01-01  0:00             ` Dibyendu Majumdar
  2015-01-01  0:00               ` PR jit/66783 (Re: A possible code generation issue) David Malcolm
  2015-01-01  0:00             ` Filed PR jit/66811: jit jumps aren't compilable as C (Re: A possible code generation issue) David Malcolm
  1 sibling, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 6 July 2015 at 22:29, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> BTW the dump of types is problematic in many ways:
> 1) types are in wrong order
> 2) function types are incorrectly output
> 3) array types are incorrectly output
> 4) in one case as least a pointer was missing.

Apologies the last point (4) was actually due to a bug in my code -
but here is what happened.

t->lua_longjumpT = gcc_jit_context_new_opaque_struct(ravi->context, NULL,
"ravi_lua_longjmp");
t->plua_longjumpT = gcc_jit_struct_as_type(t->lua_longjumpT);

The plua_longjmpT was meant to be a pointer to the struct.

Surprisingly I was able to use the incomplete type in another struct!
I think this just goes to show that you need to have some form of
run-time type assertion to detect such issues.

Regards

Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                         ` Dibyendu Majumdar
@ 2015-01-01  0:00                                           ` Dibyendu Majumdar
  2015-01-01  0:00                                             ` David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 10 July 2015 at 01:14, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> On 10 July 2015 at 00:30, David Malcolm <dmalcolm@redhat.com> wrote:
>> On Thu, 2015-07-09 at 23:20 +0100, Dibyendu Majumdar wrote:
>>> On 9 July 2015 at 22:24, David Malcolm <dmalcolm@redhat.com> wrote:
>>> > On Thu, 2015-07-09 at 17:15 -0400, David Malcolm wrote:
>>> >> On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:
>>> >>
>>> >> (snip)
>>> >>
>>> >> > The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
>>> >> > API thus giving libgccjit some rules about aliasing.  Some options:
>>> >> >
>>> >> > (i) make it identical to C.
>>> >> > (ii) give the client code some control over this
>>> >> >
>>> >> > My initial gut feeling is to go with (i).
>>> >>
>>> >> ...or possibly to do what the link-time optimizer does, which is to use
>>> >> this internal API:
>>> >>
>>> >> /* Return the typed-based alias set for T, which may be an expression
>>> >>    or a type.  Return -1 if we don't do anything special.  */
>>> >>
>>> >> alias_set_type
>>> >> gimple_get_alias_set (tree t)
>>> >>
>>> >> which does almost all of what the C frontend does.  I'll try to cook up
>>> >> a patch.
>>> >
>>> > Attached is a patch [1] which fixes the minimal reproducer I created,
>>> > and the reproducer you sent.
>>> >
>>> > Does it work for you?
>>> >
>>>
>>> I get this error when compiling:
>>>
>>> In file included from ../../gcc-5.1.0/gcc/jit/dummy-frontend.c:54:0:
>>> ../../gcc-5.1.0/gcc/gimple.h: In function ‘void
>>> gimple_call_set_fndecl(gimple, tree)’:
>>> ../../gcc-5.1.0/gcc/gimple.h:2769:77: error:
>>> ‘build_fold_addr_expr_loc’ was not declared in this scope
>>>    gimple_set_op (gs, 1, build_fold_addr_expr_loc (gimple_location (gs), decl));
>>>                                                                              ^
>>> Am I missing something?
>>
>> The patch was for trunk, where GCC's internal headers have been
>> reorganized, so we need different #includes for gcc-5-branch.
>>
>> Does the attached work?  (it compiles; I haven't tested it though)
>>
>
> The isolated test works. Now running the full Lua test suite.

Tests worked however performance degraded similar to when
-fno-strict-aliasing is used.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                 ` David Malcolm
@ 2015-01-01  0:00                                   ` David Malcolm
  2015-01-01  0:00                                     ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

[-- Attachment #1: Type: text/plain, Size: 985 bytes --]

On Thu, 2015-07-09 at 17:15 -0400, David Malcolm wrote:
> On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:
> 
> (snip)
> 
> > The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
> > API thus giving libgccjit some rules about aliasing.  Some options:
> > 
> > (i) make it identical to C.
> > (ii) give the client code some control over this
> > 
> > My initial gut feeling is to go with (i).
> 
> ...or possibly to do what the link-time optimizer does, which is to use
> this internal API:
> 
> /* Return the typed-based alias set for T, which may be an expression
>    or a type.  Return -1 if we don't do anything special.  */
> 
> alias_set_type
> gimple_get_alias_set (tree t)
> 
> which does almost all of what the C frontend does.  I'll try to cook up
> a patch.

Attached is a patch [1] which fixes the minimal reproducer I created,
and the reproducer you sent.

Does it work for you?

Dave

[1] ...and yes, it's effectively a trivial 1-liner; sigh...


[-- Attachment #2: fix-for-pr-66812-v1.patch --]
[-- Type: text/x-patch, Size: 1031 bytes --]

commit 77422fd3d87d2a70577642e61828f31c8d1ead31
Author: David Malcolm <dmalcolm@redhat.com>
Date:   Thu Jul 9 17:42:14 2015 -0400

    FIXME: PR jit/66812: candidate fix: implementation of LANG_HOOKS_GET_ALIAS_SET

diff --git a/gcc/jit/dummy-frontend.c b/gcc/jit/dummy-frontend.c
index 3ddab50..6481c29 100644
--- a/gcc/jit/dummy-frontend.c
+++ b/gcc/jit/dummy-frontend.c
@@ -39,6 +39,12 @@ along with GCC; see the file COPYING3.  If not see
 #include "function.h"
 #include "dumpfile.h"
 #include "cgraph.h"
+#include "predict.h"
+#include "function.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "gimple-expr.h"
+#include "gimple.h"
 
 #include "jit-common.h"
 #include "jit-logging.h"
@@ -252,6 +258,9 @@ jit_langhook_getdecls (void)
 #undef LANG_HOOKS_GETDECLS
 #define LANG_HOOKS_GETDECLS		jit_langhook_getdecls
 
+#undef LANG_HOOKS_GET_ALIAS_SET
+#define LANG_HOOKS_GET_ALIAS_SET        gimple_get_alias_set
+
 struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER;
 
 #include "gt-jit-dummy-frontend.h"

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00         ` David Malcolm
@ 2015-01-01  0:00           ` David Malcolm
  2015-01-01  0:00             ` Dibyendu Majumdar
  2015-01-01  0:00             ` David Malcolm
  0 siblings, 2 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

[-- Attachment #1: Type: text/plain, Size: 3522 bytes --]

On Wed, 2015-07-08 at 11:05 -0400, David Malcolm wrote:
> On Wed, 2015-07-08 at 10:21 -0400, David Malcolm wrote:
> > On Sat, 2015-07-04 at 16:58 +0100, Dibyendu Majumdar wrote:
> > > On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > > On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > > >> Looks like in the failure case the code is being incorrectly
> > > >> optimized. I wonder if this is a manifestation of the get_address bug,
> > > >> perhaps the real fix will be better than the patch I am using. I will
> > > >> use the latest gcc 5 branch and see if that helps.
> > > >>
> > > >
> > > > Hi Dave,
> > > >
> > > > I am now using the latest gcc-5-branch from gcc github mirror.
> > > > Unfortunately the issue still persists.
> > > >
> > > > If set optimization level to 0 or 1, then it works ok, but at levels 2
> > > > or 3 the break occurs.
> > > >
> > > 
> > > Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> > > and -O3 but with this enabled the benchmarks are degraded.
> > 
> > I've filed the bad code generation issue as:
> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812
> > 
> > and I'm investigating it.
> 
> 
> Notes on investigation so far.
> 
> With the fixes here
>   https://gcc.gnu.org/ml/jit/2015-q3/msg00025.html
> and here:
>   https://gcc.gnu.org/ml/jit/2015-q3/msg00028.html
> the reproducer from
>  https://gcc.gnu.org/ml/jit/2015-q3/msg00012.html
> now correctly fails with:
>  error: gcc_jit_context_new_field: unknown size for field
> "errorJmp" (type: struct ravi_lua_longjmp)
> 
> Upon applying the equivalent of the fix from:
> https://github.com/dibyendumajumdar/ravi/commit/d65d2e68fbdcf211ed36deea05727f996ede8296
> to the generator you provided, gcc_jit_context_compile completes.
> 
> I don't know if it's generating bad code (given that I don't have Ravi
> itself running, just the reproducer).  However, I tried comparing the
> bug_rdump.txt and bug_rdump_ok.txt reproducers, and tried adding
> -fno-strict-aliasing to the former.
> 
> I turned on GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING and started comparing
> the dumpfiles.
> 
> The diffs stay easily comparable until fake.c.018t.ssa, when numbering
> differences between temporaries mean that a simple "diff" becomes
> unreadable.
> 
> So I wrote a tool to try to alleviate this:
>   https://github.com/davidmalcolm/gcc-dump-diff
> The tool tries to renumber temporaries in dumpfiles so that they are
> more consistent between runs, and then tries to do a textual diff of two
> dumpfiles.
> 
> (note that it might renumber labels also)

Yes, labels *were* being renumbered.  I've fixed that now.

> With this, the dumpfiles become comparable again.  I see that when
> rerunning the bug_rdump.txt reproducer, the first big difference between
> the with and without -fno-strict-aliasing case happens at 035t.fre1.
> 
> Note in the following how, without -fno-strict-aliasing, various
> statements and blocks are eliminated at 035t.fre1, which treats them as
> dead code.  In particular, it seems to have optimized away
> OP_TEST_do_jmp_5_0 and OP_TEST_do_skip_5_0 (if I'm reading things
> right).

It's OP_TEST_do_jmp_5_14, jmp_9_2 and OP_TEST_do_skip_5_15 that are
being optimized away by pass fre1 when -fno-strict-aliasing isn't
supplied.

I'm attaching a fixed diff, showing the correct label names.


> My hunch at this time is that this optimization is being too
> aggressive... for some reason.  I'll continue poking at this.

[snip]

[-- Attachment #2: diff-of-035t.fre1.txt --]
[-- Type: text/plain, Size: 5770 bytes --]

--- ../gcc-git-jit-ravi/src/libgccjit-bug_rdump-no-strict-aliasing/fake.c.035t.fre1
+++ ../gcc-git-jit-ravi/src/libgccjit-bug_rdump/fake.c.035t.fre1
@@ -2,6 +2,15 @@
 
 ;; Function ravif2 (ravif2, funcdef_no=0, decl_uid=364, cgraph_uid=0, symbol_order=0)
 
+Merging blocks 8 and 9
+Removing basic block 10
+Removing basic block 11
+Removing basic block 13
+Removing basic block 12
+Removing basic block 22
+Removing basic block 17
+Merging blocks 8 and 14
+Merging blocks 8 and 15
 ravif2 (struct ravi_lua_State * L)
 {
   struct ravi_TValue * base;
@@ -20,7 +29,6 @@
   <unnamed type> comparison_0_8;
   <unnamed type> comparison_0_9;
   <unnamed type> iftmp.1_0;
-  <unnamed type> iftmp.3_0;
   <unnamed type> iftmp.5_0;
   struct ravi_CallInfo * _0;
   struct ravi_TValue * _0;
@@ -28,31 +36,16 @@
   struct ravi_Proto * _0;
   struct ravi_TValue * _1;
   signed long _0;
+  signed int _0;
+  signed int _1;
+  <unnamed type> _0;
+  signed long _1;
+  signed int _1;
+  struct ravi_CallInfo * _2;
+  struct ravi_TValue * _0;
   struct ravi_Proto * _1;
-  struct ravi_TValue * _2;
-  signed int _0;
-  struct ravi_CallInfo * _2;
-  signed int _1;
-  signed int _2;
-  struct ravi_CallInfo * _3;
   signed int _3;
-  signed int _4;
-  <unnamed type> _0;
-  struct ravi_CallInfo * _4;
-  struct ravi_Proto * _2;
   struct ravi_TValue * _3;
-  signed long _0;
-  struct ravi_Proto * _3;
-  struct ravi_TValue * _4;
-  signed int _0;
-  struct ravi_CallInfo * _5;
-  signed int _6;
-  signed int _7;
-  struct ravi_CallInfo * _6;
-  struct ravi_TValue * _0;
-  struct ravi_Proto * _4;
-  signed int _8;
-  struct ravi_TValue * _6;
 
 entry:
   _0 = L_0(D)->ci;
@@ -66,27 +59,22 @@
   _1 = _0->k;
   _0 = _1->value_.i;
   MEM[(struct ravi_TValue *)base_1 + 16B].value_.i = _0;
-  _1 = cl_0->p;
-  _2 = _1->k;
-  _0 = _2->tt_;
+  _0 = _1->tt_;
   MEM[(struct ravi_TValue *)base_1 + 16B].tt_ = _0;
-  _2 = L_0(D)->ci;
-  base_2 = _2->u.l.base;
-  _1 = MEM[(struct ravi_TValue *)base_2 + 16B].tt_;
-  _2 = MEM[(struct ravi_TValue *)base_2 + 16B].value_.b;
-  if (_1 == 0)
+  _1 = MEM[(struct ravi_TValue *)base_1 + 16B].value_.b;
+  if (_0 == 0)
     goto <bb 8>;
   else
     goto <bb 3>;
 
   <bb 3>:
-  if (_1 == 1)
+  if (_0 == 1)
     goto <bb 4>;
   else
     goto <bb 5>;
 
   <bb 4>:
-  if (_2 == 0)
+  if (_1 == 0)
     goto <bb 6>;
   else
     goto <bb 5>;
@@ -104,119 +92,56 @@
 
   <bb 8>:
   # isfalse_0_4_0 = PHI <1(6), 0(7), 1(2)>
-  MEM[(struct ravi_TValue *)base_2 + 16B].value_.b = 0;
-  MEM[(struct ravi_TValue *)base_2 + 16B].tt_ = 1;
-  _3 = L_0(D)->ci;
-  base_3 = _3->u.l.base;
-  _3 = MEM[(struct ravi_TValue *)base_3 + 16B].tt_;
-  _4 = MEM[(struct ravi_TValue *)base_3 + 16B].value_.b;
-  if (_3 == 0)
-    goto <bb 14>;
+  MEM[(struct ravi_TValue *)base_1 + 16B].value_.b = 0;
+  MEM[(struct ravi_TValue *)base_1 + 16B].tt_ = 1;
+  _0 = 0;
+  _1 = _1->value_.i;
+  MEM[(struct ravi_TValue *)base_1 + 16B].value_.i = _1;
+  _1 = _1->tt_;
+  MEM[(struct ravi_TValue *)base_1 + 16B].tt_ = _1;
+  if (_1 == 0)
+    goto <bb 13>;
   else
     goto <bb 9>;
 
   <bb 9>:
-  if (_3 == 1)
+  if (_1 == 1)
+    goto <bb 11>;
+  else
     goto <bb 10>;
-  else
-    goto <bb 11>;
 
   <bb 10>:
-  if (_4 == 0)
-    goto <bb 12>;
-  else
-    goto <bb 11>;
 
   <bb 11>:
+  # iftmp.5_0 = PHI <1(9), 0(10)>
+  if (iftmp.5_0 != 0)
+    goto <bb 13>;
+  else
+    goto <bb 12>;
 
   <bb 12>:
-  # iftmp.3_0 = PHI <1(10), 0(11)>
-  if (iftmp.3_0 != 0)
-    goto <bb 14>;
-  else
-    goto <bb 13>;
 
   <bb 13>:
-
-  <bb 14>:
-  # isfalse_0_10_0 = PHI <1(12), 0(13), 1(8)>
-  _0 = ~isfalse_0_10_0;
-  if (isfalse_0_10_0 != 0)
-    goto <bb 15> (OP_TEST_do_jmp_5_14);
+  # isfalse_0_16_0 = PHI <1(11), 0(12), 1(8)>
+  MEM[(struct ravi_TValue *)base_1 + 16B].tt_ = 1;
+  printf ("OP_RETURN(pc=%d) return %d args", 13, 1);
+  _2 = L_0(D)->ci;
+  base_2 = _2->u.l.base;
+  _0 = base_2 + 32;
+  L_0(D)->top = _0;
+  _1 = cl_0->p;
+  _3 = _1->sizep;
+  if (_3 > 0)
+    goto <bb 14> (OP_RETURN_if_sizep_gt_0_12_23);
   else
-    goto <bb 22> (OP_TEST_do_skip_5_15);
-
-OP_TEST_do_jmp_5_14:
-jmp_9_2:
-  _4 = L_0(D)->ci;
-  base_4 = _4->u.l.base;
-  _2 = cl_0->p;
-  _3 = _2->k;
-  _0 = _3->value_.i;
-  MEM[(struct ravi_TValue *)base_4 + 16B].value_.i = _0;
-  _3 = cl_0->p;
-  _4 = _3->k;
-  _0 = _4->tt_;
-  MEM[(struct ravi_TValue *)base_4 + 16B].tt_ = _0;
-  _5 = L_0(D)->ci;
-  base_5 = _5->u.l.base;
-  _6 = MEM[(struct ravi_TValue *)base_5 + 16B].tt_;
-  _7 = MEM[(struct ravi_TValue *)base_5 + 16B].value_.b;
-  if (_6 == 0)
-    goto <bb 21>;
-  else
-    goto <bb 16>;
-
-  <bb 16>:
-  if (_6 == 1)
-    goto <bb 17>;
-  else
-    goto <bb 18>;
-
-  <bb 17>:
-  if (_7 == 0)
-    goto <bb 19>;
-  else
-    goto <bb 18>;
-
-  <bb 18>:
-
-  <bb 19>:
-  # iftmp.5_0 = PHI <1(17), 0(18)>
-  if (iftmp.5_0 != 0)
-    goto <bb 21>;
-  else
-    goto <bb 20>;
-
-  <bb 20>:
-
-  <bb 21>:
-  # isfalse_0_16_0 = PHI <1(19), 0(20), 1(15)>
-  MEM[(struct ravi_TValue *)base_5 + 16B].value_.b = 0;
-  MEM[(struct ravi_TValue *)base_5 + 16B].tt_ = 1;
-  printf ("OP_RETURN(pc=%d) return %d args", 13, 1);
-  _6 = L_0(D)->ci;
-  base_6 = _6->u.l.base;
-  _0 = base_6 + 32;
-  L_0(D)->top = _0;
-  _4 = cl_0->p;
-  _8 = _4->sizep;
-  if (_8 > 0)
-    goto <bb 23> (OP_RETURN_if_sizep_gt_0_12_23);
-  else
-    goto <bb 24> (OP_RETURN_else_sizep_gt_0_12_24);
-
-OP_TEST_do_skip_5_15:
-  base_3->value_.b = 1;
-  base_3->tt_ = 1;
-  goto <bb 15> (OP_TEST_do_jmp_5_14);
+    goto <bb 15> (OP_RETURN_else_sizep_gt_0_12_24);
 
 OP_RETURN_if_sizep_gt_0_12_23:
-  luaF_close (L_0(D), base_6);
+  luaF_close (L_0(D), base_2);
 
 OP_RETURN_else_sizep_gt_0_12_24:
-  _6 = base_6 + 16;
-  luaD_poscall (L_0(D), _6);
+  _3 = base_2 + 16;
+  luaD_poscall (L_0(D), _3);
   return 1;
 
 }

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                               ` Dibyendu Majumdar
@ 2015-01-01  0:00                                                 ` Dibyendu Majumdar
  0 siblings, 0 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 10 July 2015 at 08:38, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> On 10 July 2015 at 01:45, David Malcolm <dmalcolm@redhat.com> wrote:
>>> however performance degraded similar to when
>>> -fno-strict-aliasing is used.
>>
>> Bother.  What kind of numbers are we talking about?
>>
>
> I will post some numbers tonight.
>

I will not compare performance with LLVM here as I have a workaround
for the code that causes segmentation fault in libgccjit - so the
benchmarks are probably impacted due to this. Here is a comparison of
the benchmarks with / without the fix.


1. fornum_test1.lua

    without fix: 2e-6
    with fix: 2.053

2. fornum_test2.ravi

    without fix: 1.04
    with fix: 3.14

3. mandel1.ravi

    without fix: 3.52
    with fix: 5.94

4. fannkuchen.ravi

    without fix: 11.29
    with fix: 16.98

5. matmul1.ravi 1000

    without fix: 5.13
    with fix: 11.28


> I am beginning to think that using unions was not a good idea - I
> should do it the way I implement the LLVM version - i.e. use a struct
> and emulate the union functionality. I think unions are just hard for
> the optimizer to reason about.
>
> Unfortunately this means a bit of rework - so I won't know if the
> struct approach is better until after I have done the changes and
> compared results.
>

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                             ` Dibyendu Majumdar
@ 2015-01-01  0:00                               ` David Malcolm
  2015-01-01  0:00                                 ` David Malcolm
  2015-01-01  0:00                                 ` Filed PR jit/66812 for the code generation issue Dibyendu Majumdar
  0 siblings, 2 replies; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Thu, 2015-07-09 at 21:52 +0100, Dibyendu Majumdar wrote:
> On 9 July 2015 at 20:22, David Malcolm <dmalcolm@redhat.com> wrote:
> >> but it does seem to have caused
> >> the optimization bug to go away - i.e. the tests now pass. I will run
> >> more tests tomorrow to see if this is true under all optimization
> >> settings.
> >
> > FWIW, I suspect that this is effectively just papering over the problem,
> > and that it will come back to bite us, just with a more complicated
> > reproducer :(
> >
> 
> Yes agree.
> 
> > Does something like:
> 
> >
> >
> > function x(some_arg)
> >   local IX
> >   if ((some_arg or true) and false) then
> >     IX = true
> >   end;
> >   return ((some_arg or true) and false)
> > end
> > assert(x() == false)
> >
> >
> >
> > exhibit the bug?  (have never programmed Lua, so this probably even
> > isn't syntactically correct, but hopefully you get the idea, with
> > const-propagation of 10's value and typecode lots of code gets optimized
> > away, so using an arg of unknown type to thwart that and hopefully get
> > the bug to re-manifest itself).
> >
> 
> Actually that is valid Lua. Since you aren't passing a value to x()
> then some_arg will be NIL. In Lua, NIL and false are false, everything
> else is true.
> The example above works okay as is, and also when I pass 10 to x().
> As usual with certain bugs - only a specific set of circumstances trigger it.
> 
> >
> > (Note that I've managed to isolate a minimal reproducer for the problem,
> > as noted in another mail this thread)
> >
> 
> Yes that is very good news. Hope you will soon discover the root cause.

Root cause found: it turns out that part of GCC's alias analysis is
deferred to a frontend-specific hook:
  LANG_HOOKS_GET_ALIAS_SET

For C/C++/Objective C this hook allows type-punning when directly
accessing unions, and the Ravi code assumes this.

I hadn't implemented this hook for libgccjit, so the optimizer assumes
that in this sequence of assignments:

  (1) R1.value_.b = 0;
  (2) R1.value_.i = CONST0.value_.i;
  (3) R1.value_.b = 0;

that (1) and (3) have the same LHS, but (2) has a different LHS.

Hence it assumes that (3) is redundant, due to (1), and optimizes it
away.

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66812 for more gory
details.

The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
API thus giving libgccjit some rules about aliasing.  Some options:

(i) make it identical to C.
(ii) give the client code some control over this

My initial gut feeling is to go with (i).


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                     ` David Malcolm
@ 2015-01-01  0:00                       ` Dibyendu Majumdar
  2015-01-01  0:00                         ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

> BTW, are Lua/Ravi constants truly constant?  If so, then I'd believe
> you'd get a performance win by implementing LOADK by emitting code to
> write the specific tt and value_ directly, rather than code that copies
> a value from the table.

Yes - I do specialize to constants in certain cases - such as loops
and numeric operations. But more can be done.

>
> This would enable the optimizer to "know" the tt and value_, and
> optimize accordingly.  For example, in this case, I believe it would
> allow the function to be optimized away down to the equivalent of just a
> "return false;".  Obviously won't help much for a function without a
> loop, but if it saves instructions inside a loop, that's probably a win.
>
> (...though maybe not before we track down this issue)
>

Regards

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                               ` David Malcolm
@ 2015-01-01  0:00                                 ` David Malcolm
  2015-01-01  0:00                                   ` [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1 David Malcolm
  2015-01-01  0:00                                 ` Filed PR jit/66812 for the code generation issue Dibyendu Majumdar
  1 sibling, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:

(snip)

> The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
> API thus giving libgccjit some rules about aliasing.  Some options:
> 
> (i) make it identical to C.
> (ii) give the client code some control over this
> 
> My initial gut feeling is to go with (i).

...or possibly to do what the link-time optimizer does, which is to use
this internal API:

/* Return the typed-based alias set for T, which may be an expression
   or a type.  Return -1 if we don't do anything special.  */

alias_set_type
gimple_get_alias_set (tree t)

which does almost all of what the C frontend does.  I'll try to cook up
a patch.

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Filed PR jit/66811: jit jumps aren't compilable as C (Re: A possible code generation issue)
  2015-01-01  0:00           ` Dibyendu Majumdar
  2015-01-01  0:00             ` Dibyendu Majumdar
@ 2015-01-01  0:00             ` David Malcolm
  2015-01-01  0:00               ` Filed PR jit/66811: jit dumps " David Malcolm
  1 sibling, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Mon, 2015-07-06 at 22:29 +0100, Dibyendu Majumdar wrote:
> On 4 July 2015 at 23:09, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > On 4 July 2015 at 22:41, David Malcolm <dmalcolm@redhat.com> wrote:
> >>> Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> >>> and -O3 but with this enabled the benchmarks are degraded.
> >>
> >> If "-fno-strict-aliasing" resolved this, then that suggests that there
> >> are various casts in the code that if this were C would take us into
> >> "undefined behavior" territory, and the optimizer is trying a little too
> >> hard.   This isn't C, but similar rules apply.  If that's what this is,
> >> then this is at least a documentation issue with libgccjit; we need to
> >> document what the rules are.
> >>
> >>
> >> Of course, it could well be a bug at my end.
> >>
> 
> Dave,
> 
> Attached is a hacked version in C of the dump from the code. I thought
> it might be useful to generate code directly using gcc -O3 -S on this
> file - from what I can tell the generated code looks different from
> what I am getting in libgccjit.
> 
> BTW the dump of types is problematic in many ways:
> 1) types are in wrong order
> 2) function types are incorrectly output
> 3) array types are incorrectly output
> 4) in one case as least a pointer was missing.
> 
> It would be useful if the generated dump was correct C so that it can
> directly compiled in gcc.

Agreed.  I've filed this as an RFE for the jit as:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66811


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00     ` Dibyendu Majumdar
  2015-01-01  0:00       ` Filed PR jit/66812 for the " David Malcolm
@ 2015-01-01  0:00       ` David Malcolm
  2015-01-01  0:00         ` Dibyendu Majumdar
  1 sibling, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Sat, 2015-07-04 at 16:58 +0100, Dibyendu Majumdar wrote:
> On 4 July 2015 at 14:20, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > On 4 July 2015 at 13:11, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> >> Looks like in the failure case the code is being incorrectly
> >> optimized. I wonder if this is a manifestation of the get_address bug,
> >> perhaps the real fix will be better than the patch I am using. I will
> >> use the latest gcc 5 branch and see if that helps.
> >>
> >
> > Hi Dave,
> >
> > I am now using the latest gcc-5-branch from gcc github mirror.
> > Unfortunately the issue still persists.
> >
> > If set optimization level to 0 or 1, then it works ok, but at levels 2
> > or 3 the break occurs.
> >
> 
> Adding the -fno-strict-aliasing appears to resolve the issue with -O2
> and -O3 but with this enabled the benchmarks are degraded.

If "-fno-strict-aliasing" resolved this, then that suggests that there
are various casts in the code that if this were C would take us into
"undefined behavior" territory, and the optimizer is trying a little too
hard.   This isn't C, but similar rules apply.  If that's what this is,
then this is at least a documentation issue with libgccjit; we need to
document what the rules are.

If this is the case it's normally possible to work around it in C by
rewriting casts using unions.

Of course, it could well be a bug at my end.

In any case, I'm not going to be able to have a proper look at this
until Monday (it's the July 4th holiday weekend here in the US); sorry.

Sorry about this
Dave

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                             ` David Malcolm
@ 2015-01-01  0:00                                               ` Dibyendu Majumdar
  2015-01-01  0:00                                                 ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 10 July 2015 at 01:45, David Malcolm <dmalcolm@redhat.com> wrote:
>> however performance degraded similar to when
>> -fno-strict-aliasing is used.
>
> Bother.  What kind of numbers are we talking about?
>

I will post some numbers tonight.

I am beginning to think that using unions was not a good idea - I
should do it the way I implement the LLVM version - i.e. use a struct
and emulate the union functionality. I think unions are just hard for
the optimizer to reason about.

Unfortunately this means a bit of rework - so I won't know if the
struct approach is better until after I have done the changes and
compared results.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00           ` David Malcolm
@ 2015-01-01  0:00             ` Dibyendu Majumdar
  2015-01-01  0:00             ` David Malcolm
  1 sibling, 0 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

On 8 July 2015 at 16:30, David Malcolm <dmalcolm@redhat.com> wrote:
>> Upon applying the equivalent of the fix from:
>> https://github.com/dibyendumajumdar/ravi/commit/d65d2e68fbdcf211ed36deea05727f996ede8296
>> to the generator you provided, gcc_jit_context_compile completes.
>>
>> I don't know if it's generating bad code (given that I don't have Ravi
>> itself running, just the reproducer).  However, I tried comparing the
>> bug_rdump.txt and bug_rdump_ok.txt reproducers, and tried adding
>> -fno-strict-aliasing to the former.
>>

Hi Dave, thanks for investigating this. I did test the fixed version -
it failed the same way as before (apologies should have mentioned
this).

BTW I could not see anything obviously wrong with the code that is
being compiled - i.e. nothing that stood out as undefined behaviour.

Regards
Dibyendu

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: A possible code generation issue
  2015-01-01  0:00         ` Dibyendu Majumdar
@ 2015-01-01  0:00           ` Dibyendu Majumdar
  2015-01-01  0:00             ` Dibyendu Majumdar
  2015-01-01  0:00             ` Filed PR jit/66811: jit jumps aren't compilable as C (Re: A possible code generation issue) David Malcolm
  0 siblings, 2 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

[-- Attachment #1: Type: text/plain, Size: 1326 bytes --]

On 4 July 2015 at 23:09, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> On 4 July 2015 at 22:41, David Malcolm <dmalcolm@redhat.com> wrote:
>>> Adding the -fno-strict-aliasing appears to resolve the issue with -O2
>>> and -O3 but with this enabled the benchmarks are degraded.
>>
>> If "-fno-strict-aliasing" resolved this, then that suggests that there
>> are various casts in the code that if this were C would take us into
>> "undefined behavior" territory, and the optimizer is trying a little too
>> hard.   This isn't C, but similar rules apply.  If that's what this is,
>> then this is at least a documentation issue with libgccjit; we need to
>> document what the rules are.
>>
>>
>> Of course, it could well be a bug at my end.
>>

Dave,

Attached is a hacked version in C of the dump from the code. I thought
it might be useful to generate code directly using gcc -O3 -S on this
file - from what I can tell the generated code looks different from
what I am getting in libgccjit.

BTW the dump of types is problematic in many ways:
1) types are in wrong order
2) function types are incorrectly output
3) array types are incorrectly output
4) in one case as least a pointer was missing.

It would be useful if the generated dump was correct C so that it can
directly compiled in gcc.

Thanks and Regards
Dibyendu

[-- Attachment #2: bug.c --]
[-- Type: text/x-csrc, Size: 12320 bytes --]

#include <stdbool.h>
#include <stdlib.h>

struct ravi_lua_State;

struct ravi_lua_Debug;

struct ravi_GCObject;

union ravi_Value;

struct ravi_TValue;

struct ravi_TString;

struct ravi_Table;

struct ravi_Udata;

struct ravi_Upvaldesc;

struct ravi_LocVar;

struct ravi_LClosure;

struct ravi_RaviJITProto;

struct ravi_Proto;

struct ravi_UpVal;

struct ravi_CClosure;

union ravi_Closure;

struct ravi_TKey_nk;

union ravi_TKey;

struct ravi_Node;

struct ravi_RaviArray;

struct ravi_lua_longjmp;

struct ravi_Mbuffer;

struct ravi_stringtable;

struct ravi_CallInfo;

struct ravi_CallInfo_lua;

struct ravi_CallInfo_C;

union ravi_CallInfo_u;

struct ravi_State;

struct ravi_global_State;

struct ravi_UpVal_u_open;

union ravi_UpVal_u;

struct ravi_GCObject
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
};

union ravi_Value
{
  struct ravi_GCObject * gc;
  void * p;
  int b;
  int (*f) (struct ravi_lua_State *);
  long long i;
  double n;
};

struct ravi_TValue
{
  union ravi_Value value_;
  int tt_;
};

struct ravi_TString
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char extra;
  unsigned int hash;
  size_t len;
  struct ravi_TString * hash_next;
};

struct ravi_RaviArray
{
  void * data;
  unsigned int len;
  unsigned int size;
  unsigned char array_type;
  unsigned char array_modifier;
};

struct ravi_Table
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char flags;
  unsigned char lsizenode;
  unsigned int sizearray;
  struct ravi_TValue * array;
  struct ravi_Node * node;
  struct ravi_Node * lastfree;
  struct ravi_Table * metatable;
  struct ravi_GCObject * gclist;
  struct ravi_RaviArray ravi_array;
};

struct ravi_Udata
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char ttuv_;
  struct ravi_Table * metatable;
  size_t len;
  union ravi_Value user_;
};

struct ravi_Upvaldesc
{
  struct ravi_TString * name;
  int type;
  unsigned char instack;
  unsigned char idx;
};

struct ravi_LocVar
{
  struct ravi_TString * varname;
  int startpc;
  int endpc;
  int ravi_type;
};

struct ravi_LClosure
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char nupvalues;
  struct ravi_GCObject * gclist;
  struct ravi_Proto * p;
  struct ravi_UpVal *upvals[1];
};

struct ravi_RaviJITProto
{
  unsigned char jit_status;
  unsigned char jit_flags;
  unsigned short execution_count;
  void * jit_data;
  int (* jit_function) (struct ravi_lua_State *);
};

struct ravi_Proto
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char numparams;
  unsigned char is_vararg;
  unsigned char maxstacksize;
  int sizeupvalues;
  int sizek;
  int sizecode;
  int sizelineinfo;
  int sizep;
  int sizelocvars;
  int linedefined;
  int lastlinedefined;
  struct ravi_TValue * k;
  unsigned int * code;
  struct ravi_Proto * * p;
  int * lineinfo;
  struct ravi_LocVar * locvars;
  struct ravi_Upvaldesc * upvalues;
  struct ravi_LClosure * cache;
  struct ravi_TString * source;
  struct ravi_GCObject * gclist;
  struct ravi_RaviJITProto ravi_jit;
};

struct ravi_TKey_nk
{
  union ravi_Value value_;
  int tt_;
  int next;
};

union ravi_TKey
{
  struct ravi_TKey_nk nk;
  struct ravi_TValue tvk;
};

struct ravi_Node
{
  struct ravi_TValue i_val;
  union ravi_TKey i_key;
};

struct ravi_Mbuffer
{
  char * buffer;
  size_t n;
  size_t buffsize;
};

struct ravi_stringtable
{
  struct ravi_TString * * hash;
  int nuse;
  int size;
};

struct ravi_CallInfo_lua
{
  struct ravi_TValue * base;
  unsigned int * savedpc;
};

struct ravi_CallInfo_C
{
  int (*k) (struct ravi_lua_State *, int, long long);
  long long old_errfunc;
  long long ctx;
};

union ravi_CallInfo_u
{
  struct ravi_CallInfo_lua l;
  struct ravi_CallInfo_C c;
};

struct ravi_CClosure
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char nupvalues;
  struct ravi_GCObject * gclist;
  int (*f) (struct ravi_lua_State *);
  struct ravi_TValue upvalue[1];
};

union ravi_Closure
{
  struct ravi_CClosure c;
  struct ravi_LClosure l;
};


struct ravi_CallInfo
{
  struct ravi_TValue * func;
  struct ravi_TValue * top;
  struct ravi_CallInfo * previous;
  struct ravi_CallInfo * next;
  union ravi_CallInfo_u u;
  long long extra;
  short nresults;
  unsigned char callstatus;
};

struct ravi_lua_State
{
  struct ravi_GCObject * next;
  unsigned char tt;
  unsigned char marked;
  unsigned char status;
  struct ravi_TValue * top;
  struct ravi_global_State * l_G;
  struct ravi_CallInfo * ci;
  unsigned int * oldpc;
  struct ravi_TValue * stack_last;
  struct ravi_TValue * stack;
  struct ravi_UpVal * openupval;
  struct ravi_GCObject * gclist;
  struct ravi_lua_State * twups;
  struct ravi_lua_longjmp * errorJmp;
  struct ravi_CallInfo base_ci;
  void * (*hook) (struct ravi_lua_State *, struct ravi_lua_Debug *);
  long long errfunc;
  int stacksize;
  int basehookcount;
  int hookcount;
  unsigned short nny;
  unsigned short nCcalls;
  unsigned char hookmask;
  unsigned char allowhook;
};



struct ravi_UpVal_u_open
{
  struct ravi_UpVal * next;
  int touched;
};

union ravi_UpVal_u
{
  struct ravi_UpVal_u_open open;
  struct ravi_TValue value;
};

struct ravi_UpVal
{
  struct ravi_TValue * v;
  size_t refcount;
  union ravi_UpVal_u u;
};



extern int
luaD_poscall (struct ravi_lua_State * L, struct ravi_TValue * firstResult); /* (imported) */

extern void
luaC_upvalbarrier_ (struct ravi_lua_State * L, struct ravi_UpVal * uv); /* (imported) */

extern int
luaD_precall (struct ravi_lua_State * L, struct ravi_TValue * func, int nresults); /* (imported) */

extern int
luaD_call (struct ravi_lua_State * L, struct ravi_TValue * func, int nresults, int allowyield); /* (imported) */

extern void
luaV_execute (struct ravi_lua_State * L); /* (imported) */

extern void
luaF_close (struct ravi_lua_State * L, struct ravi_TValue * level); /* (imported) */

extern int
luaV_equalobj (struct ravi_lua_State * L, const struct ravi_TValue * t1, const struct ravi_TValue * t2); /* (imported) */

extern int
luaV_lessthan (struct ravi_lua_State * L, const struct ravi_TValue * l, const struct ravi_TValue * r); /* (imported) */

extern int
luaV_lessequal (struct ravi_lua_State * L, const struct ravi_TValue * l, const struct ravi_TValue * r); /* (imported) */

extern void
luaG_runerror (struct ravi_lua_State * L, const char * fmt); /* (imported) */

extern int
luaV_forlimit (struct ravi_TValue * obj, long long * p, long long step, int * stopnow); /* (imported) */

extern int
luaV_tonumber_ (const struct ravi_TValue * obj, double * n); /* (imported) */

extern int
luaV_tointeger_ (const struct ravi_TValue * obj, long long * p); /* (imported) */

extern void
luaV_objlen (struct ravi_lua_State * L, struct ravi_TValue * ra, const struct ravi_TValue * rb); /* (imported) */

extern void
luaV_gettable (struct ravi_lua_State * L, const struct ravi_TValue * t, struct ravi_TValue * key, struct ravi_TValue * val); /* (imported) */

extern void
luaV_settable (struct ravi_lua_State * L, const struct ravi_TValue * t, struct ravi_TValue * key, struct ravi_TValue * val); /* (imported) */

extern void
luaT_trybinTM (struct ravi_lua_State * L, const struct ravi_TValue * p1, const struct ravi_TValue * p2, struct ravi_TValue * res, int event); /* (imported) */

extern void
raviV_op_loadnil (struct ravi_CallInfo * ci, int a, int b); /* (imported) */

extern void
raviV_op_newarrayint (struct ravi_lua_State * L, struct ravi_CallInfo * ci, struct ravi_TValue * ra); /* (imported) */

extern void
raviV_op_newarrayfloat (struct ravi_lua_State * L, struct ravi_CallInfo * ci, struct ravi_TValue * ra); /* (imported) */

extern void
raviV_op_newtable (struct ravi_lua_State * L, struct ravi_CallInfo * ci, struct ravi_TValue * ra, int b, int c); /* (imported) */

extern void
raviV_op_setlist (struct ravi_lua_State * L, struct ravi_CallInfo * ci, struct ravi_TValue * ra, int b, int c); /* (imported) */

extern long long
luaV_div (struct ravi_lua_State * L, long long m, long long n); /* (imported) */

extern long long
luaV_mod (struct ravi_lua_State * L, long long m, long long n); /* (imported) */

extern void
raviV_op_concat (struct ravi_lua_State * L, struct ravi_CallInfo * ci, int a, int b, int c); /* (imported) */

extern void
raviV_op_closure (struct ravi_lua_State * L, struct ravi_CallInfo * ci, struct ravi_LClosure * cl, int a, int Bx); /* (imported) */

extern void
raviV_op_vararg (struct ravi_lua_State * L, struct ravi_CallInfo * ci, struct ravi_LClosure * cl, int a, int b); /* (imported) */

extern void
raviH_set_int (struct ravi_lua_State * L, struct ravi_Table * table, unsigned int key, long long value); /* (imported) */

extern void
raviH_set_float (struct ravi_lua_State * L, struct ravi_Table * table, unsigned int key, double value); /* (imported) */

extern void
raviV_op_setupval (struct ravi_lua_State * L, struct ravi_LClosure * cl, struct ravi_TValue * ra, int b); /* (imported) */

//extern int
//printf (const char * format); /* (imported) */

extern int
ravif1 (struct ravi_lua_State * L)
{
  struct ravi_LClosure * cl;
  bool isfalse_0_4;
  bool comparison_0_5;
  bool comparison_0_6;
  bool comparison_0_7;
  bool isfalse_0_10;
  bool comparison_0_11;
  bool comparison_0_12;
  bool comparison_0_13;
  bool isfalse_0_16;
  bool comparison_0_17;
  bool comparison_0_18;
  bool comparison_0_19;
  bool comparison_0_22;
  bool comparison_0_26;

entry:
  cl = (struct ravi_LClosure *)L->ci->func->value_.gc;
  (void)raviV_op_loadnil (L->ci, (int)0, (int)0);
  (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
  (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
  comparison_0_5 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_6 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_7 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_4 = comparison_0_5 || comparison_0_6 && comparison_0_7;
  if (!(isfalse_0_4)) goto OP_TEST_do_jmp_2_8; else goto OP_TEST_do_skip_2_9;

jmp_5_1:
  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
  comparison_0_11 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_12 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_13 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_10 = comparison_0_11 || comparison_0_12 && comparison_0_13;
  if (!(!(isfalse_0_10))) goto OP_TEST_do_jmp_5_14; else goto OP_TEST_do_skip_5_15;

jmp_9_2:
  (&L->ci->u.l.base[(int)1])->value_.i = (&cl->p->k[(int)0])->value_.i;
  (&L->ci->u.l.base[(int)1])->tt_ = (&cl->p->k[(int)0])->tt_;
  comparison_0_17 = (&L->ci->u.l.base[(int)1])->tt_ == (int)0;
  comparison_0_18 = (&L->ci->u.l.base[(int)1])->tt_ == (int)1;
  comparison_0_19 = (&L->ci->u.l.base[(int)1])->value_.b == (int)0;
  isfalse_0_16 = comparison_0_17 || comparison_0_18 && comparison_0_19;
  if (!(isfalse_0_16)) goto OP_TEST_do_jmp_9_20; else goto OP_TEST_do_skip_9_21;

jmp_12_3:
  (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
  (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
  L->top = &L->ci->u.l.base[(int)2];
  comparison_0_22 = cl->p->sizep > (int)0;
  if (comparison_0_22) goto OP_RETURN_if_sizep_gt_0_12_23; else goto OP_RETURN_else_sizep_gt_0_12_24;

OP_TEST_do_jmp_2_8:
  goto jmp_5_1;

OP_TEST_do_skip_2_9:
  goto jmp_5_1;

OP_TEST_do_jmp_5_14:
  goto jmp_9_2;

OP_TEST_do_skip_5_15:
  (&L->ci->u.l.base[(int)0])->value_.b = (int)1;
  (&L->ci->u.l.base[(int)0])->tt_ = (int)1;
  goto jmp_9_2;

OP_TEST_do_jmp_9_20:
  goto jmp_12_3;

OP_TEST_do_skip_9_21:
  goto jmp_12_3;

OP_RETURN_if_sizep_gt_0_12_23:
  (void)luaF_close (L, L->ci->u.l.base);
  goto OP_RETURN_else_sizep_gt_0_12_24;

OP_RETURN_else_sizep_gt_0_12_24:
  (void)luaD_poscall (L, (&L->ci->u.l.base[(int)1]));
  return (int)1;

LINK_BLOCK_13_25:
  L->top = &L->ci->u.l.base[(int)0];
  comparison_0_26 = cl->p->sizep > (int)0;
  if (comparison_0_26) goto OP_RETURN_if_sizep_gt_0_13_27; else goto OP_RETURN_else_sizep_gt_0_13_28;

OP_RETURN_if_sizep_gt_0_13_27:
  (void)luaF_close (L, L->ci->u.l.base);
  goto OP_RETURN_else_sizep_gt_0_13_28;

OP_RETURN_else_sizep_gt_0_13_28:
  (void)luaD_poscall (L, (&L->ci->u.l.base[(int)0]));
  return (int)1;
}


[-- Attachment #3: bug.s --]
[-- Type: application/octet-stream, Size: 1959 bytes --]

	.file	"bug.c"
	.section	.text.unlikely,"ax",@progbits
.LCOLDB0:
	.text
.LHOTB0:
	.p2align 4,,15
	.globl	ravif1
	.type	ravif1, @function
ravif1:
.LFB10:
	.cfi_startproc
.L2:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	movq	%rdi, %rbx
	xorl	%edx, %edx
	xorl	%esi, %esi
	subq	$8, %rsp
	.cfi_def_cfa_offset 32
	movq	32(%rdi), %rdi
	movq	(%rdi), %rax
	movq	(%rax), %rbp
	call	raviV_op_loadnil
	movq	32(%rbx), %rax
	movq	24(%rbp), %rdx
	movq	32(%rax), %rax
	movq	48(%rdx), %rdx
	movq	(%rdx), %rdx
	movq	%rdx, 16(%rax)
	movq	24(%rbp), %rcx
	movq	32(%rbx), %rax
	movq	48(%rcx), %rcx
	movq	32(%rax), %rdx
	movl	8(%rcx), %ecx
	movl	%ecx, 24(%rdx)
	movq	32(%rax), %rax
	movl	$0, 16(%rax)
	movq	32(%rbx), %rax
	movq	32(%rax), %rdx
	movl	$1, 24(%rdx)
	movq	32(%rax), %rax
	movl	24(%rax), %edx
	testl	%edx, %edx
	je	.L5
	movl	16(%rax), %ecx
	testl	%ecx, %ecx
	jne	.L4
	cmpl	$1, %edx
	je	.L5
.L4:
	movl	$1, (%rax)
	movq	32(%rbx), %rax
	movq	32(%rax), %rdx
	movl	$1, 8(%rdx)
	movq	32(%rax), %rax
.L3:
.L5:
	movq	24(%rbp), %rdx
	movq	48(%rdx), %rdx
	movq	(%rdx), %rdx
	movq	%rdx, 16(%rax)
	movq	24(%rbp), %rcx
	movq	32(%rbx), %rax
	movq	48(%rcx), %rcx
	movq	32(%rax), %rdx
	movl	8(%rcx), %ecx
	movl	%ecx, 24(%rdx)
	movq	32(%rax), %rax
	movl	$0, 16(%rax)
	movq	32(%rbx), %rax
	movq	32(%rax), %rdx
	movl	$1, 24(%rdx)
	movq	32(%rax), %rdi
	leaq	32(%rdi), %rdx
	movq	%rdx, 16(%rbx)
	movq	24(%rbp), %rdx
	movl	32(%rdx), %edx
	testl	%edx, %edx
	jle	.L6
.L7:
	movq	32(%rax), %rsi
	movq	%rbx, %rdi
	call	luaF_close
	movq	32(%rbx), %rax
.L6:
	movq	32(%rax), %rsi
	movq	%rbx, %rdi
	addq	$16, %rsi
	call	luaD_poscall
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	movl	$1, %eax
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE10:
	.size	ravif1, .-ravif1
	.section	.text.unlikely
.LCOLDE0:
	.text
.LHOTE0:
	.ident	"GCC: (GNU) 5.1.1 20150704"
	.section	.note.GNU-stack,"",@progbits

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: Filed PR jit/66812 for the code generation issue
  2015-01-01  0:00                           ` David Malcolm
  2015-01-01  0:00                             ` David Malcolm
@ 2015-01-01  0:00                             ` Dibyendu Majumdar
  1 sibling, 0 replies; 47+ messages in thread
From: Dibyendu Majumdar @ 2015-01-01  0:00 UTC (permalink / raw)
  To: David Malcolm; +Cc: jit

[-- Attachment #1: Type: text/plain, Size: 1795 bytes --]

On 9 July 2015 at 02:03, David Malcolm <dmalcolm@redhat.com> wrote:
> On Wed, 2015-07-08 at 22:54 +0100, Dibyendu Majumdar wrote:
>> Apologies I think the previous description of the flow was incorrect.
>> Here is my second attempt (this is doing my head in so I will stop
>> now):
>
> [snip detailed analysis of bytecode]
>
> Thanks.
>
> So it's basically:
>
>   * do a bunch of stuff
>   * then set R(1) to boolean false in that last LOADBOOL op
>   * then return
>
>
>> 12 [3] LOADBOOL 1 0 0
>>
>>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>>   (&L->ci->u.l.base[(int)1])->tt_ = (int)1;
>>
>> Above sets the register 1 to false and this is the return value.
>
> I've been poring over the dumps:
> https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/
> and I believe the problem is in pass "fre1"; it's eliminating this
> statement for some reason:
>   (&L->ci->u.l.base[(int)1])->value_.b = (int)0;
>
> so
>   R1.tt_ = 1 (correct)
> but:
>   R1.value_.i = K0.value_.i  (incorrect, is int 10, not 0)
>
> The statement is still present at pass 034t.ealias:
> https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/fake.c.034t.ealias
>
> but is optimized away in pass 035t.fre1:
> https://dmalcolm.fedorapeople.org/gcc/2015-07-08/libgccjit-bug_rdump/fake.c.035t.fre1
>
> I'll have a more detailed look tomorrow at why fre1 is getting it wrong.
>


Dave

I have attached two new reproducer dumps.

1. The constant fix version has a change that sets the constant value
directly rather than going through the constants table.

2. The NO constant fix version doesn't have this change - this is
failing the test.

The above dumps reflect the removal of the 'base' local variable.

I hope this helps in tracking down what is causing the change.

Regards
Dibyendu

[-- Attachment #2: bug_rdump_NO_constantfix.txt --]
[-- Type: text/plain, Size: 212817 bytes --]

/* This code was autogenerated by gcc_jit_context_dump_reproducer_to_file.

   libgccjit (GCC) version 5.1.1 20150704 (x86_64-unknown-linux-gnu)
  	compiled by GNU C version 5.1.0, GMP version 5.1.3, MPFR version 3.1.2-p3, MPC version 1.0.1
*/
#include <libgccjit.h>

#pragma GCC diagnostic ignored "-Wunused-variable"

static void
set_options (gcc_jit_context *ctxt_0x25e0f30,
             gcc_jit_context *ctxt_0x262d820);

static void
create_code (gcc_jit_context *ctxt_0x25e0f30,
             gcc_jit_context *ctxt_0x262d820);

int
main (int argc, const char **argv)
{
  gcc_jit_context *ctxt_0x25e0f30;
  gcc_jit_context *ctxt_0x262d820;
  gcc_jit_result *result;

  ctxt_0x25e0f30 = gcc_jit_context_acquire ();
  ctxt_0x262d820 = gcc_jit_context_new_child_context (ctxt_0x25e0f30);
  set_options (ctxt_0x25e0f30,
               ctxt_0x262d820);
  create_code (ctxt_0x25e0f30,
               ctxt_0x262d820);
  result = gcc_jit_context_compile (ctxt_0x262d820);
  gcc_jit_context_release (ctxt_0x262d820);
  gcc_jit_context_release (ctxt_0x25e0f30);
  gcc_jit_result_release (result);
  return 0;
}

static void
set_options (gcc_jit_context *ctxt_0x25e0f30,
             gcc_jit_context *ctxt_0x262d820)
{
  /* Set options for ctxt_0x25e0f30.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0x25e0f30,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  NULL);
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0x25e0f30,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x25e0f30,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
  gcc_jit_context_set_bool_allow_unreachable_blocks (ctxt_0x25e0f30, 1);

  /* Set options for ctxt_0x262d820.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0x262d820,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  NULL);
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0x262d820,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x262d820,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
  gcc_jit_context_set_bool_allow_unreachable_blocks (ctxt_0x262d820, 1);
}

static void
create_code (gcc_jit_context *ctxt_0x25e0f30,
             gcc_jit_context *ctxt_0x262d820)
{
  /* Replay of API calls for ctxt_0x25e0f30.  */
  gcc_jit_type *type_bool_0x25e1590 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_BOOL);
  gcc_jit_type *type_double_0x25e1600 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_DOUBLE);
  gcc_jit_type *type_double___0x25e1640 =
    gcc_jit_type_get_pointer (type_double_0x25e1600);
  gcc_jit_type *type_double_____0x25e1680 =
    gcc_jit_type_get_pointer (type_double___0x25e1640);
  gcc_jit_type *type_long_long_0x25e16c0 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_LONG_LONG);
  gcc_jit_type *type_long_long___0x25e1750 =
    gcc_jit_type_get_pointer (type_long_long_0x25e16c0);
  gcc_jit_type *type_long_long_____0x25e1790 =
    gcc_jit_type_get_pointer (type_long_long___0x25e1750);
  gcc_jit_type *type_unsigned_long_long_0x25e17d0 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_UNSIGNED_LONG_LONG);
  gcc_jit_type *type_size_t_0x25e1810 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_SIZE_T);
  gcc_jit_type *type_int_0x25e18e0 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_INT);
  gcc_jit_type *type_int___0x25e1920 =
    gcc_jit_type_get_pointer (type_int_0x25e18e0);
  gcc_jit_type *type_short_0x25e1960 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_SHORT);
  gcc_jit_type *type_unsigned_short_0x25e19a0 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_UNSIGNED_SHORT);
  gcc_jit_type *type_unsigned_int_0x25e19e0 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_UNSIGNED_INT);
  gcc_jit_type *type_unsigned_char_0x25e1a20 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_UNSIGNED_CHAR);
  gcc_jit_type *type_char_0x25e1a60 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_CHAR);
  gcc_jit_type *type_char___0x25e1aa0 =
    gcc_jit_type_get_pointer (type_char_0x25e1a60);
  gcc_jit_type *type_const_char___0x25e1850 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_CONST_CHAR_PTR);
  gcc_jit_type *type_void_0x25e1890 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_VOID);
  gcc_jit_type *type_void___0x25e1bb0 = gcc_jit_context_get_type (ctxt_0x25e0f30, GCC_JIT_TYPE_VOID_PTR);
  gcc_jit_type *type_unsigned_int___0x25e1bf0 =
    gcc_jit_type_get_pointer (type_unsigned_int_0x25e19e0);
  gcc_jit_struct *struct_struct_ravi_lua_State_0x25e1700 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_State___0x25e1c90 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_State_0x25e1700));
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____0x25e1cd0[1] = {
    type_struct_ravi_lua_State___0x25e1c90,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____0x25e1ae0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                           1, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____0x25e1cd0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____int__long_long__0x25e1b20[3] = {
    type_struct_ravi_lua_State___0x25e1c90,
    type_int_0x25e18e0,
    type_long_long_0x25e16c0,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____int__long_long__0x25e1e80 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                           3, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____int__long_long__0x25e1b20, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_void__void____void____size_t__size_t__0x25e1ec0[4] = {
    type_void___0x25e1bb0,
    type_void___0x25e1bb0,
    type_size_t_0x25e1810,
    type_size_t_0x25e1810,
  };
  gcc_jit_type *ptr_to_void______void____void____size_t__size_t__0x25e1f40 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void_0x25e1890, /* gcc_jit_type *return_type */
                                           4, /* int num_params */
                                           params_for_function_type_void__void____void____size_t__size_t__0x25e1ec0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_lua_Debug_0x25e1fe0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_Debug"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_Debug___0x25e2030 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_Debug_0x25e1fe0));
  gcc_jit_type *params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0x25e2070[2] = {
    type_struct_ravi_lua_State___0x25e1c90,
    type_struct_ravi_lua_Debug___0x25e2030,
  };
  gcc_jit_type *ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0x25e20f0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void___0x25e1bb0, /* gcc_jit_type *return_type */
                                           2, /* int num_params */
                                           params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0x25e2070, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_GCObject_0x25e2190 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_GCObject"); /* const char *name */
  gcc_jit_type *type_struct_ravi_GCObject___0x25e1d50 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_GCObject_0x25e2190));
  gcc_jit_field *field_next_0x25e1df0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e23c0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e2470 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e24c0[3] = {
    field_next_0x25e1df0,
    field_tt_0x25e23c0,
    field_marked_0x25e2470,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_GCObject_0x25e2190, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x25e24c0); /* gcc_jit_field **fields */
  gcc_jit_field *field_gc_0x25e2590 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "gc"); /* const char *name */
  gcc_jit_field *field_p_0x25e2640 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0x25e1bb0, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_b_0x25e26f0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "b"); /* const char *name */
  gcc_jit_field *field_f_0x25e27a0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0x25e1ae0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_field *field_i_0x25e2850 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /* gcc_jit_type *type, */
                               "i"); /* const char *name */
  gcc_jit_field *field_n_0x25e2240 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0x25e1600, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Value_0x25e22f0[6] = {
    field_gc_0x25e2590,
    field_p_0x25e2640,
    field_b_0x25e26f0,
    field_f_0x25e27a0,
    field_i_0x25e2850,
    field_n_0x25e2240,
  };
  gcc_jit_type *union_union_ravi_Value_0x25e22f0 =
    gcc_jit_context_new_union_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Value", /* const char *name */
                                    6, /* int num_fields */
                                    fields_for_union_union_ravi_Value_0x25e22f0); /* gcc_jit_field **fields */
  gcc_jit_field *field_value__0x25e2bf0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0x25e22f0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0x25e2ca0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TValue_0x25e2d50 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TValue"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e2df0[2] = {
    field_value__0x25e2bf0,
    field_tt__0x25e2ca0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TValue_0x25e2d50, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x25e2df0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_TValue___0x25e2e30 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x25e2d50));
  gcc_jit_type *type_const_struct_ravi_TValue_0x25e2e70 =
    gcc_jit_type_get_const (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x25e2d50));
  gcc_jit_type *type_const_struct_ravi_TValue___0x25e2eb0 =
    gcc_jit_type_get_pointer (type_const_struct_ravi_TValue_0x25e2e70);
  gcc_jit_struct *struct_struct_ravi_TString_0x25e2f50 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TString"); /* const char *name */
  gcc_jit_type *type_struct_ravi_TString___0x25e2fa0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TString_0x25e2f50));
  gcc_jit_type *type_struct_ravi_TString_____0x25e2fe0 =
    gcc_jit_type_get_pointer (type_struct_ravi_TString___0x25e2fa0);
  gcc_jit_field *field_next_0x25e3080 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e3130 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e31e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_extra_0x25e3290 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_hash_0x25e2900 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x25e19e0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_len_0x25e29b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x25e1810, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_hnext_0x25e2a60 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x25e2fa0, /* gcc_jit_type *type, */
                               "hnext"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e2ab0[7] = {
    field_next_0x25e3080,
    field_tt_0x25e3130,
    field_marked_0x25e31e0,
    field_extra_0x25e3290,
    field_hash_0x25e2900,
    field_len_0x25e29b0,
    field_hnext_0x25e2a60,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TString_0x25e2f50, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x25e2ab0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Table_0x25e3720 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Table"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Table___0x25e3770 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Table_0x25e3720));
  gcc_jit_type *type_struct_ravi_Table_____0x25e37b0 =
    gcc_jit_type_get_pointer (type_struct_ravi_Table___0x25e3770);
  gcc_jit_field *field_next_0x25e3850 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e3900 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e39b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_ttuv__0x25e3a60 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "ttuv_"); /* const char *name */
  gcc_jit_field *field_metatable_0x25e3b10 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x25e3770, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_len_0x25e3bc0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x25e1810, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_user__0x25e3c70 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0x25e22f0, /* gcc_jit_type *type, */
                               "user_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Udata_0x25e3d20 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Udata"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e3d70[7] = {
    field_next_0x25e3850,
    field_tt_0x25e3900,
    field_marked_0x25e39b0,
    field_ttuv__0x25e3a60,
    field_metatable_0x25e3b10,
    field_len_0x25e3bc0,
    field_user__0x25e3c70,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Udata_0x25e3d20, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x25e3d70); /* gcc_jit_field **fields */
  gcc_jit_field *field_name_0x25e3e60 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x25e2fa0, /* gcc_jit_type *type, */
                               "name"); /* const char *name */
  gcc_jit_field *field_type_0x25e3f10 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "type"); /* const char *name */
  gcc_jit_field *field_instack_0x25e3fc0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "instack"); /* const char *name */
  gcc_jit_field *field_idx_0x25e4070 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "idx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Upvaldesc_0x25e4120 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Upvaldesc"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e4200[4] = {
    field_name_0x25e3e60,
    field_type_0x25e3f10,
    field_instack_0x25e3fc0,
    field_idx_0x25e4070,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Upvaldesc_0x25e4120, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0x25e4200); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Upvaldesc___0x25e4270 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Upvaldesc_0x25e4120));
  gcc_jit_field *field_varname_0x25e3300 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x25e2fa0, /* gcc_jit_type *type, */
                               "varname"); /* const char *name */
  gcc_jit_field *field_startpc_0x25e33b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "startpc"); /* const char *name */
  gcc_jit_field *field_endpc_0x25e3460 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "endpc"); /* const char *name */
  gcc_jit_field *field_ravi_type_0x25e3510 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "ravi_type"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_LocVar_0x25e35c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LocVar"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e3610[4] = {
    field_varname_0x25e3300,
    field_startpc_0x25e33b0,
    field_endpc_0x25e3460,
    field_ravi_type_0x25e3510,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LocVar_0x25e35c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0x25e3610); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_LocVar___0x25e3680 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LocVar_0x25e35c0));
  gcc_jit_struct *struct_struct_ravi_LClosure_0x25e48d0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LClosure"); /* const char *name */
  gcc_jit_type *type_struct_ravi_LClosure___0x25e4920 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0x25e48d0));
  gcc_jit_type *type_struct_ravi_LClosure_____0x25e4960 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure___0x25e4920);
  gcc_jit_type *type_struct_ravi_LClosure_______0x25e49a0 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure_____0x25e4960);
  gcc_jit_field *field_jit_status_0x25e4a40 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "jit_status"); /* const char *name */
  gcc_jit_field *field_jit_flags_0x25e4af0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "jit_flags"); /* const char *name */
  gcc_jit_field *field_execution_count_0x25e4ba0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0x25e19a0, /* gcc_jit_type *type, */
                               "execution_count"); /* const char *name */
  gcc_jit_field *field_jit_data_0x25e4c50 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0x25e1bb0, /* gcc_jit_type *type, */
                               "jit_data"); /* const char *name */
  gcc_jit_field *field_jit_function_0x25e4d00 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0x25e1ae0, /* gcc_jit_type *type, */
                               "jit_function"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviJITProto_0x25e4db0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviJITProto"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e4e00[5] = {
    field_jit_status_0x25e4a40,
    field_jit_flags_0x25e4af0,
    field_execution_count_0x25e4ba0,
    field_jit_data_0x25e4c50,
    field_jit_function_0x25e4d00,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviJITProto_0x25e4db0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0x25e4e00); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Proto_0x25e4ef0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Proto"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Proto___0x25e4f40 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Proto_0x25e4ef0));
  gcc_jit_type *type_struct_ravi_Proto_____0x25e4f80 =
    gcc_jit_type_get_pointer (type_struct_ravi_Proto___0x25e4f40);
  gcc_jit_field *field_next_0x25e5020 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e50d0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e5180 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_numparams_0x25e5230 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "numparams"); /* const char *name */
  gcc_jit_field *field_is_vararg_0x25e52e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "is_vararg"); /* const char *name */
  gcc_jit_field *field_maxstacksize_0x25e5390 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "maxstacksize"); /* const char *name */
  gcc_jit_field *field_sizeupvalues_0x25e5440 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "sizeupvalues"); /* const char *name */
  gcc_jit_field *field_sizek_0x25e54f0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "sizek"); /* const char *name */
  gcc_jit_field *field_sizecode_0x25e55a0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "sizecode"); /* const char *name */
  gcc_jit_field *field_sizelineinfo_0x25e5650 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "sizelineinfo"); /* const char *name */
  gcc_jit_field *field_sizep_0x25e5700 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "sizep"); /* const char *name */
  gcc_jit_field *field_sizelocvars_0x25e57b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "sizelocvars"); /* const char *name */
  gcc_jit_field *field_linedefined_0x25e5860 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "linedefined"); /* const char *name */
  gcc_jit_field *field_lastlinedefined_0x25e4310 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "lastlinedefined"); /* const char *name */
  gcc_jit_field *field_k_0x25e43c0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_code_0x25e4470 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0x25e1bf0, /* gcc_jit_type *type, */
                               "code"); /* const char *name */
  gcc_jit_field *field_p_0x25e4520 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto_____0x25e4f80, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_lineinfo_0x25e45d0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0x25e1920, /* gcc_jit_type *type, */
                               "lineinfo"); /* const char *name */
  gcc_jit_field *field_locvars_0x25e4680 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LocVar___0x25e3680, /* gcc_jit_type *type, */
                               "locvars"); /* const char *name */
  gcc_jit_field *field_upvalues_0x25e4730 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Upvaldesc___0x25e4270, /* gcc_jit_type *type, */
                               "upvalues"); /* const char *name */
  gcc_jit_field *field_cache_0x25e47e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x25e4920, /* gcc_jit_type *type, */
                               "cache"); /* const char *name */
  gcc_jit_field *field_source_0x25e6160 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x25e2fa0, /* gcc_jit_type *type, */
                               "source"); /* const char *name */
  gcc_jit_field *field_gclist_0x25e6210 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_jit_0x25e62c0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviJITProto_0x25e4db0), /* gcc_jit_type *type, */
                               "ravi_jit"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e6310[24] = {
    field_next_0x25e5020,
    field_tt_0x25e50d0,
    field_marked_0x25e5180,
    field_numparams_0x25e5230,
    field_is_vararg_0x25e52e0,
    field_maxstacksize_0x25e5390,
    field_sizeupvalues_0x25e5440,
    field_sizek_0x25e54f0,
    field_sizecode_0x25e55a0,
    field_sizelineinfo_0x25e5650,
    field_sizep_0x25e5700,
    field_sizelocvars_0x25e57b0,
    field_linedefined_0x25e5860,
    field_lastlinedefined_0x25e4310,
    field_k_0x25e43c0,
    field_code_0x25e4470,
    field_p_0x25e4520,
    field_lineinfo_0x25e45d0,
    field_locvars_0x25e4680,
    field_upvalues_0x25e4730,
    field_cache_0x25e47e0,
    field_source_0x25e6160,
    field_gclist_0x25e6210,
    field_ravi_jit_0x25e62c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Proto_0x25e4ef0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0x25e6310); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_UpVal_0x25e6480 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal"); /* const char *name */
  gcc_jit_type *type_struct_ravi_UpVal___0x25e64d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_UpVal_0x25e6480));
  gcc_jit_field *field_next_0x25e6570 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e6620 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e66d0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0x25e6780 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0x25e6830 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_f_0x25e68e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0x25e1ae0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_TValue_1__0x25e6930 =
    gcc_jit_context_new_array_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x25e2d50), /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvalue_0x25e69e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_TValue_1__0x25e6930, /* gcc_jit_type *type, */
                               "upvalue"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CClosure_0x25e6a90 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CClosure"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e6ae0[7] = {
    field_next_0x25e6570,
    field_tt_0x25e6620,
    field_marked_0x25e66d0,
    field_nupvalues_0x25e6780,
    field_gclist_0x25e6830,
    field_f_0x25e68e0,
    field_upvalue_0x25e69e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CClosure_0x25e6a90, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x25e6ae0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_CClosure___0x25e6b70 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0x25e6a90));
  gcc_jit_field *field_next_0x25e6c10 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e6cc0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e6d70 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0x25e6e20 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0x25e6ed0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_p_0x25e6f80 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto___0x25e4f40, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_UpVal___1__0x25e6fd0 =
    gcc_jit_context_new_array_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    type_struct_ravi_UpVal___0x25e64d0, /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvals_0x25e7080 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_UpVal___1__0x25e6fd0, /* gcc_jit_type *type, */
                               "upvals"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e70d0[7] = {
    field_next_0x25e6c10,
    field_tt_0x25e6cc0,
    field_marked_0x25e6d70,
    field_nupvalues_0x25e6e20,
    field_gclist_0x25e6ed0,
    field_p_0x25e6f80,
    field_upvals_0x25e7080,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LClosure_0x25e48d0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x25e70d0); /* gcc_jit_field **fields */
  gcc_jit_field *field_c_0x25e71c0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0x25e6a90), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *field_l_0x25e7270 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0x25e48d0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Closure_0x25e7320[2] = {
    field_c_0x25e71c0,
    field_l_0x25e7270,
  };
  gcc_jit_type *union_union_ravi_Closure_0x25e7320 =
    gcc_jit_context_new_union_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Closure", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_Closure_0x25e7320); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_Closure___0x25e73f0 =
    gcc_jit_type_get_pointer (union_union_ravi_Closure_0x25e7320);
  gcc_jit_field *field_value__0x25e7490 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0x25e22f0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0x25e7540 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_field *field_next_0x25e75f0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TKey_nk_0x25e76a0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TKey_nk"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e4170[3] = {
    field_value__0x25e7490,
    field_tt__0x25e7540,
    field_next_0x25e75f0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TKey_nk_0x25e76a0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x25e4170); /* gcc_jit_field **fields */
  gcc_jit_field *field_nk_0x25e7800 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TKey_nk_0x25e76a0), /* gcc_jit_type *type, */
                               "nk"); /* const char *name */
  gcc_jit_field *field_tvk_0x25e78b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x25e2d50), /* gcc_jit_type *type, */
                               "tvk"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_TKey_0x25e7960[2] = {
    field_nk_0x25e7800,
    field_tvk_0x25e78b0,
  };
  gcc_jit_type *union_union_ravi_TKey_0x25e7960 =
    gcc_jit_context_new_union_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_TKey", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_TKey_0x25e7960); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_TKey___0x25e7a30 =
    gcc_jit_type_get_pointer (union_union_ravi_TKey_0x25e7960);
  gcc_jit_field *field_i_val_0x25e7ad0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x25e2d50), /* gcc_jit_type *type, */
                               "i_val"); /* const char *name */
  gcc_jit_field *field_i_key_0x25e7b80 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_TKey_0x25e7960, /* gcc_jit_type *type, */
                               "i_key"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Node_0x25e5910 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Node"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e5960[2] = {
    field_i_val_0x25e7ad0,
    field_i_key_0x25e7b80,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Node_0x25e5910, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x25e5960); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Node___0x25e59d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Node_0x25e5910));
  gcc_jit_field *field_data_0x25e5a70 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0x25e1bb0, /* gcc_jit_type *type, */
                               "data"); /* const char *name */
  gcc_jit_field *field_len_0x25e5b20 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x25e19e0, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_size_0x25e5bd0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x25e19e0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_field *field_array_type_0x25e5c80 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "array_type"); /* const char *name */
  gcc_jit_field *field_array_modifier_0x25e5d30 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "array_modifier"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviArray_0x25e5de0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviArray"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e5e30[5] = {
    field_data_0x25e5a70,
    field_len_0x25e5b20,
    field_size_0x25e5bd0,
    field_array_type_0x25e5c80,
    field_array_modifier_0x25e5d30,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviArray_0x25e5de0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0x25e5e30); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0x25e5f20 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25e5fd0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25e6080 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_flags_0x25e8890 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "flags"); /* const char *name */
  gcc_jit_field *field_lsizenode_0x25e8940 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "lsizenode"); /* const char *name */
  gcc_jit_field *field_sizearray_0x25e89f0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x25e19e0, /* gcc_jit_type *type, */
                               "sizearray"); /* const char *name */
  gcc_jit_field *field_array_0x25e8aa0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "array"); /* const char *name */
  gcc_jit_field *field_node_0x25e8b50 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0x25e59d0, /* gcc_jit_type *type, */
                               "node"); /* const char *name */
  gcc_jit_field *field_lastfree_0x25e8c00 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0x25e59d0, /* gcc_jit_type *type, */
                               "lastfree"); /* const char *name */
  gcc_jit_field *field_metatable_0x25e8cb0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x25e3770, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_gclist_0x25e8d60 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_array_0x25e8e10 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviArray_0x25e5de0), /* gcc_jit_type *type, */
                               "ravi_array"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e8e60[12] = {
    field_next_0x25e5f20,
    field_tt_0x25e5fd0,
    field_marked_0x25e6080,
    field_flags_0x25e8890,
    field_lsizenode_0x25e8940,
    field_sizearray_0x25e89f0,
    field_array_0x25e8aa0,
    field_node_0x25e8b50,
    field_lastfree_0x25e8c00,
    field_metatable_0x25e8cb0,
    field_gclist_0x25e8d60,
    field_ravi_array_0x25e8e10,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Table_0x25e3720, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             12, /* int num_fields */
                             fields_fields_0x25e8e60); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_lua_longjmp_0x25e8f90 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_longjmp"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_longjmp___0x25e8fe0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_longjmp_0x25e8f90));
  gcc_jit_field *field_buffer_0x25e9080 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_char___0x25e1aa0, /* gcc_jit_type *type, */
                               "buffer"); /* const char *name */
  gcc_jit_field *field_n_0x25e9130 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x25e1810, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *field_buffsize_0x25e91e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x25e1810, /* gcc_jit_type *type, */
                               "buffsize"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Mbuffer_0x25e9290 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Mbuffer"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e92e0[3] = {
    field_buffer_0x25e9080,
    field_n_0x25e9130,
    field_buffsize_0x25e91e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Mbuffer_0x25e9290, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x25e92e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_hash_0x25e93b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString_____0x25e2fe0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_nuse_0x25e9460 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "nuse"); /* const char *name */
  gcc_jit_field *field_size_0x25e9510 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_stringtable_0x25e95c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_stringtable"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e9610[3] = {
    field_hash_0x25e93b0,
    field_nuse_0x25e9460,
    field_size_0x25e9510,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_stringtable_0x25e95c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x25e9610); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_CallInfo_0x25e96e0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo"); /* const char *name */
  gcc_jit_type *type_struct_ravi_CallInfo___0x25e9730 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0x25e96e0));
  gcc_jit_field *field_base_0x25e97d0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "base"); /* const char *name */
  gcc_jit_field *field_savedpc_0x25e9880 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0x25e1bf0, /* gcc_jit_type *type, */
                               "savedpc"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_lua_0x25e9930 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_lua"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e76f0[2] = {
    field_base_0x25e97d0,
    field_savedpc_0x25e9880,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_lua_0x25e9930, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x25e76f0); /* gcc_jit_field **fields */
  gcc_jit_field *field_k_0x25e9ab0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____int__long_long__0x25e1e80, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_old_errfunc_0x25e9b60 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /* gcc_jit_type *type, */
                               "old_errfunc"); /* const char *name */
  gcc_jit_field *field_ctx_0x25e9c10 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /* gcc_jit_type *type, */
                               "ctx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_C_0x25e9cc0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_C"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e9d10[3] = {
    field_k_0x25e9ab0,
    field_old_errfunc_0x25e9b60,
    field_ctx_0x25e9c10,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_C_0x25e9cc0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x25e9d10); /* gcc_jit_field **fields */
  gcc_jit_field *field_l_0x25e9de0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_lua_0x25e9930), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *field_c_0x25e9e90 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_C_0x25e9cc0), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_CallInfo_u_0x25e9f40[2] = {
    field_l_0x25e9de0,
    field_c_0x25e9e90,
  };
  gcc_jit_type *union_union_ravi_CallInfo_u_0x25e9f40 =
    gcc_jit_context_new_union_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_CallInfo_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_CallInfo_u_0x25e9f40); /* gcc_jit_field **fields */
  gcc_jit_field *field_func_0x25ea070 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "func"); /* const char *name */
  gcc_jit_field *field_top_0x25ea120 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_previous_0x25ea1d0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /* gcc_jit_type *type, */
                               "previous"); /* const char *name */
  gcc_jit_field *field_next_0x25ea280 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_u_0x25ea330 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_CallInfo_u_0x25e9f40, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *field_extra_0x25ea3e0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_nresults_0x25ea490 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_short_0x25e1960, /* gcc_jit_type *type, */
                               "nresults"); /* const char *name */
  gcc_jit_field *field_callstatus_0x25ea540 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "callstatus"); /* const char *name */
  gcc_jit_field *fields_fields_0x25ea590[8] = {
    field_func_0x25ea070,
    field_top_0x25ea120,
    field_previous_0x25ea1d0,
    field_next_0x25ea280,
    field_u_0x25ea330,
    field_extra_0x25ea3e0,
    field_nresults_0x25ea490,
    field_callstatus_0x25ea540,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_0x25e96e0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             8, /* int num_fields */
                             fields_fields_0x25ea590); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_State_0x25ea680 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_State___0x25ea6d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_State_0x25ea680));
  gcc_jit_struct *struct_struct_ravi_global_State_0x25ea770 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_global_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_global_State___0x25ea7c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_global_State_0x25ea770));
  gcc_jit_field *field_next_0x25ea860 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x25ea910 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x25ea9c0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_status_0x25eaa70 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "status"); /* const char *name */
  gcc_jit_field *field_top_0x25eab20 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_l_G_0x25eabd0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_global_State___0x25ea7c0, /* gcc_jit_type *type, */
                               "l_G"); /* const char *name */
  gcc_jit_field *field_ci_0x25eac80 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /* gcc_jit_type *type, */
                               "ci"); /* const char *name */
  gcc_jit_field *field_oldpc_0x25ead30 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0x25e1bf0, /* gcc_jit_type *type, */
                               "oldpc"); /* const char *name */
  gcc_jit_field *field_stack_last_0x25eade0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "stack_last"); /* const char *name */
  gcc_jit_field *field_stack_0x25eae90 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "stack"); /* const char *name */
  gcc_jit_field *field_openupval_0x25eaf40 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0x25e64d0, /* gcc_jit_type *type, */
                               "openupval"); /* const char *name */
  gcc_jit_field *field_gclist_0x25e7bd0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x25e1d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_twups_0x25e7c80 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /* gcc_jit_type *type, */
                               "twups"); /* const char *name */
  gcc_jit_field *field_errorJmp_0x25e7d30 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_longjmp___0x25e8fe0, /* gcc_jit_type *type, */
                               "errorJmp"); /* const char *name */
  gcc_jit_field *field_base_ci_0x25e7de0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0x25e96e0), /* gcc_jit_type *type, */
                               "base_ci"); /* const char *name */
  gcc_jit_field *field_hook_0x25e7e90 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0x25e20f0, /* gcc_jit_type *type, */
                               "hook"); /* const char *name */
  gcc_jit_field *field_errfunc_0x25e7f40 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /* gcc_jit_type *type, */
                               "errfunc"); /* const char *name */
  gcc_jit_field *field_stacksize_0x25e7ff0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "stacksize"); /* const char *name */
  gcc_jit_field *field_basehookcount_0x25e80a0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "basehookcount"); /* const char *name */
  gcc_jit_field *field_hookcount_0x25e8150 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "hookcount"); /* const char *name */
  gcc_jit_field *field_nny_0x25e8200 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0x25e19a0, /* gcc_jit_type *type, */
                               "nny"); /* const char *name */
  gcc_jit_field *field_nCcalls_0x25e82b0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0x25e19a0, /* gcc_jit_type *type, */
                               "nCcalls"); /* const char *name */
  gcc_jit_field *field_hookmask_0x25e8360 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "hookmask"); /* const char *name */
  gcc_jit_field *field_allowhook_0x25e8410 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x25e1a20, /* gcc_jit_type *type, */
                               "allowhook"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e8460[24] = {
    field_next_0x25ea860,
    field_tt_0x25ea910,
    field_marked_0x25ea9c0,
    field_status_0x25eaa70,
    field_top_0x25eab20,
    field_l_G_0x25eabd0,
    field_ci_0x25eac80,
    field_oldpc_0x25ead30,
    field_stack_last_0x25eade0,
    field_stack_0x25eae90,
    field_openupval_0x25eaf40,
    field_gclist_0x25e7bd0,
    field_twups_0x25e7c80,
    field_errorJmp_0x25e7d30,
    field_base_ci_0x25e7de0,
    field_hook_0x25e7e90,
    field_errfunc_0x25e7f40,
    field_stacksize_0x25e7ff0,
    field_basehookcount_0x25e80a0,
    field_hookcount_0x25e8150,
    field_nny_0x25e8200,
    field_nCcalls_0x25e82b0,
    field_hookmask_0x25e8360,
    field_allowhook_0x25e8410,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_lua_State_0x25e1700, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0x25e8460); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0x25e85d0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0x25e64d0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_touched_0x25e8680 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /* gcc_jit_type *type, */
                               "touched"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_UpVal_u_open_0x25e8730 =
    gcc_jit_context_new_opaque_struct (ctxt_0x25e0f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal_u_open"); /* const char *name */
  gcc_jit_field *fields_fields_0x25e8780[2] = {
    field_next_0x25e85d0,
    field_touched_0x25e8680,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_u_open_0x25e8730, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x25e8780); /* gcc_jit_field **fields */
  gcc_jit_field *field_open_0x25ec310 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_UpVal_u_open_0x25e8730), /* gcc_jit_type *type, */
                               "open"); /* const char *name */
  gcc_jit_field *field_value_0x25ec380 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x25e2d50), /* gcc_jit_type *type, */
                               "value"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_UpVal_u_0x25ec430[2] = {
    field_open_0x25ec310,
    field_value_0x25ec380,
  };
  gcc_jit_type *union_union_ravi_UpVal_u_0x25ec430 =
    gcc_jit_context_new_union_type (ctxt_0x25e0f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_UpVal_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_UpVal_u_0x25ec430); /* gcc_jit_field **fields */
  gcc_jit_field *field_v_0x25ec560 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /* gcc_jit_type *type, */
                               "v"); /* const char *name */
  gcc_jit_field *field_refcount_0x25ec610 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x25e1810, /* gcc_jit_type *type, */
                               "refcount"); /* const char *name */
  gcc_jit_field *field_u_0x25ec6c0 =
    gcc_jit_context_new_field (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_UpVal_u_0x25ec430, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *fields_fields_0x25ec710[3] = {
    field_v_0x25ec560,
    field_refcount_0x25ec610,
    field_u_0x25ec6c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_0x25e6480, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x25ec710); /* gcc_jit_field **fields */
  gcc_jit_param *param_L_0x25ec7e0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_firstResult_0x25ec890 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "firstResult"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_poscall_0x25ec940[2] = {
    param_L_0x25ec7e0,
    param_firstResult_0x25ec890,
  };
  gcc_jit_function *func_luaD_poscall_0x25ec940 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaD_poscall", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaD_poscall_0x25ec940, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eca70 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_uv_0x25ecb20 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0x25e64d0, /*gcc_jit_type *type */
                               "uv"); /* const char *name */
  gcc_jit_param *params_for_func_luaC_upvalbarrier__0x25ecbd0[2] = {
    param_L_0x25eca70,
    param_uv_0x25ecb20,
  };
  gcc_jit_function *func_luaC_upvalbarrier__0x25ecbd0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaC_upvalbarrier_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaC_upvalbarrier__0x25ecbd0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eccd0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0x25ecd80 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0x25ece30 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_precall_0x25ecee0[3] = {
    param_L_0x25eccd0,
    param_func_0x25ecd80,
    param_nresults_0x25ece30,
  };
  gcc_jit_function *func_luaD_precall_0x25ecee0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaD_precall", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaD_precall_0x25ecee0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ecfe0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0x25ed090 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0x25ed140 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *param_allowyield_0x25ed1f0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "allowyield"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_call_0x25ed2a0[4] = {
    param_L_0x25ecfe0,
    param_func_0x25ed090,
    param_nresults_0x25ed140,
    param_allowyield_0x25ed1f0,
  };
  gcc_jit_function *func_luaD_call_0x25ed2a0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaD_call", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaD_call_0x25ed2a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ed3a0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_execute_0x25ed450[1] = {
    param_L_0x25ed3a0,
  };
  gcc_jit_function *func_luaV_execute_0x25ed450 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaV_execute", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_luaV_execute_0x25ed450, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ed5a0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_level_0x25ed650 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "level"); /* const char *name */
  gcc_jit_param *params_for_func_luaF_close_0x25ed700[2] = {
    param_L_0x25ed5a0,
    param_level_0x25ed650,
  };
  gcc_jit_function *func_luaF_close_0x25ed700 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaF_close", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaF_close_0x25ed700, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ed7d0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t1_0x25ed880 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "t1"); /* const char *name */
  gcc_jit_param *param_t2_0x25ed930 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "t2"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_equalobj_0x25ed9e0[3] = {
    param_L_0x25ed7d0,
    param_t1_0x25ed880,
    param_t2_0x25ed930,
  };
  gcc_jit_function *func_luaV_equalobj_0x25ed9e0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaV_equalobj", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_equalobj_0x25ed9e0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25edae0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0x25edb90 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0x25edc40 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessthan_0x25edcf0[3] = {
    param_L_0x25edae0,
    param_l_0x25edb90,
    param_r_0x25edc40,
  };
  gcc_jit_function *func_luaV_lessthan_0x25edcf0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaV_lessthan", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessthan_0x25edcf0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eddf0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0x25edea0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0x25edf50 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessequal_0x25ee000[3] = {
    param_L_0x25eddf0,
    param_l_0x25edea0,
    param_r_0x25edf50,
  };
  gcc_jit_function *func_luaV_lessequal_0x25ee000 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaV_lessequal", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessequal_0x25ee000, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ed4f0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_fmt_0x25ee1f0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0x25e1850, /*gcc_jit_type *type */
                               "fmt"); /* const char *name */
  gcc_jit_param *params_for_func_luaG_runerror_0x25ee2a0[2] = {
    param_L_0x25ed4f0,
    param_fmt_0x25ee1f0,
  };
  gcc_jit_function *func_luaG_runerror_0x25ee2a0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaG_runerror", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaG_runerror_0x25ee2a0, /* gcc_jit_param **params */
                                  1); /* int is_variadic */
  gcc_jit_param *param_obj_0x25ee3a0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0x25ee450 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0x25e1750, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *param_step_0x25ee500 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /*gcc_jit_type *type */
                               "step"); /* const char *name */
  gcc_jit_param *param_stopnow_0x25ee5b0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0x25e1920, /*gcc_jit_type *type */
                               "stopnow"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_forlimit_0x25ee660[4] = {
    param_obj_0x25ee3a0,
    param_p_0x25ee450,
    param_step_0x25ee500,
    param_stopnow_0x25ee5b0,
  };
  gcc_jit_function *func_luaV_forlimit_0x25ee660 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaV_forlimit", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_forlimit_0x25ee660, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0x25ee760 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_n_0x25ee810 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double___0x25e1640, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tonumber__0x25ee8c0[2] = {
    param_obj_0x25ee760,
    param_n_0x25ee810,
  };
  gcc_jit_function *func_luaV_tonumber__0x25ee8c0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaV_tonumber_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tonumber__0x25ee8c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0x25ee9c0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0x25eea70 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0x25e1750, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tointeger__0x25eeb20[2] = {
    param_obj_0x25ee9c0,
    param_p_0x25eea70,
  };
  gcc_jit_function *func_luaV_tointeger__0x25eeb20 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "luaV_tointeger_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tointeger__0x25eeb20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eec20 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ra_0x25eecd0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_rb_0x25eed80 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "rb"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_objlen_0x25eee30[3] = {
    param_L_0x25eec20,
    param_ra_0x25eecd0,
    param_rb_0x25eed80,
  };
  gcc_jit_function *func_luaV_objlen_0x25eee30 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaV_objlen", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_objlen_0x25eee30, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eef30 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0x25eefe0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0x25ef090 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0x25ef140 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_gettable_0x25ef1f0[4] = {
    param_L_0x25eef30,
    param_t_0x25eefe0,
    param_key_0x25ef090,
    param_val_0x25ef140,
  };
  gcc_jit_function *func_luaV_gettable_0x25ef1f0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaV_gettable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_gettable_0x25ef1f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ef2f0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0x25ef3a0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0x25ef450 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0x25ef500 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_settable_0x25ef5b0[4] = {
    param_L_0x25ef2f0,
    param_t_0x25ef3a0,
    param_key_0x25ef450,
    param_val_0x25ef500,
  };
  gcc_jit_function *func_luaV_settable_0x25ef5b0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaV_settable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_settable_0x25ef5b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ef6b0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_p1_0x25ef760 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "p1"); /* const char *name */
  gcc_jit_param *param_p2_0x25ef810 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x25e2eb0, /*gcc_jit_type *type */
                               "p2"); /* const char *name */
  gcc_jit_param *param_res_0x25ef8c0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "res"); /* const char *name */
  gcc_jit_param *param_event_0x25ef970 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "event"); /* const char *name */
  gcc_jit_param *params_for_func_luaT_trybinTM_0x25efa20[5] = {
    param_L_0x25ef6b0,
    param_p1_0x25ef760,
    param_p2_0x25ef810,
    param_res_0x25ef8c0,
    param_event_0x25ef970,
  };
  gcc_jit_function *func_luaT_trybinTM_0x25efa20 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "luaT_trybinTM", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_luaT_trybinTM_0x25efa20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_ci_0x25efbb0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0x25efc40 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x25efcf0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_loadnil_0x25efda0[3] = {
    param_ci_0x25efbb0,
    param_a_0x25efc40,
    param_b_0x25efcf0,
  };
  gcc_jit_function *func_raviV_op_loadnil_0x25efda0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_loadnil", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_loadnil_0x25efda0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25efea0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25eff50 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x25f0000 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayint_0x25f00b0[3] = {
    param_L_0x25efea0,
    param_ci_0x25eff50,
    param_ra_0x25f0000,
  };
  gcc_jit_function *func_raviV_op_newarrayint_0x25f00b0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayint", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayint_0x25f00b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25f01b0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25f0260 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x25f0310 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayfloat_0x25f03c0[3] = {
    param_L_0x25f01b0,
    param_ci_0x25f0260,
    param_ra_0x25f0310,
  };
  gcc_jit_function *func_raviV_op_newarrayfloat_0x25f03c0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayfloat", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayfloat_0x25f03c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eb050 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25eb100 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x25eb1b0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x25eb260 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x25eb310 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newtable_0x25eb3c0[5] = {
    param_L_0x25eb050,
    param_ci_0x25eb100,
    param_ra_0x25eb1b0,
    param_b_0x25eb260,
    param_c_0x25eb310,
  };
  gcc_jit_function *func_raviV_op_newtable_0x25eb3c0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_newtable", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_newtable_0x25eb3c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eb4e0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25eb590 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x25eb640 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x25eb6f0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x25eb7a0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setlist_0x25eb850[5] = {
    param_L_0x25eb4e0,
    param_ci_0x25eb590,
    param_ra_0x25eb640,
    param_b_0x25eb6f0,
    param_c_0x25eb7a0,
  };
  gcc_jit_function *func_raviV_op_setlist_0x25eb850 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_setlist", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_setlist_0x25eb850, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25eb970 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0x25eba20 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0x25ebad0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_div_0x25ebb80[3] = {
    param_L_0x25eb970,
    param_m_0x25eba20,
    param_n_0x25ebad0,
  };
  gcc_jit_function *func_luaV_div_0x25ebb80 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0x25e16c0, /* gcc_jit_type *return_type */
                                  "luaV_div", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_div_0x25ebb80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ebc80 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0x25ebd30 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0x25ebde0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_mod_0x25ebe90[3] = {
    param_L_0x25ebc80,
    param_m_0x25ebd30,
    param_n_0x25ebde0,
  };
  gcc_jit_function *func_luaV_mod_0x25ebe90 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0x25e16c0, /* gcc_jit_type *return_type */
                                  "luaV_mod", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_mod_0x25ebe90, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25ebf90 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25ec040 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0x25ec0f0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x25ec1a0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x25ec250 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_concat_0x25f2100[5] = {
    param_L_0x25ebf90,
    param_ci_0x25ec040,
    param_a_0x25ec0f0,
    param_b_0x25ec1a0,
    param_c_0x25ec250,
  };
  gcc_jit_function *func_raviV_op_concat_0x25f2100 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_concat", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_concat_0x25f2100, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25efb40 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25f2330 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0x25f23e0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x25e4920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0x25f2490 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_Bx_0x25f2540 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "Bx"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_closure_0x25f25f0[5] = {
    param_L_0x25efb40,
    param_ci_0x25f2330,
    param_cl_0x25f23e0,
    param_a_0x25f2490,
    param_Bx_0x25f2540,
  };
  gcc_jit_function *func_raviV_op_closure_0x25f25f0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_closure", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_closure_0x25f25f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25f2710 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x25f27c0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x25e9730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0x25f2870 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x25e4920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0x25f2920 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x25f29d0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_vararg_0x25f2a80[5] = {
    param_L_0x25f2710,
    param_ci_0x25f27c0,
    param_cl_0x25f2870,
    param_a_0x25f2920,
    param_b_0x25f29d0,
  };
  gcc_jit_function *func_raviV_op_vararg_0x25f2a80 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_vararg", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_vararg_0x25f2a80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25f2ba0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0x25f2c50 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x25e3770, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0x25f2d00 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x25e19e0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0x25f2db0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x25e16c0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_int_0x25f2e60[4] = {
    param_L_0x25f2ba0,
    param_table_0x25f2c50,
    param_key_0x25f2d00,
    param_value_0x25f2db0,
  };
  gcc_jit_function *func_raviH_set_int_0x25f2e60 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviH_set_int", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_int_0x25f2e60, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25f2f60 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0x25f3010 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x25e3770, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0x25f30c0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x25e19e0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0x25f3170 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0x25e1600, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_float_0x25f3220[4] = {
    param_L_0x25f2f60,
    param_table_0x25f3010,
    param_key_0x25f30c0,
    param_value_0x25f3170,
  };
  gcc_jit_function *func_raviH_set_float_0x25f3220 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviH_set_float", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_float_0x25f3220, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x25f3320 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_cl_0x25f33d0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x25e4920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_ra_0x25f3480 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x25e2e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x25f3530 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x25e18e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setupval_0x25f35e0[4] = {
    param_L_0x25f3320,
    param_cl_0x25f33d0,
    param_ra_0x25f3480,
    param_b_0x25f3530,
  };
  gcc_jit_function *func_raviV_op_setupval_0x25f35e0 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x25e1890, /* gcc_jit_type *return_type */
                                  "raviV_op_setupval", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviV_op_setupval_0x25f35e0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_format_0x25f36e0 =
    gcc_jit_context_new_param (ctxt_0x25e0f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0x25e1850, /*gcc_jit_type *type */
                               "format"); /* const char *name */
  gcc_jit_param *params_for_func_printf_0x25f3790[1] = {
    param_format_0x25f36e0,
  };
  gcc_jit_function *func_printf_0x25f3790 =
    gcc_jit_context_new_function (ctxt_0x25e0f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "printf", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_printf_0x25f3790, /* gcc_jit_param **params */
                                  1); /* int is_variadic */


  /* Replay of API calls for ctxt_0x262d820.  */
  gcc_jit_param *param_L_0x25f80e0 =
    gcc_jit_context_new_param (ctxt_0x262d820,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x25e1c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_ravif1_0x26252c0[1] = {
    param_L_0x25f80e0,
  };
  gcc_jit_function *func_ravif1_0x26252c0 =
    gcc_jit_context_new_function (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_EXPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x25e18e0, /* gcc_jit_type *return_type */
                                  "ravif1", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_ravif1_0x26252c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_block *block_entry_0x2623a50 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "entry");
  gcc_jit_lvalue *local_cl_0x2623cd0 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_LClosure___0x25e4920, /* gcc_jit_type *type */
                                "cl"); /* const char *name */
  gcc_jit_block *block_jmp_5_1_0x2623d50 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "jmp_5_1");
  gcc_jit_block *block_jmp_9_2_0x26237d0 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "jmp_9_2");
  gcc_jit_block *block_jmp_12_3_0x26235a0 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "jmp_12_3");
  gcc_jit_lvalue *lvalue_L__ci_0x2623ad0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x25f80e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_ci_0x25eac80); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func_0x2623520=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x2623ad0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_func_0x25ea070); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__0x26234a0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func_0x2623520), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__gc_0x2623420 = 
    gcc_jit_lvalue_access_field (lvalue_L__ci__func__value__0x26234a0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_gc_0x25e2590);
  gcc_jit_rvalue *rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0x26233a0 =
    gcc_jit_context_new_cast (ctxt_0x262d820,
                              NULL, /* gcc_jit_location *loc */
                              gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func__value__gc_0x2623420), /* gcc_jit_rvalue *rvalue */
                              type_struct_ravi_LClosure___0x25e4920); /* gcc_jit_type *type */
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_cl_0x2623cd0, /* gcc_jit_lvalue *lvalue */
                                rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0x26233a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_L__ci__u_0x2623160=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x2623ad0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_u_0x25ea330); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue_L__ci__u_l_0x26230e0 = 
    gcc_jit_rvalue_access_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__u_0x2623160), /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_l_0x25e9de0);
  gcc_jit_rvalue *rvalue_L__ci__u_l_base_0x2623060 = 
    gcc_jit_rvalue_access_field (rvalue_L__ci__u_l_0x26230e0, /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_base_0x25e97d0);
  gcc_jit_lvalue *lvalue_cl__p_0x2623320=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (local_cl_0x2623cd0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_p_0x25e6f80); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_cl__p__k_0x2622ef0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x2623320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_k_0x25e43c0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x2622e70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_0_0x2622df0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0x2622d70[3] = {
    gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x2623ad0),
    rvalue__int_0_0x2622df0,
    rvalue__int_0_0x2622e70,
  };
  gcc_jit_rvalue *call_raviV_op_loadnil__L__ci___int_0___int_0__0x2622d70 =
    gcc_jit_context_new_call (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_raviV_op_loadnil_0x25efda0, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0x2622d70); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_entry_0x2623a50, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_raviV_op_loadnil__L__ci___int_0___int_0__0x2622d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x26247c0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2624740 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x26247c0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x26246c0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2624740, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x2624480 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0x2624400 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0x2622ef0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x2624480); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0x2624380 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0x2624400, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x261f870=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x26246c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__i_0x261f7f0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x261f870, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0x25e2850);
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__0x261f770=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x2624380, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__i_0x261f630 = 
    gcc_jit_lvalue_access_field (lvalue___cl__p__k__int_0____value__0x261f770, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0x25e2850);
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__i_0x261f7f0, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____value__i_0x261f630)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x261f530=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x26246c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____tt__0x261f9c0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x2624380, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x261f530, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____tt__0x261f9c0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x261f410 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x261f390 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x261f410); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x261f310 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x261f390, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_4_0x261f170 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "isfalse_0_4"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x261f0f0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x261f310, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x261f290 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_5_0x261ef50 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_5"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0x2622bd0 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x261f0f0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x261f290); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_5_0x261ef50, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0x2622bd0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x26229b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_6_0x2622ad0 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_6"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2622a50 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x261f0f0), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x26229b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_6_0x2622ad0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2622a50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x26226d0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x261f310, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x26228b0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x26226d0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x25e26f0);
  gcc_jit_rvalue *rvalue__int_0_0x26225b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_7_0x2622380 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_7"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x2622300 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0x26228b0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x26225b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_7_0x2622380, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x2622300); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_6____comparison_0_7_0x26220b0 =
    gcc_jit_context_new_binary_op (ctxt_0x262d820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_6_0x2622ad0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_7_0x2622380)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0x2621fa0 =
    gcc_jit_context_new_binary_op (ctxt_0x262d820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_5_0x261ef50), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_6____comparison_0_7_0x26220b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2623a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_4_0x261f170, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0x2621fa0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_4__0x2621e00 =
    gcc_jit_context_new_unary_op (ctxt_0x262d820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_4_0x261f170)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_2_8_0x2621c70 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_TEST_do_jmp_2_8");
  gcc_jit_block *block_OP_TEST_do_skip_2_9_0x262e000 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_TEST_do_skip_2_9");
  gcc_jit_block_end_with_conditional (block_entry_0x2623a50, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_4__0x2621e00, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_2_8_0x2621c70, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_2_9_0x262e000); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_2_8_0x2621c70, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0x2623d50); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_2_9_0x262e000, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0x2623d50); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0x2622020 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2622cf0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x2622020); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x2622520 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2622cf0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x2621d70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x262e260=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x2622520, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x26266a0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x262e260, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x25e26f0);
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__b_0x26266a0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0x2621d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2626030 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x26259c0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x2622520, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x26259c0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x2626030); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2624e20 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2627d90 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x2624e20); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x2627c40 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2627d90, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_10_0x26274d0 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "isfalse_0_10"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x2624560=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x2627c40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x261f1f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_11_0x261f050 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_11"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0x2622c50 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x2624560), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x261f1f0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_11_0x261f050, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0x2622c50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2622400 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_12_0x2621f00 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_12"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2621bd0 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x2624560), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x2622400); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_12_0x2621f00, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2621bd0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x25f58e0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x2627c40, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x2628700 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x25f58e0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x25e26f0);
  gcc_jit_rvalue *rvalue__int_0_0x2623950 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_13_0x26239a0 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_13"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x2622270 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0x2628700), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x2623950); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_13_0x26239a0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x2622270); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_12____comparison_0_13_0x260ca00 =
    gcc_jit_context_new_binary_op (ctxt_0x262d820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_12_0x2621f00), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_13_0x26239a0)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0x2641a60 =
    gcc_jit_context_new_binary_op (ctxt_0x262d820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_11_0x261f050), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_12____comparison_0_13_0x260ca00); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_10_0x26274d0, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0x2641a60); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_10__0x260d950 =
    gcc_jit_context_new_unary_op (ctxt_0x262d820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_10_0x26274d0)); /* gcc_jit_rvalue *a */
  gcc_jit_rvalue *rvalue_____isfalse_0_10___0x260d9b0 =
    gcc_jit_context_new_unary_op (ctxt_0x262d820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                  rvalue___isfalse_0_10__0x260d950); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_5_14_0x262f1e0 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_TEST_do_jmp_5_14");
  gcc_jit_block *block_OP_TEST_do_skip_5_15_0x262f270 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_TEST_do_skip_5_15");
  gcc_jit_block_end_with_conditional (block_jmp_5_1_0x2623d50, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue_____isfalse_0_10___0x260d9b0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_5_14_0x262f1e0, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_5_15_0x262f270); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_5_14_0x262f1e0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0x26237d0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_0_0x262cea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0x262cef0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x262cea0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0x262cf50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0x262cef0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_1_0x262a4e0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____value__0x262a530=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_0__0x262cf50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____value__b_0x262a590 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_0____value__0x262a530, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x25e26f0);
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x262f270, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_0____value__b_0x262a590, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x262a4e0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x262a640 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____tt__0x25f7d40=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_0__0x262cf50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x262f270, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_0____tt__0x25f7d40, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x262a640); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_5_15_0x262f270, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0x26237d0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0x25f7de0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x25f7e30 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x25f7de0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x25f7e90 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x25f7e30, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x25f7ee0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_cl__p__k__int_0__0x25f8160 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (lvalue_cl__p__k_0x2622ef0), /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x25f7ee0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__cl__p__k__int_0__0x25f7f30 =
    gcc_jit_lvalue_get_address (lvalue_cl__p__k__int_0__0x25f8160, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x25f81c0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x25f7e90, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__i_0x25f8220 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x25f81c0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0x25e2850);
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__0x25f8280=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x25f7f30, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____value__i_0x25f82e0 = 
    gcc_jit_lvalue_access_field (lvalue___cl__p__k__int_0____value__0x25f8280, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0x25e2850);
  gcc_jit_block_add_assignment (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__i_0x25f8220, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____value__i_0x25f82e0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x25f8390=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x25f7e90, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___cl__p__k__int_0____tt__0x25f83f0=
    gcc_jit_rvalue_dereference_field (address_of__cl__p__k__int_0__0x25f7f30, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x25f8390, /* gcc_jit_lvalue *lvalue */
                                gcc_jit_lvalue_as_rvalue (lvalue___cl__p__k__int_0____tt__0x25f83f0)); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x25f8ea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x25f8ef0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x25f8ea0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x25f8f50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x25f8ef0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_16_0x25f8fe0 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "isfalse_0_16"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x25f9040=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x25f8f50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x25f90a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_17_0x25f9130 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_17"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0x25f9190 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x25f9040), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x25f90a0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_17_0x25f9130, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0x25f9190); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x25f9240 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_18_0x25f92d0 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_18"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0x25f9330 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x25f9040), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x25f9240); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_18_0x25f92d0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0x25f9330); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x25f93e0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x25f8f50, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x25f9440 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x25f93e0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x25e26f0);
  gcc_jit_rvalue *rvalue__int_0_0x25f94a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_19_0x25f9530 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_19"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x25f9590 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0x25f9440), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x25f94a0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_19_0x25f9530, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x25f9590); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_18____comparison_0_19_0x25f9690 =
    gcc_jit_context_new_binary_op (ctxt_0x262d820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_18_0x25f92d0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_19_0x25f9530)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0x25f96f0 =
    gcc_jit_context_new_binary_op (ctxt_0x262d820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_17_0x25f9130), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_18____comparison_0_19_0x25f9690); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_16_0x25f8fe0, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0x25f96f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_16__0x25f97a0 =
    gcc_jit_context_new_unary_op (ctxt_0x262d820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x25e1590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_16_0x25f8fe0)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_9_20_0x25f9840 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_TEST_do_jmp_9_20");
  gcc_jit_block *block_OP_TEST_do_skip_9_21_0x25f9960 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_TEST_do_skip_9_21");
  gcc_jit_block_end_with_conditional (block_jmp_9_2_0x26237d0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_16__0x25f97a0, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_9_20_0x25f9840, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_9_21_0x25f9960); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_9_20_0x25f9840, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0x26235a0); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_9_21_0x25f9960, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0x26235a0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0x25f9a80 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2621af0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x25f9a80); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x25f9ad0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2621af0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x25f9b20 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x25f8890=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x25f9ad0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x25e2bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x25f88f0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x25f8890, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x25e26f0);
  gcc_jit_block_add_assignment (block_jmp_12_3_0x26235a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__b_0x25f88f0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0x25f9b20); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x25f89a0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x25f89f0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x25f9ad0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x25e2ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x26235a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x25f89f0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x25f89a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x25f8aa0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x25f8af0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x25f8aa0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x25f8b50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x25f8af0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_2_0x25f8ba0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         2); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_2__0x25f8bf0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_2_0x25f8ba0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_2__0x25f8c50 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_2__0x25f8bf0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0x25f8ca0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x25f80e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0x25eab20); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x26235a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0x25f8ca0, /* gcc_jit_lvalue *lvalue */
                                address_of__L__ci__u_l_base__int_2__0x25f8c50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0x25f8d50=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x2623320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0x25e5700); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x25f8db0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_22_0x2616620 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_22"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0x2616680 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0x25f8d50), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x25f8db0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x26235a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_22_0x2616620, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0x2616680); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_12_23_0x2616770 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_RETURN_if_sizep_gt_0_12_23");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_12_24_0x2616800 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_RETURN_else_sizep_gt_0_12_24");
  gcc_jit_block_end_with_conditional (block_jmp_12_3_0x26235a0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_22_0x2616620), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_12_23_0x2616770, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_12_24_0x2616800); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__L__ci__u_l_base__0x26168f0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x25f80e0),
    rvalue_L__ci__u_l_base_0x2623060,
  };
  gcc_jit_rvalue *call_luaF_close__L__L__ci__u_l_base__0x26168f0 =
    gcc_jit_context_new_call (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0x25ed700, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__L__ci__u_l_base__0x26168f0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_12_23_0x2616770, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__L__ci__u_l_base__0x26168f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_12_23_0x2616770, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_12_24_0x2616800); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L____L__ci__u_l_base__int_1____0x26169d0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x25f80e0),
    address_of__L__ci__u_l_base__int_1__0x25f8b50,
  };
  gcc_jit_rvalue *call_luaD_poscall__L____L__ci__u_l_base__int_1____0x26169d0 =
    gcc_jit_context_new_call (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0x25ec940, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L____L__ci__u_l_base__int_1____0x26169d0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_12_24_0x2616800, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L____L__ci__u_l_base__int_1____0x26169d0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2616a70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_12_24_0x2616800, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0x2616a70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_LINK_BLOCK_13_25_0x2616b40 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "LINK_BLOCK_13_25");
  gcc_jit_rvalue *rvalue__int_0_0x2616b90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0x2616be0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x2616b90); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0x2616c40 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0x2616be0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x2616c90 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0x2616ce0 = 
    gcc_jit_context_new_array_access (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2623060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x2616c90); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0x2616d40 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0x2616ce0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0x2616d90=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x25f80e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0x25eab20); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_LINK_BLOCK_13_25_0x2616b40, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0x2616d90, /* gcc_jit_lvalue *lvalue */
                                address_of__L__ci__u_l_base__int_0__0x2616d40); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0x2616e40=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x2623320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0x25e5700); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x2616ea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_26_0x2616f30 =
    gcc_jit_function_new_local (func_ravif1_0x26252c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x25e1590, /* gcc_jit_type *type */
                                "comparison_0_26"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0x2616f90 =
    gcc_jit_context_new_comparison (ctxt_0x262d820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0x2616e40), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x2616ea0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_LINK_BLOCK_13_25_0x2616b40, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_26_0x2616f30, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0x2616f90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_13_27_0x2617080 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_RETURN_if_sizep_gt_0_13_27");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_13_28_0x2617110 =
    gcc_jit_function_new_block (func_ravif1_0x26252c0, "OP_RETURN_else_sizep_gt_0_13_28");
  gcc_jit_block_end_with_conditional (block_LINK_BLOCK_13_25_0x2616b40, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_26_0x2616f30), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_13_27_0x2617080, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_13_28_0x2617110); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__L__ci__u_l_base__0x26171b0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x25f80e0),
    rvalue_L__ci__u_l_base_0x2623060,
  };
  gcc_jit_rvalue *call_luaF_close__L__L__ci__u_l_base__0x26171b0 =
    gcc_jit_context_new_call (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0x25ed700, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__L__ci__u_l_base__0x26171b0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_13_27_0x2617080, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__L__ci__u_l_base__0x26171b0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_13_27_0x2617080, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_13_28_0x2617110); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L____L__ci__u_l_base__int_0____0x2617290[2] = {
    gcc_jit_param_as_rvalue (param_L_0x25f80e0),
    address_of__L__ci__u_l_base__int_0__0x2616c40,
  };
  gcc_jit_rvalue *call_luaD_poscall__L____L__ci__u_l_base__int_0____0x2617290 =
    gcc_jit_context_new_call (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0x25ec940, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L____L__ci__u_l_base__int_0____0x2617290); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_13_28_0x2617110, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L____L__ci__u_l_base__int_0____0x2617290); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2617330 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x262d820, /* gcc_jit_context *ctxt */
                                         type_int_0x25e18e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_13_28_0x2617110, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0x2617330); /* gcc_jit_rvalue *rvalue */
}

[-- Attachment #3: bug_rdump_constantfix.txt --]
[-- Type: text/plain, Size: 210049 bytes --]

/* This code was autogenerated by gcc_jit_context_dump_reproducer_to_file.

   libgccjit (GCC) version 5.1.1 20150704 (x86_64-unknown-linux-gnu)
  	compiled by GNU C version 5.1.0, GMP version 5.1.3, MPFR version 3.1.2-p3, MPC version 1.0.1
*/
#include <libgccjit.h>

#pragma GCC diagnostic ignored "-Wunused-variable"

static void
set_options (gcc_jit_context *ctxt_0x2414f30,
             gcc_jit_context *ctxt_0x2461820);

static void
create_code (gcc_jit_context *ctxt_0x2414f30,
             gcc_jit_context *ctxt_0x2461820);

int
main (int argc, const char **argv)
{
  gcc_jit_context *ctxt_0x2414f30;
  gcc_jit_context *ctxt_0x2461820;
  gcc_jit_result *result;

  ctxt_0x2414f30 = gcc_jit_context_acquire ();
  ctxt_0x2461820 = gcc_jit_context_new_child_context (ctxt_0x2414f30);
  set_options (ctxt_0x2414f30,
               ctxt_0x2461820);
  create_code (ctxt_0x2414f30,
               ctxt_0x2461820);
  result = gcc_jit_context_compile (ctxt_0x2461820);
  gcc_jit_context_release (ctxt_0x2461820);
  gcc_jit_context_release (ctxt_0x2414f30);
  gcc_jit_result_release (result);
  return 0;
}

static void
set_options (gcc_jit_context *ctxt_0x2414f30,
             gcc_jit_context *ctxt_0x2461820)
{
  /* Set options for ctxt_0x2414f30.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0x2414f30,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  NULL);
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0x2414f30,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2414f30,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
  gcc_jit_context_set_bool_allow_unreachable_blocks (ctxt_0x2414f30, 1);

  /* Set options for ctxt_0x2461820.  */
  /* String options.  */
  gcc_jit_context_set_str_option (ctxt_0x2461820,
                                  GCC_JIT_STR_OPTION_PROGNAME,
                                  NULL);
  /* Int options.  */
  gcc_jit_context_set_int_option (ctxt_0x2461820,
                                  GCC_JIT_INT_OPTION_OPTIMIZATION_LEVEL,
                                  3);
  /* Boolean options.  */
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_DEBUGINFO,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_TREE,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_DUMP_INITIAL_GIMPLE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_DUMP_GENERATED_CODE,
                                  1);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_DUMP_SUMMARY,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_DUMP_EVERYTHING,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_SELFCHECK_GC,
                                  0);
  gcc_jit_context_set_bool_option (ctxt_0x2461820,
                                  GCC_JIT_BOOL_OPTION_KEEP_INTERMEDIATES,
                                  0);
  gcc_jit_context_set_bool_allow_unreachable_blocks (ctxt_0x2461820, 1);
}

static void
create_code (gcc_jit_context *ctxt_0x2414f30,
             gcc_jit_context *ctxt_0x2461820)
{
  /* Replay of API calls for ctxt_0x2414f30.  */
  gcc_jit_type *type_bool_0x2415590 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_BOOL);
  gcc_jit_type *type_double_0x2415600 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_DOUBLE);
  gcc_jit_type *type_double___0x2415640 =
    gcc_jit_type_get_pointer (type_double_0x2415600);
  gcc_jit_type *type_double_____0x2415680 =
    gcc_jit_type_get_pointer (type_double___0x2415640);
  gcc_jit_type *type_long_long_0x24156c0 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_LONG_LONG);
  gcc_jit_type *type_long_long___0x2415750 =
    gcc_jit_type_get_pointer (type_long_long_0x24156c0);
  gcc_jit_type *type_long_long_____0x2415790 =
    gcc_jit_type_get_pointer (type_long_long___0x2415750);
  gcc_jit_type *type_unsigned_long_long_0x24157d0 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_UNSIGNED_LONG_LONG);
  gcc_jit_type *type_size_t_0x2415810 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_SIZE_T);
  gcc_jit_type *type_int_0x24158e0 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_INT);
  gcc_jit_type *type_int___0x2415920 =
    gcc_jit_type_get_pointer (type_int_0x24158e0);
  gcc_jit_type *type_short_0x2415960 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_SHORT);
  gcc_jit_type *type_unsigned_short_0x24159a0 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_UNSIGNED_SHORT);
  gcc_jit_type *type_unsigned_int_0x24159e0 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_UNSIGNED_INT);
  gcc_jit_type *type_unsigned_char_0x2415a20 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_UNSIGNED_CHAR);
  gcc_jit_type *type_char_0x2415a60 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_CHAR);
  gcc_jit_type *type_char___0x2415aa0 =
    gcc_jit_type_get_pointer (type_char_0x2415a60);
  gcc_jit_type *type_const_char___0x2415850 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_CONST_CHAR_PTR);
  gcc_jit_type *type_void_0x2415890 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_VOID);
  gcc_jit_type *type_void___0x2415bb0 = gcc_jit_context_get_type (ctxt_0x2414f30, GCC_JIT_TYPE_VOID_PTR);
  gcc_jit_type *type_unsigned_int___0x2415bf0 =
    gcc_jit_type_get_pointer (type_unsigned_int_0x24159e0);
  gcc_jit_struct *struct_struct_ravi_lua_State_0x2415700 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_State___0x2415c90 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_State_0x2415700));
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____0x2415cd0[1] = {
    type_struct_ravi_lua_State___0x2415c90,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____0x2415ae0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0x24158e0, /* gcc_jit_type *return_type */
                                           1, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____0x2415cd0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_int__struct_ravi_lua_State____int__long_long__0x2415b20[3] = {
    type_struct_ravi_lua_State___0x2415c90,
    type_int_0x24158e0,
    type_long_long_0x24156c0,
  };
  gcc_jit_type *ptr_to_int______struct_ravi_lua_State____int__long_long__0x2415e80 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_int_0x24158e0, /* gcc_jit_type *return_type */
                                           3, /* int num_params */
                                           params_for_function_type_int__struct_ravi_lua_State____int__long_long__0x2415b20, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_type *params_for_function_type_void__void____void____size_t__size_t__0x2415ec0[4] = {
    type_void___0x2415bb0,
    type_void___0x2415bb0,
    type_size_t_0x2415810,
    type_size_t_0x2415810,
  };
  gcc_jit_type *ptr_to_void______void____void____size_t__size_t__0x2415f40 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void_0x2415890, /* gcc_jit_type *return_type */
                                           4, /* int num_params */
                                           params_for_function_type_void__void____void____size_t__size_t__0x2415ec0, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_lua_Debug_0x2415fe0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_Debug"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_Debug___0x2416030 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_Debug_0x2415fe0));
  gcc_jit_type *params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0x2416070[2] = {
    type_struct_ravi_lua_State___0x2415c90,
    type_struct_ravi_lua_Debug___0x2416030,
  };
  gcc_jit_type *ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0x24160f0 =
    gcc_jit_context_new_function_ptr_type (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                           NULL, /* gcc_jit_location *loc */
                                           type_void___0x2415bb0, /* gcc_jit_type *return_type */
                                           2, /* int num_params */
                                           params_for_function_type_void____struct_ravi_lua_State____struct_ravi_lua_Debug____0x2416070, /* gcc_jit_type **param_types */
                                           0); /* int is_variadic */
  gcc_jit_struct *struct_struct_ravi_GCObject_0x2416190 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_GCObject"); /* const char *name */
  gcc_jit_type *type_struct_ravi_GCObject___0x2415d50 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_GCObject_0x2416190));
  gcc_jit_field *field_next_0x2415df0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x24163c0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x2416470 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *fields_fields_0x24164c0[3] = {
    field_next_0x2415df0,
    field_tt_0x24163c0,
    field_marked_0x2416470,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_GCObject_0x2416190, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x24164c0); /* gcc_jit_field **fields */
  gcc_jit_field *field_gc_0x2416590 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "gc"); /* const char *name */
  gcc_jit_field *field_p_0x2416640 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0x2415bb0, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_b_0x24166f0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "b"); /* const char *name */
  gcc_jit_field *field_f_0x24167a0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0x2415ae0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_field *field_i_0x2416850 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /* gcc_jit_type *type, */
                               "i"); /* const char *name */
  gcc_jit_field *field_n_0x2416240 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0x2415600, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Value_0x24162f0[6] = {
    field_gc_0x2416590,
    field_p_0x2416640,
    field_b_0x24166f0,
    field_f_0x24167a0,
    field_i_0x2416850,
    field_n_0x2416240,
  };
  gcc_jit_type *union_union_ravi_Value_0x24162f0 =
    gcc_jit_context_new_union_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Value", /* const char *name */
                                    6, /* int num_fields */
                                    fields_for_union_union_ravi_Value_0x24162f0); /* gcc_jit_field **fields */
  gcc_jit_field *field_value__0x2416bf0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0x24162f0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0x2416ca0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TValue_0x2416d50 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TValue"); /* const char *name */
  gcc_jit_field *fields_fields_0x2416df0[2] = {
    field_value__0x2416bf0,
    field_tt__0x2416ca0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TValue_0x2416d50, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x2416df0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_TValue___0x2416e30 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x2416d50));
  gcc_jit_type *type_const_struct_ravi_TValue_0x2416e70 =
    gcc_jit_type_get_const (gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x2416d50));
  gcc_jit_type *type_const_struct_ravi_TValue___0x2416eb0 =
    gcc_jit_type_get_pointer (type_const_struct_ravi_TValue_0x2416e70);
  gcc_jit_struct *struct_struct_ravi_TString_0x2416f50 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TString"); /* const char *name */
  gcc_jit_type *type_struct_ravi_TString___0x2416fa0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_TString_0x2416f50));
  gcc_jit_type *type_struct_ravi_TString_____0x2416fe0 =
    gcc_jit_type_get_pointer (type_struct_ravi_TString___0x2416fa0);
  gcc_jit_field *field_next_0x2417080 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x2417130 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x24171e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_extra_0x2417290 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_hash_0x2416900 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x24159e0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_len_0x24169b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x2415810, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_hnext_0x2416a60 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x2416fa0, /* gcc_jit_type *type, */
                               "hnext"); /* const char *name */
  gcc_jit_field *fields_fields_0x2416ab0[7] = {
    field_next_0x2417080,
    field_tt_0x2417130,
    field_marked_0x24171e0,
    field_extra_0x2417290,
    field_hash_0x2416900,
    field_len_0x24169b0,
    field_hnext_0x2416a60,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TString_0x2416f50, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x2416ab0); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Table_0x2417720 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Table"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Table___0x2417770 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Table_0x2417720));
  gcc_jit_type *type_struct_ravi_Table_____0x24177b0 =
    gcc_jit_type_get_pointer (type_struct_ravi_Table___0x2417770);
  gcc_jit_field *field_next_0x2417850 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x2417900 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x24179b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_ttuv__0x2417a60 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "ttuv_"); /* const char *name */
  gcc_jit_field *field_metatable_0x2417b10 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x2417770, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_len_0x2417bc0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x2415810, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_user__0x2417c70 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0x24162f0, /* gcc_jit_type *type, */
                               "user_"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Udata_0x2417d20 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Udata"); /* const char *name */
  gcc_jit_field *fields_fields_0x2417d70[7] = {
    field_next_0x2417850,
    field_tt_0x2417900,
    field_marked_0x24179b0,
    field_ttuv__0x2417a60,
    field_metatable_0x2417b10,
    field_len_0x2417bc0,
    field_user__0x2417c70,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Udata_0x2417d20, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x2417d70); /* gcc_jit_field **fields */
  gcc_jit_field *field_name_0x2417e60 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x2416fa0, /* gcc_jit_type *type, */
                               "name"); /* const char *name */
  gcc_jit_field *field_type_0x2417f10 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "type"); /* const char *name */
  gcc_jit_field *field_instack_0x2417fc0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "instack"); /* const char *name */
  gcc_jit_field *field_idx_0x2418070 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "idx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Upvaldesc_0x2418120 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Upvaldesc"); /* const char *name */
  gcc_jit_field *fields_fields_0x2418200[4] = {
    field_name_0x2417e60,
    field_type_0x2417f10,
    field_instack_0x2417fc0,
    field_idx_0x2418070,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Upvaldesc_0x2418120, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0x2418200); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Upvaldesc___0x2418270 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Upvaldesc_0x2418120));
  gcc_jit_field *field_varname_0x2417300 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x2416fa0, /* gcc_jit_type *type, */
                               "varname"); /* const char *name */
  gcc_jit_field *field_startpc_0x24173b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "startpc"); /* const char *name */
  gcc_jit_field *field_endpc_0x2417460 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "endpc"); /* const char *name */
  gcc_jit_field *field_ravi_type_0x2417510 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "ravi_type"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_LocVar_0x24175c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LocVar"); /* const char *name */
  gcc_jit_field *fields_fields_0x2417610[4] = {
    field_varname_0x2417300,
    field_startpc_0x24173b0,
    field_endpc_0x2417460,
    field_ravi_type_0x2417510,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LocVar_0x24175c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             4, /* int num_fields */
                             fields_fields_0x2417610); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_LocVar___0x2417680 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LocVar_0x24175c0));
  gcc_jit_struct *struct_struct_ravi_LClosure_0x24188d0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_LClosure"); /* const char *name */
  gcc_jit_type *type_struct_ravi_LClosure___0x2418920 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0x24188d0));
  gcc_jit_type *type_struct_ravi_LClosure_____0x2418960 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure___0x2418920);
  gcc_jit_type *type_struct_ravi_LClosure_______0x24189a0 =
    gcc_jit_type_get_pointer (type_struct_ravi_LClosure_____0x2418960);
  gcc_jit_field *field_jit_status_0x2418a40 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "jit_status"); /* const char *name */
  gcc_jit_field *field_jit_flags_0x2418af0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "jit_flags"); /* const char *name */
  gcc_jit_field *field_execution_count_0x2418ba0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0x24159a0, /* gcc_jit_type *type, */
                               "execution_count"); /* const char *name */
  gcc_jit_field *field_jit_data_0x2418c50 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0x2415bb0, /* gcc_jit_type *type, */
                               "jit_data"); /* const char *name */
  gcc_jit_field *field_jit_function_0x2418d00 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0x2415ae0, /* gcc_jit_type *type, */
                               "jit_function"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviJITProto_0x2418db0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviJITProto"); /* const char *name */
  gcc_jit_field *fields_fields_0x2418e00[5] = {
    field_jit_status_0x2418a40,
    field_jit_flags_0x2418af0,
    field_execution_count_0x2418ba0,
    field_jit_data_0x2418c50,
    field_jit_function_0x2418d00,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviJITProto_0x2418db0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0x2418e00); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_Proto_0x2418ef0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Proto"); /* const char *name */
  gcc_jit_type *type_struct_ravi_Proto___0x2418f40 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Proto_0x2418ef0));
  gcc_jit_type *type_struct_ravi_Proto_____0x2418f80 =
    gcc_jit_type_get_pointer (type_struct_ravi_Proto___0x2418f40);
  gcc_jit_field *field_next_0x2419020 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x24190d0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x2419180 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_numparams_0x2419230 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "numparams"); /* const char *name */
  gcc_jit_field *field_is_vararg_0x24192e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "is_vararg"); /* const char *name */
  gcc_jit_field *field_maxstacksize_0x2419390 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "maxstacksize"); /* const char *name */
  gcc_jit_field *field_sizeupvalues_0x2419440 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "sizeupvalues"); /* const char *name */
  gcc_jit_field *field_sizek_0x24194f0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "sizek"); /* const char *name */
  gcc_jit_field *field_sizecode_0x24195a0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "sizecode"); /* const char *name */
  gcc_jit_field *field_sizelineinfo_0x2419650 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "sizelineinfo"); /* const char *name */
  gcc_jit_field *field_sizep_0x2419700 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "sizep"); /* const char *name */
  gcc_jit_field *field_sizelocvars_0x24197b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "sizelocvars"); /* const char *name */
  gcc_jit_field *field_linedefined_0x2419860 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "linedefined"); /* const char *name */
  gcc_jit_field *field_lastlinedefined_0x2418310 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "lastlinedefined"); /* const char *name */
  gcc_jit_field *field_k_0x24183c0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_code_0x2418470 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0x2415bf0, /* gcc_jit_type *type, */
                               "code"); /* const char *name */
  gcc_jit_field *field_p_0x2418520 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto_____0x2418f80, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_field *field_lineinfo_0x24185d0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0x2415920, /* gcc_jit_type *type, */
                               "lineinfo"); /* const char *name */
  gcc_jit_field *field_locvars_0x2418680 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LocVar___0x2417680, /* gcc_jit_type *type, */
                               "locvars"); /* const char *name */
  gcc_jit_field *field_upvalues_0x2418730 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Upvaldesc___0x2418270, /* gcc_jit_type *type, */
                               "upvalues"); /* const char *name */
  gcc_jit_field *field_cache_0x24187e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x2418920, /* gcc_jit_type *type, */
                               "cache"); /* const char *name */
  gcc_jit_field *field_source_0x241a160 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString___0x2416fa0, /* gcc_jit_type *type, */
                               "source"); /* const char *name */
  gcc_jit_field *field_gclist_0x241a210 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_jit_0x241a2c0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviJITProto_0x2418db0), /* gcc_jit_type *type, */
                               "ravi_jit"); /* const char *name */
  gcc_jit_field *fields_fields_0x241a310[24] = {
    field_next_0x2419020,
    field_tt_0x24190d0,
    field_marked_0x2419180,
    field_numparams_0x2419230,
    field_is_vararg_0x24192e0,
    field_maxstacksize_0x2419390,
    field_sizeupvalues_0x2419440,
    field_sizek_0x24194f0,
    field_sizecode_0x24195a0,
    field_sizelineinfo_0x2419650,
    field_sizep_0x2419700,
    field_sizelocvars_0x24197b0,
    field_linedefined_0x2419860,
    field_lastlinedefined_0x2418310,
    field_k_0x24183c0,
    field_code_0x2418470,
    field_p_0x2418520,
    field_lineinfo_0x24185d0,
    field_locvars_0x2418680,
    field_upvalues_0x2418730,
    field_cache_0x24187e0,
    field_source_0x241a160,
    field_gclist_0x241a210,
    field_ravi_jit_0x241a2c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Proto_0x2418ef0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0x241a310); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_UpVal_0x241a480 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal"); /* const char *name */
  gcc_jit_type *type_struct_ravi_UpVal___0x241a4d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_UpVal_0x241a480));
  gcc_jit_field *field_next_0x241a570 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x241a620 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x241a6d0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0x241a780 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0x241a830 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_f_0x241a8e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____0x2415ae0, /* gcc_jit_type *type, */
                               "f"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_TValue_1__0x241a930 =
    gcc_jit_context_new_array_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x2416d50), /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvalue_0x241a9e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_TValue_1__0x241a930, /* gcc_jit_type *type, */
                               "upvalue"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CClosure_0x241aa90 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CClosure"); /* const char *name */
  gcc_jit_field *fields_fields_0x241aae0[7] = {
    field_next_0x241a570,
    field_tt_0x241a620,
    field_marked_0x241a6d0,
    field_nupvalues_0x241a780,
    field_gclist_0x241a830,
    field_f_0x241a8e0,
    field_upvalue_0x241a9e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CClosure_0x241aa90, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x241aae0); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_CClosure___0x241ab70 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0x241aa90));
  gcc_jit_field *field_next_0x241ac10 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x241acc0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x241ad70 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_nupvalues_0x241ae20 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "nupvalues"); /* const char *name */
  gcc_jit_field *field_gclist_0x241aed0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_p_0x241af80 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Proto___0x2418f40, /* gcc_jit_type *type, */
                               "p"); /* const char *name */
  gcc_jit_type *array_type_struct_ravi_UpVal___1__0x241afd0 =
    gcc_jit_context_new_array_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    type_struct_ravi_UpVal___0x241a4d0, /* gcc_jit_type *element_type */
                                    1); /* int num_elements */
  gcc_jit_field *field_upvals_0x241b080 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               array_type_struct_ravi_UpVal___1__0x241afd0, /* gcc_jit_type *type, */
                               "upvals"); /* const char *name */
  gcc_jit_field *fields_fields_0x241b0d0[7] = {
    field_next_0x241ac10,
    field_tt_0x241acc0,
    field_marked_0x241ad70,
    field_nupvalues_0x241ae20,
    field_gclist_0x241aed0,
    field_p_0x241af80,
    field_upvals_0x241b080,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_LClosure_0x24188d0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             7, /* int num_fields */
                             fields_fields_0x241b0d0); /* gcc_jit_field **fields */
  gcc_jit_field *field_c_0x241b1c0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CClosure_0x241aa90), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *field_l_0x241b270 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_LClosure_0x24188d0), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_Closure_0x241b320[2] = {
    field_c_0x241b1c0,
    field_l_0x241b270,
  };
  gcc_jit_type *union_union_ravi_Closure_0x241b320 =
    gcc_jit_context_new_union_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_Closure", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_Closure_0x241b320); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_Closure___0x241b3f0 =
    gcc_jit_type_get_pointer (union_union_ravi_Closure_0x241b320);
  gcc_jit_field *field_value__0x241b490 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_Value_0x24162f0, /* gcc_jit_type *type, */
                               "value_"); /* const char *name */
  gcc_jit_field *field_tt__0x241b540 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "tt_"); /* const char *name */
  gcc_jit_field *field_next_0x241b5f0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_TKey_nk_0x241b6a0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_TKey_nk"); /* const char *name */
  gcc_jit_field *fields_fields_0x2418170[3] = {
    field_value__0x241b490,
    field_tt__0x241b540,
    field_next_0x241b5f0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_TKey_nk_0x241b6a0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x2418170); /* gcc_jit_field **fields */
  gcc_jit_field *field_nk_0x241b800 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TKey_nk_0x241b6a0), /* gcc_jit_type *type, */
                               "nk"); /* const char *name */
  gcc_jit_field *field_tvk_0x241b8b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x2416d50), /* gcc_jit_type *type, */
                               "tvk"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_TKey_0x241b960[2] = {
    field_nk_0x241b800,
    field_tvk_0x241b8b0,
  };
  gcc_jit_type *union_union_ravi_TKey_0x241b960 =
    gcc_jit_context_new_union_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_TKey", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_TKey_0x241b960); /* gcc_jit_field **fields */
  gcc_jit_type *type_union_ravi_TKey___0x241ba30 =
    gcc_jit_type_get_pointer (union_union_ravi_TKey_0x241b960);
  gcc_jit_field *field_i_val_0x241bad0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x2416d50), /* gcc_jit_type *type, */
                               "i_val"); /* const char *name */
  gcc_jit_field *field_i_key_0x241bb80 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_TKey_0x241b960, /* gcc_jit_type *type, */
                               "i_key"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Node_0x2419910 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Node"); /* const char *name */
  gcc_jit_field *fields_fields_0x2419960[2] = {
    field_i_val_0x241bad0,
    field_i_key_0x241bb80,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Node_0x2419910, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x2419960); /* gcc_jit_field **fields */
  gcc_jit_type *type_struct_ravi_Node___0x24199d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_Node_0x2419910));
  gcc_jit_field *field_data_0x2419a70 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_void___0x2415bb0, /* gcc_jit_type *type, */
                               "data"); /* const char *name */
  gcc_jit_field *field_len_0x2419b20 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x24159e0, /* gcc_jit_type *type, */
                               "len"); /* const char *name */
  gcc_jit_field *field_size_0x2419bd0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x24159e0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_field *field_array_type_0x2419c80 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "array_type"); /* const char *name */
  gcc_jit_field *field_array_modifier_0x2419d30 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "array_modifier"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_RaviArray_0x2419de0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_RaviArray"); /* const char *name */
  gcc_jit_field *fields_fields_0x2419e30[5] = {
    field_data_0x2419a70,
    field_len_0x2419b20,
    field_size_0x2419bd0,
    field_array_type_0x2419c80,
    field_array_modifier_0x2419d30,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_RaviArray_0x2419de0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             5, /* int num_fields */
                             fields_fields_0x2419e30); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0x2419f20 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x2419fd0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x241a080 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_flags_0x241c890 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "flags"); /* const char *name */
  gcc_jit_field *field_lsizenode_0x241c940 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "lsizenode"); /* const char *name */
  gcc_jit_field *field_sizearray_0x241c9f0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x24159e0, /* gcc_jit_type *type, */
                               "sizearray"); /* const char *name */
  gcc_jit_field *field_array_0x241caa0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "array"); /* const char *name */
  gcc_jit_field *field_node_0x241cb50 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0x24199d0, /* gcc_jit_type *type, */
                               "node"); /* const char *name */
  gcc_jit_field *field_lastfree_0x241cc00 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Node___0x24199d0, /* gcc_jit_type *type, */
                               "lastfree"); /* const char *name */
  gcc_jit_field *field_metatable_0x241ccb0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x2417770, /* gcc_jit_type *type, */
                               "metatable"); /* const char *name */
  gcc_jit_field *field_gclist_0x241cd60 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_ravi_array_0x241ce10 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_RaviArray_0x2419de0), /* gcc_jit_type *type, */
                               "ravi_array"); /* const char *name */
  gcc_jit_field *fields_fields_0x241ce60[12] = {
    field_next_0x2419f20,
    field_tt_0x2419fd0,
    field_marked_0x241a080,
    field_flags_0x241c890,
    field_lsizenode_0x241c940,
    field_sizearray_0x241c9f0,
    field_array_0x241caa0,
    field_node_0x241cb50,
    field_lastfree_0x241cc00,
    field_metatable_0x241ccb0,
    field_gclist_0x241cd60,
    field_ravi_array_0x241ce10,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Table_0x2417720, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             12, /* int num_fields */
                             fields_fields_0x241ce60); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_lua_longjmp_0x241cf90 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_lua_longjmp"); /* const char *name */
  gcc_jit_type *type_struct_ravi_lua_longjmp___0x241cfe0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_lua_longjmp_0x241cf90));
  gcc_jit_field *field_buffer_0x241d080 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_char___0x2415aa0, /* gcc_jit_type *type, */
                               "buffer"); /* const char *name */
  gcc_jit_field *field_n_0x241d130 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x2415810, /* gcc_jit_type *type, */
                               "n"); /* const char *name */
  gcc_jit_field *field_buffsize_0x241d1e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x2415810, /* gcc_jit_type *type, */
                               "buffsize"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_Mbuffer_0x241d290 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_Mbuffer"); /* const char *name */
  gcc_jit_field *fields_fields_0x241d2e0[3] = {
    field_buffer_0x241d080,
    field_n_0x241d130,
    field_buffsize_0x241d1e0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_Mbuffer_0x241d290, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x241d2e0); /* gcc_jit_field **fields */
  gcc_jit_field *field_hash_0x241d3b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TString_____0x2416fe0, /* gcc_jit_type *type, */
                               "hash"); /* const char *name */
  gcc_jit_field *field_nuse_0x241d460 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "nuse"); /* const char *name */
  gcc_jit_field *field_size_0x241d510 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "size"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_stringtable_0x241d5c0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_stringtable"); /* const char *name */
  gcc_jit_field *fields_fields_0x241d610[3] = {
    field_hash_0x241d3b0,
    field_nuse_0x241d460,
    field_size_0x241d510,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_stringtable_0x241d5c0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x241d610); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_CallInfo_0x241d6e0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo"); /* const char *name */
  gcc_jit_type *type_struct_ravi_CallInfo___0x241d730 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0x241d6e0));
  gcc_jit_field *field_base_0x241d7d0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "base"); /* const char *name */
  gcc_jit_field *field_savedpc_0x241d880 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0x2415bf0, /* gcc_jit_type *type, */
                               "savedpc"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_lua_0x241d930 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_lua"); /* const char *name */
  gcc_jit_field *fields_fields_0x241b6f0[2] = {
    field_base_0x241d7d0,
    field_savedpc_0x241d880,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_lua_0x241d930, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x241b6f0); /* gcc_jit_field **fields */
  gcc_jit_field *field_k_0x241dab0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_int______struct_ravi_lua_State____int__long_long__0x2415e80, /* gcc_jit_type *type, */
                               "k"); /* const char *name */
  gcc_jit_field *field_old_errfunc_0x241db60 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /* gcc_jit_type *type, */
                               "old_errfunc"); /* const char *name */
  gcc_jit_field *field_ctx_0x241dc10 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /* gcc_jit_type *type, */
                               "ctx"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_CallInfo_C_0x241dcc0 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_CallInfo_C"); /* const char *name */
  gcc_jit_field *fields_fields_0x241dd10[3] = {
    field_k_0x241dab0,
    field_old_errfunc_0x241db60,
    field_ctx_0x241dc10,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_C_0x241dcc0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x241dd10); /* gcc_jit_field **fields */
  gcc_jit_field *field_l_0x241dde0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_lua_0x241d930), /* gcc_jit_type *type, */
                               "l"); /* const char *name */
  gcc_jit_field *field_c_0x241de90 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_C_0x241dcc0), /* gcc_jit_type *type, */
                               "c"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_CallInfo_u_0x241df40[2] = {
    field_l_0x241dde0,
    field_c_0x241de90,
  };
  gcc_jit_type *union_union_ravi_CallInfo_u_0x241df40 =
    gcc_jit_context_new_union_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_CallInfo_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_CallInfo_u_0x241df40); /* gcc_jit_field **fields */
  gcc_jit_field *field_func_0x241e070 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "func"); /* const char *name */
  gcc_jit_field *field_top_0x241e120 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_previous_0x241e1d0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /* gcc_jit_type *type, */
                               "previous"); /* const char *name */
  gcc_jit_field *field_next_0x241e280 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_u_0x241e330 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_CallInfo_u_0x241df40, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *field_extra_0x241e3e0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /* gcc_jit_type *type, */
                               "extra"); /* const char *name */
  gcc_jit_field *field_nresults_0x241e490 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_short_0x2415960, /* gcc_jit_type *type, */
                               "nresults"); /* const char *name */
  gcc_jit_field *field_callstatus_0x241e540 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "callstatus"); /* const char *name */
  gcc_jit_field *fields_fields_0x241e590[8] = {
    field_func_0x241e070,
    field_top_0x241e120,
    field_previous_0x241e1d0,
    field_next_0x241e280,
    field_u_0x241e330,
    field_extra_0x241e3e0,
    field_nresults_0x241e490,
    field_callstatus_0x241e540,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_CallInfo_0x241d6e0, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             8, /* int num_fields */
                             fields_fields_0x241e590); /* gcc_jit_field **fields */
  gcc_jit_struct *struct_struct_ravi_State_0x241e680 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_State___0x241e6d0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_State_0x241e680));
  gcc_jit_struct *struct_struct_ravi_global_State_0x241e770 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_global_State"); /* const char *name */
  gcc_jit_type *type_struct_ravi_global_State___0x241e7c0 =
    gcc_jit_type_get_pointer (gcc_jit_struct_as_type (struct_struct_ravi_global_State_0x241e770));
  gcc_jit_field *field_next_0x241e860 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_tt_0x241e910 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "tt"); /* const char *name */
  gcc_jit_field *field_marked_0x241e9c0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "marked"); /* const char *name */
  gcc_jit_field *field_status_0x241ea70 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "status"); /* const char *name */
  gcc_jit_field *field_top_0x241eb20 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "top"); /* const char *name */
  gcc_jit_field *field_l_G_0x241ebd0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_global_State___0x241e7c0, /* gcc_jit_type *type, */
                               "l_G"); /* const char *name */
  gcc_jit_field *field_ci_0x241ec80 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /* gcc_jit_type *type, */
                               "ci"); /* const char *name */
  gcc_jit_field *field_oldpc_0x241ed30 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int___0x2415bf0, /* gcc_jit_type *type, */
                               "oldpc"); /* const char *name */
  gcc_jit_field *field_stack_last_0x241ede0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "stack_last"); /* const char *name */
  gcc_jit_field *field_stack_0x241ee90 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "stack"); /* const char *name */
  gcc_jit_field *field_openupval_0x241ef40 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0x241a4d0, /* gcc_jit_type *type, */
                               "openupval"); /* const char *name */
  gcc_jit_field *field_gclist_0x241bbd0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_GCObject___0x2415d50, /* gcc_jit_type *type, */
                               "gclist"); /* const char *name */
  gcc_jit_field *field_twups_0x241bc80 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /* gcc_jit_type *type, */
                               "twups"); /* const char *name */
  gcc_jit_field *field_errorJmp_0x241bd30 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_longjmp___0x241cfe0, /* gcc_jit_type *type, */
                               "errorJmp"); /* const char *name */
  gcc_jit_field *field_base_ci_0x241bde0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_CallInfo_0x241d6e0), /* gcc_jit_type *type, */
                               "base_ci"); /* const char *name */
  gcc_jit_field *field_hook_0x241be90 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               ptr_to_void________struct_ravi_lua_State____struct_ravi_lua_Debug____0x24160f0, /* gcc_jit_type *type, */
                               "hook"); /* const char *name */
  gcc_jit_field *field_errfunc_0x241bf40 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /* gcc_jit_type *type, */
                               "errfunc"); /* const char *name */
  gcc_jit_field *field_stacksize_0x241bff0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "stacksize"); /* const char *name */
  gcc_jit_field *field_basehookcount_0x241c0a0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "basehookcount"); /* const char *name */
  gcc_jit_field *field_hookcount_0x241c150 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "hookcount"); /* const char *name */
  gcc_jit_field *field_nny_0x241c200 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0x24159a0, /* gcc_jit_type *type, */
                               "nny"); /* const char *name */
  gcc_jit_field *field_nCcalls_0x241c2b0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_short_0x24159a0, /* gcc_jit_type *type, */
                               "nCcalls"); /* const char *name */
  gcc_jit_field *field_hookmask_0x241c360 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "hookmask"); /* const char *name */
  gcc_jit_field *field_allowhook_0x241c410 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_char_0x2415a20, /* gcc_jit_type *type, */
                               "allowhook"); /* const char *name */
  gcc_jit_field *fields_fields_0x241c460[24] = {
    field_next_0x241e860,
    field_tt_0x241e910,
    field_marked_0x241e9c0,
    field_status_0x241ea70,
    field_top_0x241eb20,
    field_l_G_0x241ebd0,
    field_ci_0x241ec80,
    field_oldpc_0x241ed30,
    field_stack_last_0x241ede0,
    field_stack_0x241ee90,
    field_openupval_0x241ef40,
    field_gclist_0x241bbd0,
    field_twups_0x241bc80,
    field_errorJmp_0x241bd30,
    field_base_ci_0x241bde0,
    field_hook_0x241be90,
    field_errfunc_0x241bf40,
    field_stacksize_0x241bff0,
    field_basehookcount_0x241c0a0,
    field_hookcount_0x241c150,
    field_nny_0x241c200,
    field_nCcalls_0x241c2b0,
    field_hookmask_0x241c360,
    field_allowhook_0x241c410,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_lua_State_0x2415700, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             24, /* int num_fields */
                             fields_fields_0x241c460); /* gcc_jit_field **fields */
  gcc_jit_field *field_next_0x241c5d0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0x241a4d0, /* gcc_jit_type *type, */
                               "next"); /* const char *name */
  gcc_jit_field *field_touched_0x241c680 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /* gcc_jit_type *type, */
                               "touched"); /* const char *name */
  gcc_jit_struct *struct_struct_ravi_UpVal_u_open_0x241c730 =
    gcc_jit_context_new_opaque_struct (ctxt_0x2414f30,
                                       NULL, /* gcc_jit_location *loc */
                                       "ravi_UpVal_u_open"); /* const char *name */
  gcc_jit_field *fields_fields_0x241c780[2] = {
    field_next_0x241c5d0,
    field_touched_0x241c680,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_u_open_0x241c730, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             2, /* int num_fields */
                             fields_fields_0x241c780); /* gcc_jit_field **fields */
  gcc_jit_field *field_open_0x2420310 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_UpVal_u_open_0x241c730), /* gcc_jit_type *type, */
                               "open"); /* const char *name */
  gcc_jit_field *field_value_0x2420380 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               gcc_jit_struct_as_type (struct_struct_ravi_TValue_0x2416d50), /* gcc_jit_type *type, */
                               "value"); /* const char *name */
  gcc_jit_field *fields_for_union_union_ravi_UpVal_u_0x2420430[2] = {
    field_open_0x2420310,
    field_value_0x2420380,
  };
  gcc_jit_type *union_union_ravi_UpVal_u_0x2420430 =
    gcc_jit_context_new_union_type (ctxt_0x2414f30,
                                    NULL, /* gcc_jit_location *loc */
                                    "ravi_UpVal_u", /* const char *name */
                                    2, /* int num_fields */
                                    fields_for_union_union_ravi_UpVal_u_0x2420430); /* gcc_jit_field **fields */
  gcc_jit_field *field_v_0x2420560 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /* gcc_jit_type *type, */
                               "v"); /* const char *name */
  gcc_jit_field *field_refcount_0x2420610 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_size_t_0x2415810, /* gcc_jit_type *type, */
                               "refcount"); /* const char *name */
  gcc_jit_field *field_u_0x24206c0 =
    gcc_jit_context_new_field (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               union_union_ravi_UpVal_u_0x2420430, /* gcc_jit_type *type, */
                               "u"); /* const char *name */
  gcc_jit_field *fields_fields_0x2420710[3] = {
    field_v_0x2420560,
    field_refcount_0x2420610,
    field_u_0x24206c0,
  };
  gcc_jit_struct_set_fields (struct_struct_ravi_UpVal_0x241a480, /* gcc_jit_struct *struct_type */
                             NULL, /* gcc_jit_location *loc */
                             3, /* int num_fields */
                             fields_fields_0x2420710); /* gcc_jit_field **fields */
  gcc_jit_param *param_L_0x24207e0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_firstResult_0x2420890 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "firstResult"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_poscall_0x2420940[2] = {
    param_L_0x24207e0,
    param_firstResult_0x2420890,
  };
  gcc_jit_function *func_luaD_poscall_0x2420940 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaD_poscall", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaD_poscall_0x2420940, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2420a70 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_uv_0x2420b20 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_UpVal___0x241a4d0, /*gcc_jit_type *type */
                               "uv"); /* const char *name */
  gcc_jit_param *params_for_func_luaC_upvalbarrier__0x2420bd0[2] = {
    param_L_0x2420a70,
    param_uv_0x2420b20,
  };
  gcc_jit_function *func_luaC_upvalbarrier__0x2420bd0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaC_upvalbarrier_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaC_upvalbarrier__0x2420bd0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2420cd0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0x2420d80 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0x2420e30 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_precall_0x2420ee0[3] = {
    param_L_0x2420cd0,
    param_func_0x2420d80,
    param_nresults_0x2420e30,
  };
  gcc_jit_function *func_luaD_precall_0x2420ee0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaD_precall", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaD_precall_0x2420ee0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2420fe0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_func_0x2421090 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "func"); /* const char *name */
  gcc_jit_param *param_nresults_0x2421140 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "nresults"); /* const char *name */
  gcc_jit_param *param_allowyield_0x24211f0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "allowyield"); /* const char *name */
  gcc_jit_param *params_for_func_luaD_call_0x24212a0[4] = {
    param_L_0x2420fe0,
    param_func_0x2421090,
    param_nresults_0x2421140,
    param_allowyield_0x24211f0,
  };
  gcc_jit_function *func_luaD_call_0x24212a0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaD_call", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaD_call_0x24212a0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24213a0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_execute_0x2421450[1] = {
    param_L_0x24213a0,
  };
  gcc_jit_function *func_luaV_execute_0x2421450 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaV_execute", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_luaV_execute_0x2421450, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24215a0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_level_0x2421650 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "level"); /* const char *name */
  gcc_jit_param *params_for_func_luaF_close_0x2421700[2] = {
    param_L_0x24215a0,
    param_level_0x2421650,
  };
  gcc_jit_function *func_luaF_close_0x2421700 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaF_close", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaF_close_0x2421700, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24217d0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t1_0x2421880 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "t1"); /* const char *name */
  gcc_jit_param *param_t2_0x2421930 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "t2"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_equalobj_0x24219e0[3] = {
    param_L_0x24217d0,
    param_t1_0x2421880,
    param_t2_0x2421930,
  };
  gcc_jit_function *func_luaV_equalobj_0x24219e0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaV_equalobj", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_equalobj_0x24219e0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2421ae0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0x2421b90 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0x2421c40 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessthan_0x2421cf0[3] = {
    param_L_0x2421ae0,
    param_l_0x2421b90,
    param_r_0x2421c40,
  };
  gcc_jit_function *func_luaV_lessthan_0x2421cf0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaV_lessthan", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessthan_0x2421cf0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2421df0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_l_0x2421ea0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "l"); /* const char *name */
  gcc_jit_param *param_r_0x2421f50 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "r"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_lessequal_0x2422000[3] = {
    param_L_0x2421df0,
    param_l_0x2421ea0,
    param_r_0x2421f50,
  };
  gcc_jit_function *func_luaV_lessequal_0x2422000 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaV_lessequal", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_lessequal_0x2422000, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24214f0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_fmt_0x24221f0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0x2415850, /*gcc_jit_type *type */
                               "fmt"); /* const char *name */
  gcc_jit_param *params_for_func_luaG_runerror_0x24222a0[2] = {
    param_L_0x24214f0,
    param_fmt_0x24221f0,
  };
  gcc_jit_function *func_luaG_runerror_0x24222a0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaG_runerror", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaG_runerror_0x24222a0, /* gcc_jit_param **params */
                                  1); /* int is_variadic */
  gcc_jit_param *param_obj_0x24223a0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0x2422450 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0x2415750, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *param_step_0x2422500 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /*gcc_jit_type *type */
                               "step"); /* const char *name */
  gcc_jit_param *param_stopnow_0x24225b0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int___0x2415920, /*gcc_jit_type *type */
                               "stopnow"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_forlimit_0x2422660[4] = {
    param_obj_0x24223a0,
    param_p_0x2422450,
    param_step_0x2422500,
    param_stopnow_0x24225b0,
  };
  gcc_jit_function *func_luaV_forlimit_0x2422660 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaV_forlimit", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_forlimit_0x2422660, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0x2422760 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_n_0x2422810 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double___0x2415640, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tonumber__0x24228c0[2] = {
    param_obj_0x2422760,
    param_n_0x2422810,
  };
  gcc_jit_function *func_luaV_tonumber__0x24228c0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaV_tonumber_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tonumber__0x24228c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_obj_0x24229c0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "obj"); /* const char *name */
  gcc_jit_param *param_p_0x2422a70 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long___0x2415750, /*gcc_jit_type *type */
                               "p"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_tointeger__0x2422b20[2] = {
    param_obj_0x24229c0,
    param_p_0x2422a70,
  };
  gcc_jit_function *func_luaV_tointeger__0x2422b20 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "luaV_tointeger_", /* const char *name */
                                  2, /* int num_params */
                                  params_for_func_luaV_tointeger__0x2422b20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2422c20 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ra_0x2422cd0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_rb_0x2422d80 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "rb"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_objlen_0x2422e30[3] = {
    param_L_0x2422c20,
    param_ra_0x2422cd0,
    param_rb_0x2422d80,
  };
  gcc_jit_function *func_luaV_objlen_0x2422e30 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaV_objlen", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_objlen_0x2422e30, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2422f30 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0x2422fe0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0x2423090 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0x2423140 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_gettable_0x24231f0[4] = {
    param_L_0x2422f30,
    param_t_0x2422fe0,
    param_key_0x2423090,
    param_val_0x2423140,
  };
  gcc_jit_function *func_luaV_gettable_0x24231f0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaV_gettable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_gettable_0x24231f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24232f0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_t_0x24233a0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "t"); /* const char *name */
  gcc_jit_param *param_key_0x2423450 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_val_0x2423500 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "val"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_settable_0x24235b0[4] = {
    param_L_0x24232f0,
    param_t_0x24233a0,
    param_key_0x2423450,
    param_val_0x2423500,
  };
  gcc_jit_function *func_luaV_settable_0x24235b0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaV_settable", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_luaV_settable_0x24235b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24236b0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_p1_0x2423760 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "p1"); /* const char *name */
  gcc_jit_param *param_p2_0x2423810 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_struct_ravi_TValue___0x2416eb0, /*gcc_jit_type *type */
                               "p2"); /* const char *name */
  gcc_jit_param *param_res_0x24238c0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "res"); /* const char *name */
  gcc_jit_param *param_event_0x2423970 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "event"); /* const char *name */
  gcc_jit_param *params_for_func_luaT_trybinTM_0x2423a20[5] = {
    param_L_0x24236b0,
    param_p1_0x2423760,
    param_p2_0x2423810,
    param_res_0x24238c0,
    param_event_0x2423970,
  };
  gcc_jit_function *func_luaT_trybinTM_0x2423a20 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "luaT_trybinTM", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_luaT_trybinTM_0x2423a20, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_ci_0x2423bb0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0x2423c40 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x2423cf0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_loadnil_0x2423da0[3] = {
    param_ci_0x2423bb0,
    param_a_0x2423c40,
    param_b_0x2423cf0,
  };
  gcc_jit_function *func_raviV_op_loadnil_0x2423da0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_loadnil", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_loadnil_0x2423da0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2423ea0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x2423f50 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x2424000 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayint_0x24240b0[3] = {
    param_L_0x2423ea0,
    param_ci_0x2423f50,
    param_ra_0x2424000,
  };
  gcc_jit_function *func_raviV_op_newarrayint_0x24240b0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayint", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayint_0x24240b0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x24241b0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x2424260 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x2424310 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newarrayfloat_0x24243c0[3] = {
    param_L_0x24241b0,
    param_ci_0x2424260,
    param_ra_0x2424310,
  };
  gcc_jit_function *func_raviV_op_newarrayfloat_0x24243c0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_newarrayfloat", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_raviV_op_newarrayfloat_0x24243c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x241f050 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x241f100 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x241f1b0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x241f260 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x241f310 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_newtable_0x241f3c0[5] = {
    param_L_0x241f050,
    param_ci_0x241f100,
    param_ra_0x241f1b0,
    param_b_0x241f260,
    param_c_0x241f310,
  };
  gcc_jit_function *func_raviV_op_newtable_0x241f3c0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_newtable", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_newtable_0x241f3c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x241f4e0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x241f590 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_ra_0x241f640 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x241f6f0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x241f7a0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setlist_0x241f850[5] = {
    param_L_0x241f4e0,
    param_ci_0x241f590,
    param_ra_0x241f640,
    param_b_0x241f6f0,
    param_c_0x241f7a0,
  };
  gcc_jit_function *func_raviV_op_setlist_0x241f850 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_setlist", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_setlist_0x241f850, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x241f970 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0x241fa20 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0x241fad0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_div_0x241fb80[3] = {
    param_L_0x241f970,
    param_m_0x241fa20,
    param_n_0x241fad0,
  };
  gcc_jit_function *func_luaV_div_0x241fb80 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0x24156c0, /* gcc_jit_type *return_type */
                                  "luaV_div", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_div_0x241fb80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x241fc80 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_m_0x241fd30 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /*gcc_jit_type *type */
                               "m"); /* const char *name */
  gcc_jit_param *param_n_0x241fde0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /*gcc_jit_type *type */
                               "n"); /* const char *name */
  gcc_jit_param *params_for_func_luaV_mod_0x241fe90[3] = {
    param_L_0x241fc80,
    param_m_0x241fd30,
    param_n_0x241fde0,
  };
  gcc_jit_function *func_luaV_mod_0x241fe90 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_long_long_0x24156c0, /* gcc_jit_type *return_type */
                                  "luaV_mod", /* const char *name */
                                  3, /* int num_params */
                                  params_for_func_luaV_mod_0x241fe90, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x241ff90 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x2420040 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_a_0x24200f0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x24201a0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *param_c_0x2420250 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "c"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_concat_0x2426100[5] = {
    param_L_0x241ff90,
    param_ci_0x2420040,
    param_a_0x24200f0,
    param_b_0x24201a0,
    param_c_0x2420250,
  };
  gcc_jit_function *func_raviV_op_concat_0x2426100 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_concat", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_concat_0x2426100, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2423b40 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x2426330 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0x24263e0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x2418920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0x2426490 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_Bx_0x2426540 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "Bx"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_closure_0x24265f0[5] = {
    param_L_0x2423b40,
    param_ci_0x2426330,
    param_cl_0x24263e0,
    param_a_0x2426490,
    param_Bx_0x2426540,
  };
  gcc_jit_function *func_raviV_op_closure_0x24265f0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_closure", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_closure_0x24265f0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2426710 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_ci_0x24267c0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_CallInfo___0x241d730, /*gcc_jit_type *type */
                               "ci"); /* const char *name */
  gcc_jit_param *param_cl_0x2426870 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x2418920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_a_0x2426920 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "a"); /* const char *name */
  gcc_jit_param *param_b_0x24269d0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_vararg_0x2426a80[5] = {
    param_L_0x2426710,
    param_ci_0x24267c0,
    param_cl_0x2426870,
    param_a_0x2426920,
    param_b_0x24269d0,
  };
  gcc_jit_function *func_raviV_op_vararg_0x2426a80 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_vararg", /* const char *name */
                                  5, /* int num_params */
                                  params_for_func_raviV_op_vararg_0x2426a80, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2426ba0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0x2426c50 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x2417770, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0x2426d00 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x24159e0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0x2426db0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_long_long_0x24156c0, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_int_0x2426e60[4] = {
    param_L_0x2426ba0,
    param_table_0x2426c50,
    param_key_0x2426d00,
    param_value_0x2426db0,
  };
  gcc_jit_function *func_raviH_set_int_0x2426e60 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviH_set_int", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_int_0x2426e60, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2426f60 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_table_0x2427010 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_Table___0x2417770, /*gcc_jit_type *type */
                               "table"); /* const char *name */
  gcc_jit_param *param_key_0x24270c0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_unsigned_int_0x24159e0, /*gcc_jit_type *type */
                               "key"); /* const char *name */
  gcc_jit_param *param_value_0x2427170 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_double_0x2415600, /*gcc_jit_type *type */
                               "value"); /* const char *name */
  gcc_jit_param *params_for_func_raviH_set_float_0x2427220[4] = {
    param_L_0x2426f60,
    param_table_0x2427010,
    param_key_0x24270c0,
    param_value_0x2427170,
  };
  gcc_jit_function *func_raviH_set_float_0x2427220 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviH_set_float", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviH_set_float_0x2427220, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_L_0x2427320 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *param_cl_0x24273d0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_LClosure___0x2418920, /*gcc_jit_type *type */
                               "cl"); /* const char *name */
  gcc_jit_param *param_ra_0x2427480 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_TValue___0x2416e30, /*gcc_jit_type *type */
                               "ra"); /* const char *name */
  gcc_jit_param *param_b_0x2427530 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_int_0x24158e0, /*gcc_jit_type *type */
                               "b"); /* const char *name */
  gcc_jit_param *params_for_func_raviV_op_setupval_0x24275e0[4] = {
    param_L_0x2427320,
    param_cl_0x24273d0,
    param_ra_0x2427480,
    param_b_0x2427530,
  };
  gcc_jit_function *func_raviV_op_setupval_0x24275e0 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_void_0x2415890, /* gcc_jit_type *return_type */
                                  "raviV_op_setupval", /* const char *name */
                                  4, /* int num_params */
                                  params_for_func_raviV_op_setupval_0x24275e0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_param *param_format_0x24276e0 =
    gcc_jit_context_new_param (ctxt_0x2414f30,
                               NULL, /* gcc_jit_location *loc */
                               type_const_char___0x2415850, /*gcc_jit_type *type */
                               "format"); /* const char *name */
  gcc_jit_param *params_for_func_printf_0x2427790[1] = {
    param_format_0x24276e0,
  };
  gcc_jit_function *func_printf_0x2427790 =
    gcc_jit_context_new_function (ctxt_0x2414f30, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_IMPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "printf", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_printf_0x2427790, /* gcc_jit_param **params */
                                  1); /* int is_variadic */


  /* Replay of API calls for ctxt_0x2461820.  */
  gcc_jit_param *param_L_0x242c0e0 =
    gcc_jit_context_new_param (ctxt_0x2461820,
                               NULL, /* gcc_jit_location *loc */
                               type_struct_ravi_lua_State___0x2415c90, /*gcc_jit_type *type */
                               "L"); /* const char *name */
  gcc_jit_param *params_for_func_ravif1_0x24592c0[1] = {
    param_L_0x242c0e0,
  };
  gcc_jit_function *func_ravif1_0x24592c0 =
    gcc_jit_context_new_function (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_FUNCTION_EXPORTED, /* enum gcc_jit_function_kind kind */
                                  type_int_0x24158e0, /* gcc_jit_type *return_type */
                                  "ravif1", /* const char *name */
                                  1, /* int num_params */
                                  params_for_func_ravif1_0x24592c0, /* gcc_jit_param **params */
                                  0); /* int is_variadic */
  gcc_jit_block *block_entry_0x2457a50 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "entry");
  gcc_jit_lvalue *local_cl_0x2457cd0 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_struct_ravi_LClosure___0x2418920, /* gcc_jit_type *type */
                                "cl"); /* const char *name */
  gcc_jit_block *block_jmp_5_1_0x2457d50 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "jmp_5_1");
  gcc_jit_block *block_jmp_9_2_0x24577d0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "jmp_9_2");
  gcc_jit_block *block_jmp_12_3_0x24575a0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "jmp_12_3");
  gcc_jit_lvalue *lvalue_L__ci_0x2457ad0=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x242c0e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_ci_0x241ec80); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func_0x2457520=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x2457ad0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_func_0x241e070); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__0x24574a0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func_0x2457520), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_L__ci__func__value__gc_0x2457420 = 
    gcc_jit_lvalue_access_field (lvalue_L__ci__func__value__0x24574a0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_gc_0x2416590);
  gcc_jit_rvalue *rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0x24573a0 =
    gcc_jit_context_new_cast (ctxt_0x2461820,
                              NULL, /* gcc_jit_location *loc */
                              gcc_jit_lvalue_as_rvalue (lvalue_L__ci__func__value__gc_0x2457420), /* gcc_jit_rvalue *rvalue */
                              type_struct_ravi_LClosure___0x2418920); /* gcc_jit_type *type */
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_cl_0x2457cd0, /* gcc_jit_lvalue *lvalue */
                                rvalue__struct_ravi_LClosure___L__ci__func__value__gc_0x24573a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_L__ci__u_0x2457160=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x2457ad0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_u_0x241e330); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue_L__ci__u_l_0x24570e0 = 
    gcc_jit_rvalue_access_field (gcc_jit_lvalue_as_rvalue (lvalue_L__ci__u_0x2457160), /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_l_0x241dde0);
  gcc_jit_rvalue *rvalue_L__ci__u_l_base_0x2457060 = 
    gcc_jit_rvalue_access_field (rvalue_L__ci__u_l_0x24570e0, /*gcc_jit_rvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_base_0x241d7d0);
  gcc_jit_lvalue *lvalue_cl__p_0x2457320=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (local_cl_0x2457cd0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_p_0x241af80); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue_cl__p__k_0x2456ef0=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x2457320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_k_0x24183c0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x2456e70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *rvalue__int_0_0x2456df0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_rvalue *args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0x2456d70[3] = {
    gcc_jit_lvalue_as_rvalue (lvalue_L__ci_0x2457ad0),
    rvalue__int_0_0x2456df0,
    rvalue__int_0_0x2456e70,
  };
  gcc_jit_rvalue *call_raviV_op_loadnil__L__ci___int_0___int_0__0x2456d70 =
    gcc_jit_context_new_call (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_raviV_op_loadnil_0x2423da0, /* gcc_jit_function *func */
                              3, /* int numargs  */ 
                              args_for__call_raviV_op_loadnil__L__ci___int_0___int_0__0x2456d70); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_entry_0x2457a50, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_raviV_op_loadnil__L__ci___int_0___int_0__0x2456d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x24587c0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2458740 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x24587c0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x24586c0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2458740, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__long_long_10_0x2458480 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_long_long_0x24156c0, /* gcc_jit_type *numeric_type */
                                         10); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x2458400=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x24586c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__i_0x2458380 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x2458400, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0x2416850);
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__i_0x2458380, /* gcc_jit_lvalue *lvalue */
                                rvalue__long_long_10_0x2458480); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_19_0x24537f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         19); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x2453770=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x24586c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x2453770, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_19_0x24537f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x24535b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2453530 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x24535b0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x24539c0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2453530, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_4_0x2453410 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "isfalse_0_4"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x2453390=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x24539c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x2453310 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_5_0x2453170 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_5"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0x24530f0 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x2453390), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x2453310); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_5_0x2453170, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0x24530f0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2452f50 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_6_0x2456b50 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_6"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2456cf0 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x2453390), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x2452f50); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_6_0x2456b50, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2456cf0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x2456930=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x24539c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x2456ad0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x2456930, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x24166f0);
  gcc_jit_rvalue *rvalue__int_0_0x2456a50 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_7_0x24566d0 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_7"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x24565b0 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0x2456ad0), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x2456a50); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_7_0x24566d0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x24565b0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_6____comparison_0_7_0x2456380 =
    gcc_jit_context_new_binary_op (ctxt_0x2461820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0x2415590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_6_0x2456b50), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_7_0x24566d0)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0x2456270 =
    gcc_jit_context_new_binary_op (ctxt_0x2461820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0x2415590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_5_0x2453170), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_6____comparison_0_7_0x2456380); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_entry_0x2457a50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_4_0x2453410, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_5____comparison_0_6____comparison_0_7_0x2456270); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_4__0x2456130 =
    gcc_jit_context_new_unary_op (ctxt_0x2461820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x2415590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_4_0x2453410)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_2_8_0x2455fa0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_TEST_do_jmp_2_8");
  gcc_jit_block *block_OP_TEST_do_skip_2_9_0x2455cf0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_TEST_do_skip_2_9");
  gcc_jit_block_end_with_conditional (block_entry_0x2457a50, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_4__0x2456130, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_2_8_0x2455fa0, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_2_9_0x2455cf0); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_2_8_0x2455fa0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0x2457d50); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_2_9_0x2455cf0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_5_1_0x2457d50); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0x2462000 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2452fd0 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x2462000); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x2457f30 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2452fd0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x2458130 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x2453a40=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x2457f30, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x2456020 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x2453a40, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x24166f0);
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__b_0x2456020, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0x2458130); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2455d70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x2462260=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x2457f30, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x2462260, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x2455d70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x245ad40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x245a030 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x245ad40); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x24599c0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x245a030, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_10_0x2458e20 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "isfalse_0_10"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x245bd90=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x24599c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x245bc40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_11_0x245b940 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_11"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0x245b4d0 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x245bd90), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x245bc40); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_11_0x245b940, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0x245b4d0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x24531f0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_12_0x2456c50 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_12"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2456810 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x245bd90), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x24531f0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_12_0x2456c50, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0x2456810); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x24561d0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x24599c0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x2455f00 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x24561d0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x24166f0);
  gcc_jit_rvalue *rvalue__int_0_0x2455bd0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_13_0x2456630 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_13"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x24568b0 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0x2455f00), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x2455bd0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_13_0x2456630, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x24568b0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_12____comparison_0_13_0x245c700 =
    gcc_jit_context_new_binary_op (ctxt_0x2461820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0x2415590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_12_0x2456c50), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_13_0x2456630)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0x2458840 =
    gcc_jit_context_new_binary_op (ctxt_0x2461820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0x2415590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_11_0x245b940), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_12____comparison_0_13_0x245c700); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_10_0x2458e20, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_11____comparison_0_12____comparison_0_13_0x2458840); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_10__0x24409b0 =
    gcc_jit_context_new_unary_op (ctxt_0x2461820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x2415590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_10_0x2458e20)); /* gcc_jit_rvalue *a */
  gcc_jit_rvalue *rvalue_____isfalse_0_10___0x2440a10 =
    gcc_jit_context_new_unary_op (ctxt_0x2461820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x2415590, /* gcc_jit_type *result_type */
                                  rvalue___isfalse_0_10__0x24409b0); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_5_14_0x2475aa0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_TEST_do_jmp_5_14");
  gcc_jit_block *block_OP_TEST_do_skip_5_15_0x2441950 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_TEST_do_skip_5_15");
  gcc_jit_block_end_with_conditional (block_jmp_5_1_0x2457d50, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue_____isfalse_0_10___0x2440a10, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_5_14_0x2475aa0, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_5_15_0x2441950); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_5_14_0x2475aa0, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0x24577d0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_0_0x24631e0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0x2463230 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x24631e0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0x2463290 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0x2463230, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_1_0x2460e10 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____value__0x2460e60=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_0__0x2463290, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____value__b_0x2460ec0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_0____value__0x2460e60, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x24166f0);
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x2441950, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_0____value__b_0x2460ec0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x2460e10); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x2460f70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_0____tt__0x245e4e0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_0__0x2463290, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_OP_TEST_do_skip_5_15_0x2441950, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_0____tt__0x245e4e0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x2460f70); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_5_15_0x2441950, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_9_2_0x24577d0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0x245e5d0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x245e620 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x245e5d0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x245e680 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x245e620, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__long_long_10_0x242bd40 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_long_long_0x24156c0, /* gcc_jit_type *numeric_type */
                                         10); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x242bd90=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x245e680, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__i_0x242bdf0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x242bd90, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_i_0x2416850);
  gcc_jit_block_add_assignment (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__i_0x242bdf0, /* gcc_jit_lvalue *lvalue */
                                rvalue__long_long_10_0x242bd40); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_19_0x242bea0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         19); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x242bef0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x245e680, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x242bef0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_19_0x242bea0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x242c1b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x242c200 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x242c1b0); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x242c260 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x242c200, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *local_isfalse_0_16_0x242c2f0 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "isfalse_0_16"); /* const char *name */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x242c350=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x242c260, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x242c3b0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_17_0x242ce50 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_17"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_0_0x242ceb0 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x242c350), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x242c3b0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_17_0x242ce50, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_0_0x242ceb0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x242cf60 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *local_comparison_0_18_0x242cfb0 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_18"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____tt______int_1_0x242d010 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____tt__0x242c350), /* gcc_jit_rvalue *a */
                                    rvalue__int_1_0x242cf60); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_18_0x242cfb0, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____tt______int_1_0x242d010); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x242d0c0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x242c260, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x242d120 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x242d0c0, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x24166f0);
  gcc_jit_rvalue *rvalue__int_0_0x242d180 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_19_0x242d210 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_19"); /* const char *name */
  gcc_jit_rvalue *rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x242d270 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_EQ, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue___L__ci__u_l_base__int_1____value__b_0x242d120), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x242d180); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_19_0x242d210, /* gcc_jit_lvalue *lvalue */
                                rvalue___L__ci__u_l_base__int_1____value__b_____int_0_0x242d270); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue_comparison_0_18____comparison_0_19_0x242d370 =
    gcc_jit_context_new_binary_op (ctxt_0x2461820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_AND, /* enum gcc_jit_binary_op op */
                                   type_bool_0x2415590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_18_0x242cfb0), /* gcc_jit_rvalue *a */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_19_0x242d210)); /* gcc_jit_rvalue *b */
  gcc_jit_rvalue *rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0x242d3d0 =
    gcc_jit_context_new_binary_op (ctxt_0x2461820,
                                   NULL, /* gcc_jit_location *loc */
                                   GCC_JIT_BINARY_OP_LOGICAL_OR, /* enum gcc_jit_binary_op op */
                                   type_bool_0x2415590, /* gcc_jit_type *result_type */
                                   gcc_jit_lvalue_as_rvalue (local_comparison_0_17_0x242ce50), /* gcc_jit_rvalue *a */
                                   rvalue_comparison_0_18____comparison_0_19_0x242d370); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_isfalse_0_16_0x242c2f0, /* gcc_jit_lvalue *lvalue */
                                rvalue_comparison_0_17____comparison_0_18____comparison_0_19_0x242d3d0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue___isfalse_0_16__0x242d480 =
    gcc_jit_context_new_unary_op (ctxt_0x2461820,
                                  NULL, /* gcc_jit_location *loc */
                                  GCC_JIT_UNARY_OP_LOGICAL_NEGATE, /* enum gcc_jit_unary_op op */
                                  type_bool_0x2415590, /* gcc_jit_type *result_type */
                                  gcc_jit_lvalue_as_rvalue (local_isfalse_0_16_0x242c2f0)); /* gcc_jit_rvalue *a */
  gcc_jit_block *block_OP_TEST_do_jmp_9_20_0x242d520 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_TEST_do_jmp_9_20");
  gcc_jit_block *block_OP_TEST_do_skip_9_21_0x242d640 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_TEST_do_skip_9_21");
  gcc_jit_block_end_with_conditional (block_jmp_9_2_0x24577d0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      rvalue___isfalse_0_16__0x242d480, /* gcc_jit_rvalue *boolval */
                                      block_OP_TEST_do_jmp_9_20_0x242d520, /* gcc_jit_block *on_true */
                                      block_OP_TEST_do_skip_9_21_0x242d640); /* gcc_jit_block *on_false */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_jmp_9_20_0x242d520, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0x24575a0); /* gcc_jit_block *target */
  gcc_jit_block_end_with_jump (block_OP_TEST_do_skip_9_21_0x242d640, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_jmp_12_3_0x24575a0); /* gcc_jit_block *target */
  gcc_jit_rvalue *rvalue__int_1_0x242d760 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x2455e80 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x242d760); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x242d7b0 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x2455e80, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x242d800 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__0x242d850=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x242d7b0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_value__0x2416bf0); /* gcc_jit_field *field */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____value__b_0x242d8b0 = 
    gcc_jit_lvalue_access_field (lvalue___L__ci__u_l_base__int_1____value__0x242d850, /*gcc_jit_lvalue *struct_or_union */
                                 NULL, /*gcc_jit_location *loc */
                                 field_b_0x24166f0);
  gcc_jit_block_add_assignment (block_jmp_12_3_0x24575a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____value__b_0x242d8b0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_0_0x242d800); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x242d960 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue___L__ci__u_l_base__int_1____tt__0x242d9b0=
    gcc_jit_rvalue_dereference_field (address_of__L__ci__u_l_base__int_1__0x242d7b0, /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_tt__0x2416ca0); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x24575a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue___L__ci__u_l_base__int_1____tt__0x242d9b0, /* gcc_jit_lvalue *lvalue */
                                rvalue__int_1_0x242d960); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x242da60 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_1__0x242dab0 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_1_0x242da60); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_1__0x242db10 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_1__0x242dab0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_2_0x242c890 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         2); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_2__0x242c8e0 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_2_0x242c890); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_2__0x242c940 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_2__0x242c8e0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0x242c990=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x242c0e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0x241eb20); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x24575a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0x242c990, /* gcc_jit_lvalue *lvalue */
                                address_of__L__ci__u_l_base__int_2__0x242c940); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0x242ca40=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x2457320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0x2419700); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x242caa0 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_22_0x242caf0 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_22"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0x242cb50 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0x242ca40), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x242caa0); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_jmp_12_3_0x24575a0, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_22_0x242caf0, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0x242cb50); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_12_23_0x242cc40 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_RETURN_if_sizep_gt_0_12_23");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_12_24_0x242ccd0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_RETURN_else_sizep_gt_0_12_24");
  gcc_jit_block_end_with_conditional (block_jmp_12_3_0x24575a0, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_22_0x242caf0), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_12_23_0x242cc40, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_12_24_0x242ccd0); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__L__ci__u_l_base__0x242cdc0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x242c0e0),
    rvalue_L__ci__u_l_base_0x2457060,
  };
  gcc_jit_rvalue *call_luaF_close__L__L__ci__u_l_base__0x242cdc0 =
    gcc_jit_context_new_call (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0x2421700, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__L__ci__u_l_base__0x242cdc0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_12_23_0x242cc40, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__L__ci__u_l_base__0x242cdc0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_12_23_0x242cc40, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_12_24_0x242ccd0); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L____L__ci__u_l_base__int_1____0x244a6a0[2] = {
    gcc_jit_param_as_rvalue (param_L_0x242c0e0),
    address_of__L__ci__u_l_base__int_1__0x242db10,
  };
  gcc_jit_rvalue *call_luaD_poscall__L____L__ci__u_l_base__int_1____0x244a6a0 =
    gcc_jit_context_new_call (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0x2420940, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L____L__ci__u_l_base__int_1____0x244a6a0); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_12_24_0x242ccd0, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L____L__ci__u_l_base__int_1____0x244a6a0); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x244a740 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_12_24_0x242ccd0, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0x244a740); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_LINK_BLOCK_13_25_0x244a810 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "LINK_BLOCK_13_25");
  gcc_jit_rvalue *rvalue__int_0_0x244a860 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0x244a8b0 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x244a860); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0x244a910 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0x244a8b0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_rvalue *rvalue__int_0_0x244a960 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *lvalue_L__ci__u_l_base__int_0__0x244a9b0 = 
    gcc_jit_context_new_array_access (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                      NULL, /*gcc_jit_location *loc */
                                      rvalue_L__ci__u_l_base_0x2457060, /* gcc_jit_rvalue *ptr */
                                      rvalue__int_0_0x244a960); /* gcc_jit_rvalue *index */
  gcc_jit_rvalue *address_of__L__ci__u_l_base__int_0__0x244aa10 =
    gcc_jit_lvalue_get_address (lvalue_L__ci__u_l_base__int_0__0x244a9b0, /* gcc_jit_lvalue *lvalue */
                                NULL); /* gcc_jit_location *loc */
  gcc_jit_lvalue *lvalue_L__top_0x244aa60=
    gcc_jit_rvalue_dereference_field (gcc_jit_param_as_rvalue (param_L_0x242c0e0), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_top_0x241eb20); /* gcc_jit_field *field */
  gcc_jit_block_add_assignment (block_LINK_BLOCK_13_25_0x244a810, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                lvalue_L__top_0x244aa60, /* gcc_jit_lvalue *lvalue */
                                address_of__L__ci__u_l_base__int_0__0x244aa10); /* gcc_jit_rvalue *rvalue */
  gcc_jit_lvalue *lvalue_cl__p__sizep_0x244ab10=
    gcc_jit_rvalue_dereference_field (gcc_jit_lvalue_as_rvalue (lvalue_cl__p_0x2457320), /* gcc_jit_rvalue *ptr */
                                      NULL, /* gcc_jit_location *loc */
                                      field_sizep_0x2419700); /* gcc_jit_field *field */
  gcc_jit_rvalue *rvalue__int_0_0x244ab70 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         0); /* int value */
  gcc_jit_lvalue *local_comparison_0_26_0x244ac00 =
    gcc_jit_function_new_local (func_ravif1_0x24592c0, /* gcc_jit_function *func */
                                NULL, /* gcc_jit_location *loc */
                                type_bool_0x2415590, /* gcc_jit_type *type */
                                "comparison_0_26"); /* const char *name */
  gcc_jit_rvalue *rvalue_cl__p__sizep____int_0_0x244ac60 =
    gcc_jit_context_new_comparison (ctxt_0x2461820,
                                    NULL, /* gcc_jit_location *loc */
                                    GCC_JIT_COMPARISON_GT, /* enum gcc_jit_comparison op */
                                    gcc_jit_lvalue_as_rvalue (lvalue_cl__p__sizep_0x244ab10), /* gcc_jit_rvalue *a */
                                    rvalue__int_0_0x244ab70); /* gcc_jit_rvalue *b */
  gcc_jit_block_add_assignment (block_LINK_BLOCK_13_25_0x244a810, /*gcc_jit_block *block */
                                NULL, /* gcc_jit_location *loc */
                                local_comparison_0_26_0x244ac00, /* gcc_jit_lvalue *lvalue */
                                rvalue_cl__p__sizep____int_0_0x244ac60); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block *block_OP_RETURN_if_sizep_gt_0_13_27_0x244ad50 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_RETURN_if_sizep_gt_0_13_27");
  gcc_jit_block *block_OP_RETURN_else_sizep_gt_0_13_28_0x244ade0 =
    gcc_jit_function_new_block (func_ravif1_0x24592c0, "OP_RETURN_else_sizep_gt_0_13_28");
  gcc_jit_block_end_with_conditional (block_LINK_BLOCK_13_25_0x244a810, /*gcc_jit_block *block */
                                      NULL, /* gcc_jit_location *loc */
                                      gcc_jit_lvalue_as_rvalue (local_comparison_0_26_0x244ac00), /* gcc_jit_rvalue *boolval */
                                      block_OP_RETURN_if_sizep_gt_0_13_27_0x244ad50, /* gcc_jit_block *on_true */
                                      block_OP_RETURN_else_sizep_gt_0_13_28_0x244ade0); /* gcc_jit_block *on_false */
  gcc_jit_rvalue *args_for__call_luaF_close__L__L__ci__u_l_base__0x244ae80[2] = {
    gcc_jit_param_as_rvalue (param_L_0x242c0e0),
    rvalue_L__ci__u_l_base_0x2457060,
  };
  gcc_jit_rvalue *call_luaF_close__L__L__ci__u_l_base__0x244ae80 =
    gcc_jit_context_new_call (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaF_close_0x2421700, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaF_close__L__L__ci__u_l_base__0x244ae80); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_if_sizep_gt_0_13_27_0x244ad50, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaF_close__L__L__ci__u_l_base__0x244ae80); /* gcc_jit_rvalue *rvalue */
  gcc_jit_block_end_with_jump (block_OP_RETURN_if_sizep_gt_0_13_27_0x244ad50, /*gcc_jit_block *block */
                               NULL, /* gcc_jit_location *loc */
                               block_OP_RETURN_else_sizep_gt_0_13_28_0x244ade0); /* gcc_jit_block *target */
  gcc_jit_rvalue *args_for__call_luaD_poscall__L____L__ci__u_l_base__int_0____0x244af90[2] = {
    gcc_jit_param_as_rvalue (param_L_0x242c0e0),
    address_of__L__ci__u_l_base__int_0__0x244a910,
  };
  gcc_jit_rvalue *call_luaD_poscall__L____L__ci__u_l_base__int_0____0x244af90 =
    gcc_jit_context_new_call (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                              NULL, /* gcc_jit_location *loc */
                              func_luaD_poscall_0x2420940, /* gcc_jit_function *func */
                              2, /* int numargs  */ 
                              args_for__call_luaD_poscall__L____L__ci__u_l_base__int_0____0x244af90); /* gcc_jit_rvalue **args*/
  gcc_jit_block_add_eval (block_OP_RETURN_else_sizep_gt_0_13_28_0x244ade0, /*gcc_jit_block *block */
                          NULL, /* gcc_jit_location *loc */
                          call_luaD_poscall__L____L__ci__u_l_base__int_0____0x244af90); /* gcc_jit_rvalue *rvalue */
  gcc_jit_rvalue *rvalue__int_1_0x244b090 =
    gcc_jit_context_new_rvalue_from_int (ctxt_0x2461820, /* gcc_jit_context *ctxt */
                                         type_int_0x24158e0, /* gcc_jit_type *numeric_type */
                                         1); /* int value */
  gcc_jit_block_end_with_return (block_OP_RETURN_else_sizep_gt_0_13_28_0x244ade0, /*gcc_jit_block *block */
                                 NULL, /* gcc_jit_location *loc */
                                 rvalue__int_1_0x244b090); /* gcc_jit_rvalue *rvalue */
}

^ permalink raw reply	[flat|nested] 47+ messages in thread

* PR jit/66783 (Re: A possible code generation issue)
  2015-01-01  0:00             ` Dibyendu Majumdar
@ 2015-01-01  0:00               ` David Malcolm
  2015-01-01  0:00                 ` [PATCH, committed] PR jit/66783: prevent use of opaque structs David Malcolm
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

On Mon, 2015-07-06 at 22:40 +0100, Dibyendu Majumdar wrote:
> On 6 July 2015 at 22:29, Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
> > BTW the dump of types is problematic in many ways:
> > 1) types are in wrong order
> > 2) function types are incorrectly output
> > 3) array types are incorrectly output
> > 4) in one case as least a pointer was missing.
> 
> Apologies the last point (4) was actually due to a bug in my code -
> but here is what happened.
> 
> t->lua_longjumpT = gcc_jit_context_new_opaque_struct(ravi->context, NULL,
> "ravi_lua_longjmp");
> t->plua_longjumpT = gcc_jit_struct_as_type(t->lua_longjumpT);
> 
> The plua_longjmpT was meant to be a pointer to the struct.
> 
> Surprisingly I was able to use the incomplete type in another struct!

Ouch.  Good catch; thanks.

I've filed this specific issue as:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66783
and added it to the tracker bug (PR jit/66627).

> I think this just goes to show that you need to have some form of
> run-time type assertion to detect such issues.

I have a fix for this and the segfault (PR jit/66779) in the works; I
anticipate committing them to trunk tomorrow.

I hope to review the other issues you've raised tomorrow (sorry for not
getting to them today).

Dave

^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1
  2015-01-01  0:00                                     ` Dibyendu Majumdar
@ 2015-01-01  0:00                                       ` David Malcolm
  2015-01-01  0:00                                         ` Dibyendu Majumdar
  0 siblings, 1 reply; 47+ messages in thread
From: David Malcolm @ 2015-01-01  0:00 UTC (permalink / raw)
  To: Dibyendu Majumdar; +Cc: jit

[-- Attachment #1: Type: text/plain, Size: 1851 bytes --]

On Thu, 2015-07-09 at 23:20 +0100, Dibyendu Majumdar wrote:
> On 9 July 2015 at 22:24, David Malcolm <dmalcolm@redhat.com> wrote:
> > On Thu, 2015-07-09 at 17:15 -0400, David Malcolm wrote:
> >> On Thu, 2015-07-09 at 17:06 -0400, David Malcolm wrote:
> >>
> >> (snip)
> >>
> >> > The fix will be to implement the LANG_HOOKS_GET_ALIAS_SET internal GCC
> >> > API thus giving libgccjit some rules about aliasing.  Some options:
> >> >
> >> > (i) make it identical to C.
> >> > (ii) give the client code some control over this
> >> >
> >> > My initial gut feeling is to go with (i).
> >>
> >> ...or possibly to do what the link-time optimizer does, which is to use
> >> this internal API:
> >>
> >> /* Return the typed-based alias set for T, which may be an expression
> >>    or a type.  Return -1 if we don't do anything special.  */
> >>
> >> alias_set_type
> >> gimple_get_alias_set (tree t)
> >>
> >> which does almost all of what the C frontend does.  I'll try to cook up
> >> a patch.
> >
> > Attached is a patch [1] which fixes the minimal reproducer I created,
> > and the reproducer you sent.
> >
> > Does it work for you?
> >
> 
> I get this error when compiling:
> 
> In file included from ../../gcc-5.1.0/gcc/jit/dummy-frontend.c:54:0:
> ../../gcc-5.1.0/gcc/gimple.h: In function ‘void
> gimple_call_set_fndecl(gimple, tree)’:
> ../../gcc-5.1.0/gcc/gimple.h:2769:77: error:
> ‘build_fold_addr_expr_loc’ was not declared in this scope
>    gimple_set_op (gs, 1, build_fold_addr_expr_loc (gimple_location (gs), decl));
>                                                                              ^
> Am I missing something?

The patch was for trunk, where GCC's internal headers have been
reorganized, so we need different #includes for gcc-5-branch.

Does the attached work?  (it compiles; I haven't tested it though)



[-- Attachment #2: fix-for-pr-66812-v1-against-gcc-5.patch --]
[-- Type: text/x-patch, Size: 1067 bytes --]

diff --git a/gcc/jit/dummy-frontend.c b/gcc/jit/dummy-frontend.c
index 8f7d06a..e1c01ad 100644
--- a/gcc/jit/dummy-frontend.c
+++ b/gcc/jit/dummy-frontend.c
@@ -31,6 +31,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "stor-layout.h"
 #include "inchash.h"
 #include "tree.h"
+#include "fold-const.h"
 #include "debug.h"
 #include "langhooks.h"
 #include "langhooks-def.h"
@@ -46,6 +47,12 @@ along with GCC; see the file COPYING3.  If not see
 #include "ipa-ref.h"
 #include "dumpfile.h"
 #include "cgraph.h"
+#include "predict.h"
+#include "function.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "gimple-expr.h"
+#include "gimple.h"
 
 #include "jit-common.h"
 #include "jit-logging.h"
@@ -266,6 +273,9 @@ jit_langhook_write_globals (void)
 #undef LANG_HOOKS_WRITE_GLOBALS
 #define LANG_HOOKS_WRITE_GLOBALS	jit_langhook_write_globals
 
+#undef LANG_HOOKS_GET_ALIAS_SET
+#define LANG_HOOKS_GET_ALIAS_SET        gimple_get_alias_set
+
 struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER;
 
 #include "gt-jit-dummy-frontend.h"

^ permalink raw reply	[flat|nested] 47+ messages in thread

end of thread, other threads:[~2015-07-10 10:12 UTC | newest]

Thread overview: 47+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-01  0:00 A possible code generation issue Dibyendu Majumdar
2015-01-01  0:00 ` Dibyendu Majumdar
2015-01-01  0:00   ` Dibyendu Majumdar
2015-01-01  0:00     ` Dibyendu Majumdar
2015-01-01  0:00       ` Filed PR jit/66812 for the " David Malcolm
2015-01-01  0:00         ` David Malcolm
2015-01-01  0:00           ` David Malcolm
2015-01-01  0:00             ` Dibyendu Majumdar
2015-01-01  0:00             ` David Malcolm
2015-01-01  0:00               ` Dibyendu Majumdar
2015-01-01  0:00                 ` Dibyendu Majumdar
2015-01-01  0:00                   ` Dibyendu Majumdar
2015-01-01  0:00                     ` Dibyendu Majumdar
2015-01-01  0:00                       ` Dibyendu Majumdar
2015-01-01  0:00                         ` Dibyendu Majumdar
2015-01-01  0:00                           ` David Malcolm
2015-01-01  0:00                             ` David Malcolm
2015-01-01  0:00                               ` Dibyendu Majumdar
2015-01-01  0:00                             ` Dibyendu Majumdar
2015-01-01  0:00               ` Dibyendu Majumdar
2015-01-01  0:00                 ` David Malcolm
2015-01-01  0:00                   ` Dibyendu Majumdar
2015-01-01  0:00                     ` David Malcolm
2015-01-01  0:00                       ` Dibyendu Majumdar
2015-01-01  0:00                         ` Dibyendu Majumdar
2015-01-01  0:00                           ` David Malcolm
2015-01-01  0:00                             ` Dibyendu Majumdar
2015-01-01  0:00                               ` David Malcolm
2015-01-01  0:00                                 ` David Malcolm
2015-01-01  0:00                                   ` [PATCH] PR jit/66812: Candidate fix for for the code generation issue, v1 David Malcolm
2015-01-01  0:00                                     ` Dibyendu Majumdar
2015-01-01  0:00                                       ` David Malcolm
2015-01-01  0:00                                         ` Dibyendu Majumdar
2015-01-01  0:00                                           ` Dibyendu Majumdar
2015-01-01  0:00                                             ` David Malcolm
2015-01-01  0:00                                               ` Dibyendu Majumdar
2015-01-01  0:00                                                 ` Dibyendu Majumdar
2015-01-01  0:00                                 ` Filed PR jit/66812 for the code generation issue Dibyendu Majumdar
2015-01-01  0:00               ` David Malcolm
2015-01-01  0:00       ` A possible " David Malcolm
2015-01-01  0:00         ` Dibyendu Majumdar
2015-01-01  0:00           ` Dibyendu Majumdar
2015-01-01  0:00             ` Dibyendu Majumdar
2015-01-01  0:00               ` PR jit/66783 (Re: A possible code generation issue) David Malcolm
2015-01-01  0:00                 ` [PATCH, committed] PR jit/66783: prevent use of opaque structs David Malcolm
2015-01-01  0:00             ` Filed PR jit/66811: jit jumps aren't compilable as C (Re: A possible code generation issue) David Malcolm
2015-01-01  0:00               ` Filed PR jit/66811: jit dumps " David Malcolm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).