This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug inline-asm/79552] [6 Regression] Wrong code generation due to -fschedule-insns, with __restrict__ and inline asm
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 16 Feb 2017 13:52:12 +0000
- Subject: [Bug inline-asm/79552] [6 Regression] Wrong code generation due to -fschedule-insns, with __restrict__ and inline asm
- Auto-submitted: auto-generated
- References: <bug-79552-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79552
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2017-02-16
Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
<bb 2> [100.00%]:
c.0_1 = (long unsigned int) c_3(D);
__asm__("rep stosb" : "=D" a_6, "=c" n_7, "=m" MEM[(struct ._0 *)a_5(D)
clique 1 base 0] : "a" 0, "0" a_5(D), "1" c.0_1);
_2 = MEM[(char *)a_5(D) clique 1 base 1];
__asm__ __volatile__("xor %0, %0" : : "q" _2);
so we have two different restrict bases here which is obviously wrong. I'll
see why.