[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Lightning] Some questions about minor changes

From: Paulo César Pereira de Andrade
Subject: [Lightning] Some questions about minor changes
Date: Fri, 24 Sep 2010 05:16:06 -0300


  I just added proper support to call prototyped C functions with any number of
arguments to i386 and x86_64. Interestingly, varargs functions were working
with a wrong stack frame in x86_64, and my previous test was too simple,
but I was wondering if it was actually right for some time...

  About the questions:
o Is it a problem to use byte or word opcodes, i.e. will it cause some kind
  of register stall, or something, like setting %al or testing %ax, when only
  that is used, e.g. setting %al as "hidden" counter of xmm registers used
  when calling a varargs function, or test %ax after fnstw?
o Would it be a good idea to either add new interfaces, or change the
  existing one? e.g. jit_prepare and jit_prolog would be better with 3
  to properly calculate the stack offsets, when keeping the stack aligned at
  16 bytes, otherwise, it requires a not so clear logic, to "intercept" the
  first call to jit_pusharg_t, jit_arg_t and/or jit_allocai.

  I understand that, to some extent, I am adding significant extra
complexity to lightning, by adding support to any number of arguments
for example. Maybe I am wanting too much of it :-) But my goal is
to have it as a framework for jit generation of dynamically typed
languages, while still providing solid support for statically typed


reply via email to

[Prev in Thread] Current Thread [Next in Thread]