Hi,

I've recently re-stumbled upon this. As far as I can tell it hasn't been
commited. Was there some more discussion on the topic or did it simply
get forgotten?

-- 
Adrien Nader

On Mon, Aug 22, 2016, Kai Tietz wrote:
> Hello Aleksey,
> 
> 2016-08-22 13:52 GMT+02:00 Aleksey Vasenev <[email protected]>:
> > __attribute__((aligned)) don't work for stack variables in threads created
> > with _beginthreadex without alignment.
> >
> > Signed-off-by: Aleksey Vasenev <[email protected]>
> > ---
> > send it again
> > github: https://github.com/Ratio2/mingw-w64/tree/align
> > fix crash: ffmpeg -f lavfi -i testsrc -vcodec libvpx -threads 2 -f null -
> > problem discuss: https://ffmpeg.zeranoe.com/forum/viewtopic.php?t=2236
> >
> > _beginthreadex does not align the stack on 16-byte boundary as expected
> > by gcc.
> >
> > On x86 targets, the force_align_arg_pointer attribute may be applied to
> > individual function definitions, generating an alternate prologue and
> > epilogue that realigns the run-time stack if necessary. This supports
> > mixing legacy codes that run with a 4-byte aligned stack with modern
> > codes that keep a 16-byte stack for SSE compatibility.
> > https://gcc.gnu.org/onlinedocs/gcc/x86-Function-Attributes.html
> >
> >  mingw-w64-libraries/winpthreads/src/thread.c | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/mingw-w64-libraries/winpthreads/src/thread.c 
> > b/mingw-w64-libraries/winpthreads/src/thread.c
> > index 565ea48..c771daf 100644
> > --- a/mingw-w64-libraries/winpthreads/src/thread.c
> > +++ b/mingw-w64-libraries/winpthreads/src/thread.c
> > @@ -1454,6 +1454,9 @@ pthread_setcanceltype (int type, int *oldtype)
> >    return 0;
> >  }
> >
> > +#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)
> > +__attribute__((force_align_arg_pointer))
> > +#endif
> >  int
> >  pthread_create_wrapper (void *args)
> >  {
> > --
> > 2.9.1
> 
> I guess you have tested your suggested patch?  Over all it looks
> reasonable to me.
> 
> Regards,
> Kai
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> Mingw-w64-public mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to