public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/49866] New: [4.6 Regression] -mcmodel=large tail call fails to assemble
@ 2011-07-27 11:40 jakub at gcc dot gnu.org
  2011-07-27 11:42 ` [Bug target/49866] " jakub at gcc dot gnu.org
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-07-27 11:40 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49866

           Summary: [4.6 Regression] -mcmodel=large tail call fails to
                    assemble
           Product: gcc
           Version: 4.6.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: jakub@gcc.gnu.org
                CC: uros@gcc.gnu.org
            Target: x86_64-linux


void fn (void *, int, int);
int fn2 (void);
void baz (int);

static void
foo (void *x, int y)
{
  int i;
  for (i = 0; i < y; i++)
    fn (x, fn2 (), i);
}

void
bar (int u, int v, int w, void *x)
{
  baz (u);
  foo (x, w);
  baz (u);
}

gcc -O2 -mcmodel=large -c rh725516.c
fails to assemble, we end up with
        jmp     *$baz
This got fixed on the trunk with
http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173797
but for the backport it would be certainly preferrable if we got a smaller and
less riskier fix than that.
In r166110 it was (likely incorrectly for large model, but at least it
assembled) emitting jmp baz, I expect the change came with
http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=166119


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2011-07-27 19:24 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-27 11:40 [Bug target/49866] New: [4.6 Regression] -mcmodel=large tail call fails to assemble jakub at gcc dot gnu.org
2011-07-27 11:42 ` [Bug target/49866] " jakub at gcc dot gnu.org
2011-07-27 11:47 ` ubizjak at gmail dot com
2011-07-27 12:09 ` jakub at gcc dot gnu.org
2011-07-27 12:15 ` ubizjak at gmail dot com
2011-07-27 12:52 ` jakub at gcc dot gnu.org
2011-07-27 12:56 ` ubizjak at gmail dot com
2011-07-27 18:17 ` jakub at gcc dot gnu.org
2011-07-27 18:20 ` jakub at gcc dot gnu.org
2011-07-27 19:24 ` jakub at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).