<div><div dir="auto">Which architectures are which? </div><div dir="auto"><br></div><div dir="auto">I assume you mean the dec alpha allowed atomic operations on bytes... but your phrasing is a teeny bit unclear </div><br><div class="gmail_quote"><div>On Sat, Aug 19, 2017 at 4:34 AM Florian Weimer <<a href="mailto:fw@deneb.enyo.de">fw@deneb.enyo.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">* Michal Terepeta:<br>
<br>
> On Tue, Aug 1, 2017 at 8:08 PM Carter Schonwald <<a href="mailto:carter.schonwald@gmail.com" target="_blank">carter.schonwald@gmail.com</a>><br>
> wrote:<br>
>> One issue with packed fields is that on many architectures you can't<br>
> quite do subword reads or<br>
>> writes.  So it might not always be a win.<br>
><br>
> Could you give any examples?<br>
<br>
Historic DEC Alpha, now long obsolete.<br>
<br>
It is very hard to create compliant and performant implementations of<br>
Java 5, C 11 or C++ 11 on such architectures.  All these languages<br>
(and their subsequent revisions) require that naturally aligned<br>
objects can be accessed independently.  For example, you can't use a<br>
simple read-modify-write cycle to implement a single-byte store using<br>
word operations.<br>
<br>
That's why such architectures really do not have a future (or even a<br>
present), except maybe in niche markets such as GPGPU (but even there,<br>
things are heading towards the de-facto standard memory model).<br>
</blockquote></div></div>