Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 14 Sep 2016 17:31:37 +0300
From: Timo Teras <timo.teras@....fi>
To: Rich Felker <dalias@...c.org>
Cc: musl@...ts.openwall.com
Subject: Re: incompatibility between libtheora/mmx and musl ?

On Wed, 14 Sep 2016 10:28:42 -0400
Rich Felker <dalias@...c.org> wrote:

> > > there can be some call abi issue (register clobbering,
> > > stack alignment,..) because of the asm, but that's hard
> > > to check.  
> > 
> > Is musl in any way special compared to glibc/uclibc in its register
> > usage?  
> 
> Not in principle; this is mandated by the ABI. But it's possible that
> their violation of ABI contracts is visible with some implementations
> but not others. For example if they're calling malloc from code that's
> using asm it's possible that they assume the floating point registers
> (or mmx state) are call-saved rather than call-clobbered. This is an
> invalid assumption that might happen to actively break on musl but not
> glibc. IIRC you need some special instructions to switch between x87
> and (original) mmx usage; perhaps they're missing this somewhere.

Also, since it's Alpine (mentioned in first there with the bug report),
we compile everything PIE. So on x86 ebx is reserved and should not be
clobbered.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.