[Webkit-unassigned] [Bug 47007] ARMv7 JIT should take advantage of 2-byte branches to reduce code size

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 4 11:11:34 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=47007


Oliver Hunt <oliver at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #69500|review?                     |review-
               Flag|                            |




--- Comment #4 from Oliver Hunt <oliver at apple.com>  2010-10-04 11:11:34 PST ---
(From update of attachment 69500)
View in context: https://bugs.webkit.org/attachment.cgi?id=69500&action=review

Patch basically looks good, we should just do that rename and fix the style issues before landing.

> JavaScriptCore/assembler/ARMv7Assembler.h:2
> - * Copyright (C) 2009 Apple Inc. All rights reserved.
> + * Copyright (C) 2010 Apple Inc. All rights reserved.

I believe this change should be to 2009, 2010

> JavaScriptCore/assembler/ARMv7Assembler.h:483
> -    enum JumpLinkType { LinkInvalid, LinkShortJump, LinkConditionalShortJump, LinkLongJump, JumpTypeCount };
> +    enum JumpLinkType { LinkInvalid, LinkSmallestJump, LinkConditionalSmallestJump, 
> +        LinkShortJump, LinkConditionalShortJump, LinkLongJump, JumpTypeCount };

These should be changes to be more technically specific -> LinkJumpT2, LinkConditionalJumpT2, LinkJumpT4, LinkConditionalJumpT4, LinkBX

I think it makes sense to do that rename as part of this patch so we aren't having this Small vs. Smallest jump stuff which i suspect will only become more confusing in future

> JavaScriptCore/assembler/ARMv7Assembler.h:1752
> +        switch (linkType) {
> +            case LinkSmallestJump:
> +            case LinkConditionalSmallestJump:
> +                linkSmallestJump(reinterpret_cast<uint16_t*>(from), to);
> +                break;
> +            case LinkShortJump:
> +            case LinkConditionalShortJump:
> +                linkShortJump(reinterpret_cast<uint16_t*>(from), to);
> +                break;
> +            case LinkLongJump:
> +                linkLongJump(reinterpret_cast<uint16_t*>(from), to);
> +                break;
> +            default:
> +                ASSERT(false);
> +                break;
> +        }

Webkit style is not to indent the case labels from the switch statement

-- 
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