<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 22 November 2013 19:55, Jim Grosbach <span dir="ltr"><<a href="mailto:grosbach@apple.com" target="_blank">grosbach@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><div>Using -march= and -mcpu= at the same time should probably be a hard error. -march is preferable and 32-bit ARM is the outlier for historical reasons in preferring -mcpu. I’d love to be able to change that, but it’s likely to be a hard road.</div>
</div></blockquote><div></div></div><br></div><div class="gmail_extra">The problem is that ARMv7A has very different CPU types (A8 vs. A9 vs. A15), so getting "armv7a" doesn't narrow it down well enough. For all the rest (M and R), it's ok to say "armv7r", "armv6m", "armv7m" (mostly by coincidence, not design).</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Some alternatives, such as "armv7l" or "armv7hl", don't specify the CPU, while "armv7s", "armv7k" or "armv7f" do, but it's not "v7a", which makes it even more cryptic. With all that confusion, I still prefer the good old -mcpu over -march every day.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Also, I don't think that (march + mcpu) should be a hard error, unless your march can completely specify the CPU type, or at least, the optimization profile.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">cheers,</div><div class="gmail_extra">--renato</div></div>