[Python-Dev] HEADS UP: Compilation risk with new GCC 4.5.0

Jesus Cea jcea at jcea.es
Wed May 12 16:01:19 CEST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 12/05/10 15:39, James Y Knight wrote:
> While assuming the stack is 16byte aligned is undeniably an
> ABI-violation in GCC, at this point, it's surely simpler to just go
> along: the new unofficial ABI for x86 is that the stack must always be
> left in 16-byte alignment...

You can not rule out other software embedding python inside, or
callbacks from foreign code. For instance, Berkeley DB library can do
callbacks to Python code.

> So, just change psyco to always use 16-byte-aligned stackframes. GCC has
> used 16byte-aligned stackframes for a heck of a long time now (so if the
> stack starts 16byte aligned on entry to a function it will stay that way
> on calls). So usually the only way people run into unaligned stacks is
> via hand-written assembly code or JIT compilers.

Not all the universe is GCC based. For instance, Solaris system
libraries are not compiled using GCC. The world is bigger that Linux/GCC.

> I think you'll be a lot happier just modifying Psyco than making
> everyone else in the world change their compiler flags.

Would be nice if GCC 4.5.1 would solve this :). They are objectivelly
breaking the x86 ABI.

- -- 
Jesus Cea Avion                         _/_/      _/_/_/        _/_/_/
jcea at jcea.es - http://www.jcea.es/     _/_/    _/_/  _/_/    _/_/  _/_/
jabber / xmpp:jcea at jabber.org         _/_/    _/_/          _/_/_/_/_/
.                              _/_/  _/_/    _/_/          _/_/  _/_/
"Things are not so easy"      _/_/  _/_/    _/_/  _/_/    _/_/  _/_/
"My name is Dump, Core Dump"   _/_/_/        _/_/_/      _/_/  _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQCVAwUBS+q0rplgi5GaxT1NAQK98wP+NJoqNCpvjemP4Gv7y1G/iPkQgjuidslT
uiPxDcN9Eprcluc+mGTBu6N+fCTj09xYhUCD1wWhoJq2dRyoA8b+XC1fCSyL4VXc
mzsy0rGmKeQh4lyAw+7agFCqryd6n+/oyl+9aOT6YkzyLFjQd4KDEcGNZ0h+6PAf
4jtx1+p3k0c=
=TzTY
-----END PGP SIGNATURE-----


More information about the Python-Dev mailing list