<div dir="ltr">Sorry about the breakage, fixed with r225942.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 13, 2015 at 7:48 PM, Hal Finkel <span dir="ltr"><<a href="mailto:hfinkel@anl.gov" target="_blank">hfinkel@anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">David, Saleem,<br>
<br>
Perhaps you (or anyone reading this) can provide some insight. trunk recently stopped being able to compile tramp3d-v4 on my PPC64/Linux box, with this error:<br>
<br>
test-suite/MultiSource/Benchmarks/tramp3d-v4/tramp3d-v4.cpp:51974:3: error: invalid input constraint<br>
'i#*X' in asm<br>
feclearexcept((FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID));<br>
^<br>
/usr/include/bits/fenvinline.h:56:11: note: expanded from macro 'feclearexcept'<br>
: : "i#*X"(__builtin_ffs (__excepts))); \<br>
^<br>
<br>
The full macro definition is:<br>
<br>
/* Inline definition for feclearexcept. */<br>
# define feclearexcept(__excepts) \<br>
((__builtin_constant_p (__excepts) \<br>
&& ((__excepts) & ((__excepts)-1)) == 0 \<br>
&& (__excepts) != FE_INVALID) \<br>
? ((__excepts) != 0 \<br>
? (__extension__ ({ __asm__ __volatile__ \<br>
("mtfsb0 %s0" \<br>
: : "i#*X"(__builtin_ffs (__excepts))); \<br>
0; })) \<br>
: 0) \<br>
: (feclearexcept) (__excepts))<br>
<br>
<br>
Any idea why?<br>
<br>
Thanks in advance,<br>
Hal<br>
<div class="HOEnZb"><div class="h5"><br>
----- Original Message -----<br>
> From: "David Majnemer" <<a href="mailto:david.majnemer@gmail.com">david.majnemer@gmail.com</a>><br>
> To: <a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
> Sent: Sunday, January 11, 2015 2:52:38 AM<br>
> Subject: r225600 - Basic: The asm constraint '+#r' isn't valid, reject it<br>
><br>
> Author: majnemer<br>
> Date: Sun Jan 11 02:52:38 2015<br>
> New Revision: 225600<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=225600&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=225600&view=rev</a><br>
> Log:<br>
> Basic: The asm constraint '+#r' isn't valid, reject it<br>
><br>
> Modified:<br>
> cfe/trunk/lib/Basic/TargetInfo.cpp<br>
> cfe/trunk/test/Sema/asm.c<br>
><br>
> Modified: cfe/trunk/lib/Basic/TargetInfo.cpp<br>
> URL:<br>
> <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/TargetInfo.cpp?rev=225600&r1=225599&r2=225600&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/TargetInfo.cpp?rev=225600&r1=225599&r2=225600&view=diff</a><br>
> ==============================================================================<br>
> --- cfe/trunk/lib/Basic/TargetInfo.cpp (original)<br>
> +++ cfe/trunk/lib/Basic/TargetInfo.cpp Sun Jan 11 02:52:38 2015<br>
> @@ -486,9 +486,13 @@ bool TargetInfo::validateOutputConstrain<br>
> if (Name[1] == '=' || Name[1] == '+')<br>
> Name++;<br>
> break;<br>
> + case '#': // Ignore as constraint.<br>
> + while (Name[1] && Name[1] != ',')<br>
> + Name++;<br>
> + if (Name[1] != ',')<br>
> + return false;<br>
> case '?': // Disparage slightly code.<br>
> case '!': // Disparage severely.<br>
> - case '#': // Ignore as constraint.<br>
> case '*': // Ignore for choosing register preferences.<br>
> break; // Pass them.<br>
> }<br>
><br>
> Modified: cfe/trunk/test/Sema/asm.c<br>
> URL:<br>
> <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/asm.c?rev=225600&r1=225599&r2=225600&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/asm.c?rev=225600&r1=225599&r2=225600&view=diff</a><br>
> ==============================================================================<br>
> --- cfe/trunk/test/Sema/asm.c (original)<br>
> +++ cfe/trunk/test/Sema/asm.c Sun Jan 11 02:52:38 2015<br>
> @@ -177,3 +177,9 @@ void fn2() {<br>
> __asm__(""<br>
> : "+&m"(l)); // expected-error {{invalid output constraint<br>
> '+&m' in asm}}<br>
> }<br>
> +<br>
> +void fn3() {<br>
> + int l;<br>
> + __asm__(""<br>
> + : "+#r"(l)); // expected-error {{invalid output constraint<br>
> '+#r' in asm}}<br>
> +}<br>
><br>
><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>
><br>
<br>
</div></div><span class="HOEnZb"><font color="#888888">--<br>
Hal Finkel<br>
Assistant Computational Scientist<br>
Leadership Computing Facility<br>
Argonne National Laboratory<br>
</font></span></blockquote></div><br></div>