[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#333766: libc6: SIGBUS in libm on hppa breaks qt-x11-free



Daniel Jacobowitz a écrit :
On Thu, Oct 13, 2005 at 09:17:21PM -0600, Grant Grundler wrote:

On Thu, Oct 13, 2005 at 08:54:30PM -0400, Daniel Jacobowitz wrote:

drow is right, as usual. our fenv_t needs to be defined with __attribute__((aligned(8))) or similar.

I'd recommend "fixing" the asm instead: that's an ABI change and would
require heinous rebuilds.

Sorry - I'm not following. The Application *Binary* Interface was
providing 8 byte alignment with gcc 3.4, right?
Why is it breaking the ABI if we tell gcc 4.0 to do the same?


No, the _type_ fenv_t is documented to have 4 byte alignment. In both. In 3.4 you got lucky and it was usually placed at 8.


Ok, that's mean that theoretically it would break the ABI, but practically, it does not break the ABI as the alignment is the same (otherwise we would also have noticed SIGBUS in other applications).

Said in other words, applications with 4-byte aligned fenv_t variables are not working (SIGBUS), so it won't hurt to break the ABI in that case, as the applications have to be rebuilt anyway to fix the problem.

--
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   aurel32@debian.org         | aurelien@aurel32.net
   `-    people.debian.org/~aurel32 | www.aurel32.net



Reply to: