<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
Hi,
<div class=""><br class="">
</div>
<div class="">A64 versus A32/T32 code generation is controlled by the -target option which I don’t believe is under discussion here.</div>
<div class=""><br class="">
</div>
<div class="">James<br class="">
<div>
<blockquote type="cite" class="">
<div class="">On 18 May 2016, at 13:17, Bruce Hoult <<a href="mailto:bruce@hoult.org" class="">bruce@hoult.org</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div dir="ltr" class="">Note that armv8a modifies the A32 and T32 instruction sets, and is therefore an important -march option for 32 bit code. Therefore armv8a can not be used to imply aarch64.
<div class=""><br class="">
</div>
<div class="">For example:</div>
<div class=""><br class="">
</div>
<div class="">- IT predication instruction with more than a single controlled 16 bit instruction, or an instruction that modifies PC is deprecated. All old uses of IT work by default, but a control bit enables the OS to cause a trap on use of a deprecated use.</div>
<div class=""><br class="">
</div>
<div class="">- new A32 and T32 Load Acquire/Store Release instructions</div>
<div class=""><br class="">
</div>
<div class="">- new A32 and T32 scalar FP instructions including conditional select, min, max, new rounding modes for FP to int conversion, conversion between half precision and double precision</div>
<div class=""><br class="">
</div>
<div class="">- new A32 and T32 vector forms of the above FP operations</div>
<div class=""><br class="">
</div>
<div class="">- new A32 and T32 cryptographic instructions</div>
<div class=""><br class="">
</div>
<div class="">- changes to barrier instructions</div>
<div class=""><br class="">
</div>
<div class="">Users can reasonably expect -march=armv8a for 32 bit code to potentially generate the new FP instructions and restrict the use of the IT instruction.</div>
<div class=""><br class="">
</div>
</div>
<div class="gmail_extra"><br class="">
<div class="gmail_quote">On Thu, May 5, 2016 at 1:11 PM, Jojo Ma via llvm-dev <span dir="ltr" class="">
<<a href="mailto:llvm-dev@lists.llvm.org" target="_blank" class="">llvm-dev@lists.llvm.org</a>></span> wrote:<br class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr" class="">
<div class=""><br class="">
<span class="">Hi everyone,</span><span class=""><br class="">
<br class="">
</span><span class="">I'm a member engineer of linaro's llvm team,coming from Spreadtrum.</span><span class=""><span class="">I am a new person on LLVM.</span>Now I'm writing a Target Parser for AArch64,so options parsing of AArch64 about cpu & arch & fpu can
 be s</span><span class="">ummary to one place.<br class="">
<br class="">
</span><span class="">In the TargetParser,we assume "aarch64" and "arm64" are synonyms of armv8a(as they are only for armv8a,people usually do this). So after using AArch64TargetParser in options parsing in Clang,using "-march=aarch64" and "-march=arm64" are
 both valid.<br class="">
<br class="">
</span><span class="">I saw Kevin </span><span class="">has a different view on this in his submission:r213353.<br class="">
<br class="">
</span></div>
<span style="color:rgb(56,118,29)" class=""><i class=""><span class="">+// RUN: %clang -target aarch64 -march=arm64 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-ARCH-NOT-ACCEPT %s</span><br class="">
<span class="">+// RUN: %clang -target aarch64 -march=aarch64 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-ARCH-NOT-ACCEPT %s</span><br class="">
<span class="">+// CHECK-ARCH-NOT-ACCEPT: error: the clang compiler does not support</span></i></span><br class="">
<div class="">
<div style="margin-left:40px" class=""><span class=""></span></div>
<span class=""><br class="">
So I failed on the </span><span class="">regression testing.</span><span class="">So I think we should reach a consensus on this issue.</span><span class=""><br class="">
Would you mind letting me know what you think of this issuse?<br class="">
<br class="">
</span><span class="">Thank you very much!</span><span class="">Looking forward to your reply!<br class="">
</span><span class="">I enclose the </span><span class=""><span class="">attachments</span> for your reference.<br class="">
<br class="">
</span><span class="">Best Regards,<br class="">
</span><span class=""><a href="http://Jojo.ma" class="">Jojo.ma</a></span></div>
</div>
<br class="">
_______________________________________________<br class="">
LLVM Developers mailing list<br class="">
<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a><br class="">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank" class="">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class="">
<br class="">
</blockquote>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose,
 or store or copy the information in any medium. Thank you.
</body>
</html>