This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix small structure passing on x86-64


> > These seems to be all wrong in all GCC versions on x86-64.  I've updated
> > move_block_to_reg to tage size in bytes, not in the number of words.  It
> > uses partial move at the end of block if there is appropriate mode or
> > bitfield extraction otherwise.
> >
> > I hope I did not introduced any endianity issues, but I am not sure if
> > there is big endian machine that cares.
> >
> > Seems sane?
> 
> Are you sure that's really the way to go?  Why not generate PARALLELs like the 
> other ports?

Well, x86-64 does generate parallels, but the generic code is using too
long moves to load them...
If I have structure of size 3 bytes to be passed in RAX, how should the
parallel look like?

Honza
> 
> -- 
> Eric Botcazou


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]