https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59155

Arseny Solokha <asolokha at gmx dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |asolokha at gmx dot com

--- Comment #9 from Arseny Solokha <asolokha at gmx dot com> ---
(In reply to Marc Glisse from comment #0)
> double f(double x){
>   asm volatile("":"+X"(x));
>   return x;
> }
> double g(double x,double y){
>   return f(f(x)+f(y));
> }
> 
> compiled with -O2:
> 
> a.c: In function 'g':
> a.c:7:1: internal compiler error: in reg_overlap_mentioned_p, at
> rtlanal.c:1473
>  }
>  ^
> 0x967015 reg_overlap_mentioned_p(rtx_def const*, rtx_def const*)
>       /data/repos/gcc/pristine/gcc/rtlanal.c:1473
> 0x7cde02 match_asm_constraints_1
>       /data/repos/gcc/pristine/gcc/function.c:7164
> 0x7cdfda rest_of_match_asm_constraints
>       /data/repos/gcc/pristine/gcc/function.c:7207
> 0x7cdfda execute
>       /data/repos/gcc/pristine/gcc/function.c:7239
> Please submit a full bug report,
> with preprocessed source if appropriate.
> Please include the complete backtrace with any bug report.
> See <http://gcc.gnu.org/bugs.html> for instructions.

gcc 7.3 ICEs for me on this testcase as reported here, while all newer branches
including trunk reject it w/ the diagnotsic shown in comment 1. Thus, this PR
applies to 7 branch only.

Reply via email to