This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/14327] [3.3/3.4/3.5 Regression] -O0 -fdefer-pop generates wrong code
- From: "jfran at clip dot dia dot fi dot upm dot es" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 28 Feb 2004 01:28:03 -0000
- Subject: [Bug target/14327] [3.3/3.4/3.5 Regression] -O0 -fdefer-pop generates wrong code
- References: <20040227235918.14327.jfran@clip.dia.fi.upm.es>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From jfran at clip dot dia dot fi dot upm dot es 2004-02-28 01:28 -------
Maybe that helps to solve the bug... the code seems to be correct if a
dummy normal goto is placed before every the computed goto:
void bar(int *pc) {
static const void *l[] = {&&lab0, &&end};
foo(0);
goto a0; a0: goto *l[*pc];
lab0:
foo(0);
pc++;
goto a1; a1: goto *l[*pc];
end:
return;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14327