I think I can see a bug here – the compile guard on the definition of
VoidPtrPair in JITStubs.h isn't right.
#if PLATFORM(MAC)
should be changed to
#if !COMPILER(MSVC)
(and the else case should #error if compiled on x86-64, if it not 64-
bit safe).
The MSVC version of this structure works around a quirk in the windows
ABI in a way that is not 64-bit safe, and you shouldn't need this on
Linux. The result of this will be resolve_func returning a junk
JSValuePtr for the function object.
G.
On Mar 19, 2009, at 1:11 PM, Maciej Stachowiak wrote:
On Mar 19, 2009, at 11:58 AM, Mike Hommey wrote:
On Thu, Mar 19, 2009 at 10:20:03AM -0700, Darin Adler wrote:
On Mar 19, 2009, at 10:12 AM, Mike Hommey wrote:
Except alert() isn't defined under jsc. Are there any other non-js
(native) functions available in jsc, since it seems to be the
problem ?
Sure, there are tons and tons of native functions; almost every
function
on every built-in JavaScript object.
Or you can use print() on the global object, which is similar to
alert
().
Exception: TypeError: Result of expression 'print' [[object
global]] is
not a function.
Works for me:
> print
function print() {
[native code]
}
Anyways, it seems, at first hand, to be failing on native functions
on
DOM objects, not on standard JS objects :-/
For example, Array.toString works, but window.setTimeout doesn't.
Both
go through the cti_op_call_NotJSFunction method.
That does sound strange.
Do JavaScriptCore and WebCore/WebKit get built as separate DLLs on
Linux/Gtk? If so, it could be due to a bug where we don't properly
handle jumps of longer than 32-bit distance in all cases. Perhaps
Gavin has a guess.
Regards,
Maciej
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev