<div dir="ltr">If the alignment, then surely "SuitableAlignment" should also change? It "SuitableAlignment" isn't the right thing to use for "largest alignment", then perhaps a new member is needed, but I thought that "SuitableAlignment" was for "The alignment you need to ensure that data is aligned correctly.<br><br>And surely it's better to have an official way to expose "what the compiler thinks is good alignment", than to have a hard-coded constant of "4" or "16" or whatever (ok, it may be a "const size_t my_alignment = n;`" or "#define MY_ALIGNMENT n" in the source, but it's something the programmer of that particular code thought was good, possibly without considering future changes in system architecture [Or when porting to a different architecture]. <div><br></div><div>(I think it was introduction of SSE that enforced new alignment, but that wasn't particularly useful for general purpose programming, so it was only once SSE2 with it's improved set of instructions that it became useful to let the compiler pick SSE(2) instructions, but that's a detail, and nothing to do with my patch.... :) )<br><br>--</div><div>Mats</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 13 December 2014 at 18:06, Joerg Sonnenberger <span dir="ltr"><<a href="mailto:joerg@britannica.bec.de" target="_blank">joerg@britannica.bec.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Sat, Dec 13, 2014 at 05:51:27PM +0000, mats petersson wrote:<br>
> Add a predefined macro reflecting the largest alignment required by<br>
> the archiecture, in bytes. This is useful for allocator designs that<br>
> need to know the system alignment requirements. It reflects the<br>
> TargetInfo.SuitableAlignment, converted to bytes (using CharWidth).<br>
<br>
</span>The one issue I have with this is that exports data that may change in<br>
the future. What is the stability guarantee for it? Consider i386 -- for<br>
a very long time, nothing required more than 32bit alignment. Only the<br>
introduction of SSE2 changed that.<br>
<br>
Joerg<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</blockquote></div><br></div>