Hi Zoltan,

On Jun 25, 2012, at 11:08 AM, Zoltan Herczeg wrote:

> - What is the difference between labelIgnoringWatchpoints,
> labelForWatchpoint, and label.
> 
> - What is the difference between *_FUNCTION_WRAPPER_WITH_RETURN_ADDRESS_*
> macros? Are they similar to the DEFINE_STUB_FUNCTION macros?

Filip can best answer your question about watchpoints.

So far as the function wrappers are concerned, yes, these are certainly 
similar, in that they pass the return address of the call site into the JIT 
helper functions.  There are a couple of minor differences.  The baseline JIT's 
stub function macros place the return address in memory, so that not only can 
it be read by the helper functions, but it also may be modified (when an 
exception is thrown).  The DFG JIT does not currently require that the return 
address is in memory; it is passed just like any regular C function argument.  
In the DFG JIT exceptions are trapped by a branch on the return value.  In the 
baseline JIT we down use a wrapper on x86, since the return address is already 
in memory, in the DFG JIT we do provide a wrapper to avoid a little 
calling-convention dependent magic in the helper.

cheers,
Gavin



_______________________________________________
squirrelfish-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/squirrelfish-dev

Reply via email to