[webkit-dev] Fix for Vector::m_inlineBuffer alignment?

Alexey Proskuryakov ap at webkit.org
Thu Sep 4 02:37:53 PDT 2008


That's a great list of subtle issues (I can add that atomicity  
guarantees are different for non-aligned access sometimes) - it would  
be fantastic if we could amend it with actual data, say SunSpider  
results and/or DOM performance tests on Intel Mac and/or Windows.

If we got an improvement on SunSpider/Mac, we wouldn't have to discuss  
processors running in non-native endianness modes :-)

- WBR, Alexey Proskuryakov

On Sep 4, 2008, at 1:24 PM, Paul Pedriana wrote:

> This is a hardware issue and can vary between different versions.  
> Some hardware of course generates an unhandled exception on  
> unaligned access; some hardware generates an internally handled  
> exception and restarts the access with a different and more  
> expensive pathway or with microcode; some hardware efficiently  
> handles it as it goes and has minimal impact. Sometimes this  
> behavior is different depending on whether the hardware is in big  
> endian vs. little endian mode. A new generation of the same  
> processor family or a version by a different company may act  
> differently than another. Finally, if that memory is accessed by a  
> different means than the CPU (e.g. via DMA or the video bus), then  
> it may require alignment where it doesn't otherwise.
>
> What I'm getting at here is that I think we would need to be careful  
> about disabling it for any hardware, including even forgiving  
> hardware like x86.
>
>
>
>> On Sep 4, 2008, at 12:20 PM, Paul Pedriana wrote:
>>
>>> I'll make a patch and attach it to <https://bugs.webkit.org/show_bug.cgi?id=16925 
>>> >, if that's OK.
>>
>> That would be great!
>>
>> One thing I'm not sure about is whether we want to enforce  
>> alignment on platforms that don't require it - performance testing  
>> should answer this.
>>
>> - WBR, Alexey Proskuryakov
>>
>>
>





More information about the webkit-dev mailing list