public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
From: David Mosberger <davidm@napali.hpl.hp.com>
To: linux-ia64@vger.kernel.org
Subject: Re: [Linux-ia64] epilogue count exceeds number of nested prologues
Date: Tue, 09 Apr 2002 04:46:39 +0000	[thread overview]
Message-ID: <marc-linux-ia64-105590701905421@msgid-missing> (raw)
In-Reply-To: <marc-linux-ia64-105590701905403@msgid-missing>

Hi Randolph,

>>>>> On Sun, 7 Apr 2002 17:17:14 -0700, Randolph Chung <randolph@tausq.org> said:

  Randolph> Hi all,
  Randolph> While trying to compile mozilla with libffi, the configure phase
  Randolph> dies with a message:

  Randolph> Error: Epilogue count of 4294967296 exceeds number of nested prologues
  Randolph> (0)

  Randolph> I see that this message comes from a patch submitted by David in
  Randolph> February. Is libffi broken? What is needed to fix it?


  Randolph> The offending assembly code is attached. it's the ".restore sp"
  Randolph> near the end that is triggering the error.

I'm unable to reproduce this.  If I'm understanding you right, the
problem occurred during the configure phase of mozilla (not libffi).
I just rebuilt Mozilla from the current CVS tree with gcc3.1
pre-release and the current CVS binutils.  It built just fine and the
resulting binary seems to work flawlessly.

From the assembly code you provided, it looks as if conftest.c tried
to call FFI_STATIC_CLOSURE() from within a function, which can't
possibly work.

Can you provide a more precise pointer where this conftest.c is being
generated?

Thanks,

	--david

  Randolph> .file	"conftest.i"
  Randolph> .pred.safe_across_calls p1-p5,p16-p63
  Randolph> .text
  Randolph> .align 16
  Randolph> .global main#
  Randolph> .proc main#
  Randolph> main:
  Randolph> .prologue 2, 2
  Randolph> .vframe r2
  Randolph> mov r2 = r12
  Randolph> .body
  Randolph> ;;
  Randolph> #APP
  Randolph> .data
  Randolph> .align 8
  Randolph> 1:   data8 @fptr(ffi_closure_UNIX)
  Randolph> data8 1b
  Randolph> data8 0
  Randolph> data8 bar
  Randolph> data8 @fptr(baz)
  Randolph> data8 quux
  Randolph> .text
  Randolph> .global foo
  Randolph> .proc foo
  Randolph> foo:
  Randolph> addl r16 = @ltoff(1b), gp;;
  Randolph> ld8  gp = [r16];;
  Randolph> ld8  r17 = [gp];;
  Randolph> ld8  r19 = [r17],8;
  Randolph> adds r18 = 16,gp;;
  Randolph> ld8  r20 = [r17];;
  Randolph> st8  [r18]=r20;
  Randolph> mov b6 = r19
  Randolph> br.cond.sptk.many b6
  Randolph> .endp

  Randolph> #NO_APP
  Randolph> ;;
  Randolph> mov r8 = r0
  Randolph> .restore sp
  Randolph> mov r12 = r2
  Randolph> br.ret.sptk.many b0
  Randolph> .endp main#
  Randolph> .ident	"GCC: (GNU) 3.0.4"


  Randolph> _______________________________________________
  Randolph> Linux-IA64 mailing list
  Randolph> Linux-IA64@linuxia64.org
  Randolph> http://lists.linuxia64.org/lists/listinfo/linux-ia64


  parent reply	other threads:[~2002-04-09  4:46 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-04-08  0:17 [Linux-ia64] epilogue count exceeds number of nested prologues Randolph Chung
2002-04-08 15:52 ` David Mosberger
2002-04-08 17:25 ` David Mosberger
2002-04-09  4:46 ` David Mosberger [this message]
2002-04-09  5:00 ` David Mosberger
2002-04-09  5:09 ` Randolph Chung
2002-04-09  5:23 ` Randolph Chung
2002-04-09  5:56 ` Jeff Licquia

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=marc-linux-ia64-105590701905421@msgid-missing \
    --to=davidm@napali.hpl.hp.com \
    --cc=linux-ia64@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox