[Haskell-cafe] IA64 porting: spill code in the mangler
red5_2 at hotmail.com
Wed Aug 9 20:30:38 EDT 2006
I've been trying to compile a new ia64 port. I've cross-compiled an
unregisterised compiler that generated working binaries the first time it
was built, which was a pleasant experience. But I ran into issues with the
registerised build. The mangler is choking on floating-point spill code:
Prologue junk?: .global __divdf3#
mov r16 = r12
stf.spill [r16] = f2
This saves floating-point register 2 on the stack; it's loaded again later.
I could change the mangler to remove this code, if that's the right
approach. What should the mangler do about it?
More information about the Haskell-Cafe