From: Jan Hubicka <hubicka@ucw.cz>
To: Jakub Jelinek <jakub@redhat.com>
Cc: Jan Hubicka <hubicka@ucw.cz>, "H.J. Lu" <hjl.tools@gmail.com>,
Jan Hubicka <jh@suse.cz>,
discuss@x86-64.org, GCC <gcc@gcc.gnu.org>,
"Girkar, Milind" <milind.girkar@intel.com>,
"Dmitriev, Serguei N" <serguei.n.dmitriev@intel.com>,
"Kreitzer, David L" <david.l.kreitzer@intel.com>
Subject: Re: RFC: Extend x86-64 psABI for 256bit AVX register
Date: Tue, 10 Jun 2008 11:32:00 -0000 [thread overview]
Message-ID: <20080610113220.GD13869@atrey.karlin.mff.cuni.cz> (raw)
In-Reply-To: <20080610113921.GX3726@sunsite.mff.cuni.cz>
>
> I don't understand why you want to pass __m256 and 256-bit vector values
> to anonymous arguments in registers. The only thing the vararg functions
> would do with it would be save it somewhere on the stack.
> Given the x86_64 ABI, you can't expect calling an implicitly
> prototyped or non-vararg prototyped function which is actually
> defined as vararg function (as %rax wouldn't be properly initialized),
Unprototyped functions calls all get rax set. If calle is variadic,
things still work. Sure, for __m256 we can also declare prototypes for
variadic functions mandatory and simply pass things on stack.
Honza
> which means you need a prototype for all vararg functions and
> at that point the caller can just do the job for the callee and push stuff
> on the stack. Then vararg prologue doesn't need to save %ymm* registers
> at all and va_arg will handle __m256 just fine.
>
> Jakub
next prev parent reply other threads:[~2008-06-10 11:32 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-05 14:31 H.J. Lu
2008-06-05 14:49 ` Richard Guenther
2008-06-05 15:52 ` H.J. Lu
2008-06-05 15:15 ` Jan Hubicka
2008-06-05 16:14 ` H.J. Lu
2008-06-06 8:29 ` Jan Hubicka
2008-06-06 13:50 ` H.J. Lu
2008-06-06 14:28 ` H.J. Lu
2008-06-06 14:31 ` Richard Guenther
2008-06-06 14:41 ` H.J. Lu
2008-06-06 14:44 ` Richard Guenther
2008-06-09 14:41 ` Jan Hubicka
2008-06-10 11:24 ` Jakub Jelinek
2008-06-10 11:32 ` Jan Hubicka [this message]
2008-06-10 13:48 ` H.J. Lu
2008-06-10 14:50 ` Jan Hubicka
2008-06-10 14:57 ` Jakub Jelinek
2008-06-10 15:41 ` H.J. Lu
2008-06-10 15:49 ` Jan Hubicka
2008-06-10 16:18 ` H.J. Lu
2008-06-11 14:49 ` H.J. Lu
2008-06-15 22:37 ` Jakub Jelinek
2008-06-16 1:49 ` Jan Hubicka
2008-06-18 23:16 ` H.J. Lu
2008-06-06 15:01 ` Jakub Jelinek
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=20080610113220.GD13869@atrey.karlin.mff.cuni.cz \
--to=hubicka@ucw.cz \
--cc=david.l.kreitzer@intel.com \
--cc=discuss@x86-64.org \
--cc=gcc@gcc.gnu.org \
--cc=hjl.tools@gmail.com \
--cc=jakub@redhat.com \
--cc=jh@suse.cz \
--cc=milind.girkar@intel.com \
--cc=serguei.n.dmitriev@intel.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).