[webkit-reviews] review granted: [Bug 133955] css jit should not save callee saved registers : [Attachment 234001] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Jun 27 12:56:16 PDT 2014
Geoffrey Garen <ggaren at apple.com> has granted Alex Christensen
<achristensen at apple.com>'s request for review:
Bug 133955: css jit should not save callee saved registers
https://bugs.webkit.org/show_bug.cgi?id=133955
Attachment 234001: Patch
https://bugs.webkit.org/attachment.cgi?id=234001&action=review
------- Additional Comments from Geoffrey Garen <ggaren at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=234001&action=review
r=me
> Source/WebCore/cssjit/SelectorCompiler.cpp:1442
> // FIXME: We should look into doing something smart in MacroAssembler
instead.
> Assembler::Address flagAddress(childStyle,
RenderStyle::noninheritedFlagsMemoryOffset() +
RenderStyle::NonInheritedFlags::flagsMemoryOffset());
> #if CPU(ARM_THUMB2)
> - m_assembler.or32(Assembler::TrustedImm32(newFlag & 0xffffffff),
flagAddress);
> - Assembler::Address flagHighBits = flagAddress.withOffset(4);
> - m_assembler.or32(Assembler::TrustedImm32(newFlag >> 32), flagHighBits);
> + int32_t flagLowBits = newFlag & 0xffffffff;
> + int32_t flagHighBits = newFlag >> 32;
> + if (flagLowBits)
> + m_assembler.or32(Assembler::TrustedImm32(flagLowBits), flagAddress);
> + if (flagHighBits) {
> + Assembler::Address flagHighAddress = flagAddress.withOffset(4);
> + m_assembler.or32(Assembler::TrustedImm32(flagHighBits),
flagHighAddress);
> + }
A good optimization, but probably better as a separate patch, since the topic
is not related to register saving.
More information about the webkit-reviews
mailing list