[Webkit-unassigned] [Bug 90198] Port DFG JIT to traditional ARM
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Jul 4 01:24:52 PDT 2012
https://bugs.webkit.org/show_bug.cgi?id=90198
--- Comment #11 from Filip Pizlo <fpizlo at apple.com> 2012-07-04 01:24:52 PST ---
(In reply to comment #10)
> (From update of attachment 150590 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=150590&action=review
>
> >> Source/JavaScriptCore/assembler/ARMAssembler.cpp:295
> >> + if (offset == 0) {
> >
> > Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons. [readability/comparison_to_zero] [5]
>
> You should refine this and other style errors below. ;)
>
> > Source/JavaScriptCore/assembler/ARMAssembler.h:-158
> > -#if WTF_ARM_ARCH_AT_LEAST(5) || defined(__ARM_ARCH_4T__)
>
> Please mention in the ChangeLog that the support of ARMv4 and below is removed.
>
> Additionally you should check WTF_ARM_ARCH_AT_LEAST(4) and similar constructs and modify them in Platform.h and other files.
>
> > Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h:269
> > +#if CPU(ARM_THUMB2)
> > m_assembler.vmov(payloadGPR, tagGPR, fpr);
> > +#else
> > + m_assembler.vmov_arm64_r(payloadGPR, tagGPR, fpr);
> > +#endif
>
> I suggest to define a common name or a wrapper function reducing #ifdef burden for the same logic.
>
> Apart from these, I really like your patch. ;)
+1
I like the idea of wrapping the "m_assembler.vmov_blah" in something nicer. Perhaps you can add a method in DFGAssemblyHelpers.h like:
void transferReturnValueToReturnValueFPR()
{
#if thumb2
the thumb2 thingy
#else if arm
the arm thingy
#else
do thing
#endif
}
I think that would be useful in other places in the future, particularly since there are code paths in the DFG that make calls in a manner that bypasses the helper methods for a variety of reasons. Currently none of those deal with floating point returns, but that might change.
--
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