Learning IA-64 assembly
While testing EGLIBC 2.10.1 on all Debian architectures, I have discovered that the testsuite on IA-64 fails for the new POSIX 2008 math tests. I have reported the problem both upstream and on debian-ia64@lists.debian.org, but without success.
IA-64 being one of the last architecture (with HPPA) on which EGLIBC
2.10.1 fails to build from sources, I have decided to spend my day
fixing the problem and digging into the corresponding IA-64 assembly
code. The mathematical functions on this architecture are based on the
Highly Optimized Mathematical Functions for the Intel® Itanium™
Architecture.
Using the Intel® Itanium™ Architecture Software Developer's
Manual
and after a lot of tries, I have been able to add the missing code paths
needed for POSIX 2008 compliance, and also fixed a few bugs on the stack
frame allocation (arguments of the alloc
instruction).
The resulting patch is now in the pkg-glibc SVN and in the upstream bugzilla.
And more important, I have learned the basic about IA-64 assembly!