public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jeffrey A Law <law@cygnus.com>
To: Jim Wilson <wilson@cygnus.com>
Cc: Joern Rennecke <amylaar@cygnus.co.uk>, egcs@cygnus.com
Subject: Re: Applying FUNCTION_ARG_PADDING to register arguments
Date: Fri, 24 Oct 1997 07:43:00 -0000	[thread overview]
Message-ID: <11054.877704316@hurl.cygnus.com> (raw)
In-Reply-To: <199710240016.RAA27996@cygnus.com>

  In message < 199710240016.RAA27996@cygnus.com >you write:
  > 	While tracking down a varargs bug, I found that calls.c doesn't respect
  > 	FUNCTION_ARG_PADDING for register arguments.  I think that is a bug.
  > 
  > I agree.  However, the problem is not quite this simple to fix, because adding
  > code that uses FUNCTION_ARG_PADDING may break the compiler for other targets
  > if FUNCTION_ARG_PADDING happens to be defined wrong for this case.  This
  > should at least be checked.  This particular code is used for the PA and
  > Irix6 ports.  I suggest you test them with your patch.
  > 
  > The irix6 port has a related problem.  I wrote up a description of
  > this once so I could discuss the problem with Kenner, but never had time
  > to finish the work I started.   My message follows.  I don't claim that
  > everything in it is correct, but there might be some useful info in it.
There is a long standing ABI bug on the PA with regards to padding
of structs.  If I remember right, when a small struct is passed in
a reg it is incorrectly justified.

I believe this can be triggered by setting up a varargs/stdarg call
with a small structs as unnamed args.  If you compile the caller
with gcc and the callee with HP C, then they'll disagree on the value
of the parameters (similarly if you switch compiler for caller/callee).

Jeff

  parent reply	other threads:[~1997-10-24  7:43 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-10-23 12:49 Joern Rennecke
1997-10-23 17:28 ` Jim Wilson
1997-10-24  6:41   ` Joern Rennecke
1997-10-24  7:45     ` Jeffrey A Law
1997-10-24  7:43   ` Jeffrey A Law [this message]
1997-10-28 12:35   ` Joern Rennecke

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=11054.877704316@hurl.cygnus.com \
    --to=law@cygnus.com \
    --cc=amylaar@cygnus.co.uk \
    --cc=egcs@cygnus.com \
    --cc=wilson@cygnus.com \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).