[Webkit-unassigned] [Bug 131515] Inlining native functions into the JavaScript in the FTL

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Apr 10 19:29:01 PDT 2014


--- Comment #3 from Geoffrey Garen <ggaren at apple.com>  2014-04-10 19:29:21 PST ---
(From update of attachment 229090)
View in context: https://bugs.webkit.org/attachment.cgi?id=229090&action=review

Since this is a change that should have an observable effect on performance, it should come with some sort of performance test to verify its behavior. It's OK if the test is very basic -- like just calling Math.hypot or window.isNaN in a loop. Ideally, you should test a few examples like this.

Any regression test you add to LayoutTests/js/regress will run as a performance test in run-jsc-benchmarks --js-regress.

> Source/JavaScriptCore/runtime/JSCJSValue.h:197
> +    JS_EXPORT_PRIVATE bool isInt32() const;
> +    JS_EXPORT_PRIVATE bool isUInt32() const;
> +    JS_EXPORT_PRIVATE bool isDouble() const;
> +    JS_EXPORT_PRIVATE bool isTrue() const;
> +    JS_EXPORT_PRIVATE bool isFalse() const;

This doesn't look quite right. "JS_EXPORT_PRIVATE" implies that somebody emitted a true call to one of these functions, which the linker needed to resolve. But you really don't want to emit any calls to these functions. Instead, you want them to be inlined via JSCJSValueInlines.h.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list