FWIW, alignment is probably not only good for most non-Nehalem* platforms, it is also a requirement for certain platforms like 32-bit ARM, if I'm not mistaken. I believe AArch64 (64bit ARM) has also lifted this restruction, but in general it's probably a decent one to follow for portability I think.
* Intel Nehalem was the first Intel arch to allow very cheap unaligned load/stores from what I remember, these days I'm not even sure how much slower they are than aligned ones... On Wed, May 7, 2014 at 1:25 PM, Adam Chlipala <[email protected]> wrote: > Neat! Would you mind contributing a patch to address this ARM issue? > (Presumably this is just the code you already tweaked, perhaps ideally using > some kind of preprocessor magic to decide if the alignment is necessary, or > maybe alignment is also good for performance on all platforms that should be > supported.) > > > On 05/07/2014 12:36 PM, Evan Danaher wrote: >> >> On Wed, May 07, 2014 at 08:37:58AM -0400, Adam Chlipala wrote: >>> >>> [snip] >>> >>> I don't know if anyone has built Ur/Web servers for ARM, but I can't >>> think >>> of any reason why it wouldn't work right away. If there are issues, >>> they're >>> probably easy to fix. Certainly Ur/Web is used regularly with both >>> 32-bit >>> and 64-bit x86. >>> >> I haven't finished any projects, but some of my playing around was on an >> ARM machine running Ubuntu. IIRC, I had to tweak uw_malloc to always be >> 4-byte aligned, but aside from that I didn't run into any issues. (I >> also didn't do anything particularly exciting, but the basics at least >> worked without issue.) > > > _______________________________________________ > Ur mailing list > [email protected] > http://www.impredicative.com/cgi-bin/mailman/listinfo/ur -- Regards, Austin - PGP: 4096R/0x91384671 _______________________________________________ Ur mailing list [email protected] http://www.impredicative.com/cgi-bin/mailman/listinfo/ur
