<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
I understand the possible benefits of -mtune, but I just don't see how we benefit from a half baked implementation, or a no-op, and leaving the no-op in hoping that one day it will be implemented properly.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
I also understand that removing the option could break some builds, but hey, compiler options and defaults change sometimes. In my opinion the cost of migrating would be worth the benefits. But I understand the different angles here, and hey, at least I've
 tried now... <span id="��">:-)</span><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
This is addressing the hard problem of setting optimal compiler options with -target, -march, -mcpu, and -mtune.  In this equation -mtune is just a minor annoyance, but if we could get rid of this part of the confusion then that would be a good change to me
 and avoid the regular question we get what the -mtune options should be.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Cheers.<br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Peter Smith <Peter.Smith@arm.com><br>
<b>Sent:</b> 20 April 2020 08:33<br>
<b>To:</b> David Blaikie <dblaikie@gmail.com>; Sjoerd Meijer <Sjoerd.Meijer@arm.com><br>
<b>Cc:</b> cfe-dev@lists.llvm.org Developers <cfe-dev@lists.llvm.org><br>
<b>Subject:</b> Re: [cfe-dev] Option -mtune</font>
<div> </div>
</div>
<div class="BodyFragment"><font face="Times New Roman" size="3"><span style="font-size:12pt;"><a name="BM_BEGIN"></a>
<div><font size="2"><span style="font-size:11pt;">I don't think that we could remove -mtune without breaking some builds that support both GCC and Clang with the same script, as -mtune is supported in GCC. As David points out -mtune isn't needed for correctness
 so ignoring it for at least these types of project seems to be reasonable. An opt-in warning for accepted but ignored options could be an option though.<br>
<br>
IIRC We did use to have some support for mtune in AArch64, unfortunately we had to take it out (mea culpa
<a href="https://reviews.llvm.org/D39179">https://reviews.llvm.org/D39179</a>) as it wasn't just affecting micro-architectural features it was including architecture features as well. I think that there is some scope for putting back support for mtune, it would
 need us to more cleanly separate out the micro-architectural features. The most recent post about this was
<a href="http://lists.llvm.org/pipermail/llvm-dev/2017-October/118520.html">http://lists.llvm.org/pipermail/llvm-dev/2017-October/118520.html</a><br>
<br>
Peter<br>
<br>
________________________________________<br>
From: cfe-dev <cfe-dev-bounces@lists.llvm.org> on behalf of Sjoerd Meijer via cfe-dev <cfe-dev@lists.llvm.org><br>
Sent: 19 April 2020 22:01<br>
To: David Blaikie<br>
Cc: cfe-dev@lists.llvm.org Developers<br>
Subject: Re: [cfe-dev] Option -mtune<br>
<br>
Thanks for your reply, and I can see that this is the only benefit of this no-op: if your move to Clang and if you still have -mtune set in your build environment, you don't get an "unknown option" error. But for me personally, silently ignoring things and
 giving the impression it works is worse than a simple Makefile fix, but maybe I am wrong, which is why I checked here on the list. I was guessing that a diagnostic in this case would only be value if it's enabled by default as I'm afraid many users won't enable
 it? And if you need to add a flag to get this diagnostic, you might as well get rid of -mtune?<br>
<br>
Cheers.<br>
<br>
________________________________<br>
From: David Blaikie <dblaikie@gmail.com><br>
Sent: 19 April 2020 20:58<br>
To: Sjoerd Meijer <Sjoerd.Meijer@arm.com><br>
Cc: cfe-dev@lists.llvm.org Developers <cfe-dev@lists.llvm.org><br>
Subject: Re: [cfe-dev] Option -mtune<br>
<br>
On Sun, Apr 19, 2020 at 12:55 PM Sjoerd Meijer via cfe-dev <cfe-dev@lists.llvm.org<mailto:cfe-dev@lists.llvm.org>> wrote:<br>
Hello,<br>
<br>
Quick question what you think we should be doing with option -mtune. Problem is that it looks like we support it because it is documented, it can be supplied on the command line, but it is silently ignored:<br>
<br>
  // FIXME: Handle -mtune=.<br>
  (void)Args.hasArg(options::OPT_mtune_EQ);<br>
<br>
giving the false impression to users it is doing something is probably the worst of options we have<br>
<br>
Not /the worst/ as such, many options are added to Clang so it's command line compatible (in the sense that you'll get a running program that behaves correctly) with GCC - I imagine the commit history of this feature probably justifies the addition with that
 sort of reason.<br>
<br>
Seems quite reasonable for --help and web documentation to mention that it's a no-op/supported-for-compatibility flag.<br>
<br>
As for adding a warning for these sort of no-op flags, maybe? Probably opt-in, though.<br>
<br>
(we get regularly questions about this).<br>
We could simply remove it, or if this is too radical, issue a diagnostic that this is an unsupported option? Any thoughts/preferences?<br>
<br>
Cheers,<br>
Sjoerd.<br>
<br>
_______________________________________________<br>
cfe-dev mailing list<br>
cfe-dev@lists.llvm.org<mailto:cfe-dev@lists.llvm.org><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</span></font></div>
</span></font></div>
</body>
</html>