> seems this alpha assembly was tested with a toolchain other than the GNU one > (meaning the GNU assembler or "gas"), and it was tested on a host other than > Linux or glibc.
That is correct. It was tested with Tru64 assembler only. Sorry, my Alpha Linux machine broke a looooooooooooooooooong time ago:-) > ... > > finally, we're left with one warning: > <stdin>:36: Warning: operand out of range (0xfffffffffffff000 is not between > 0x0000000000000000 and 0x00000000000000ff) > which is due to this insn: > mov -4096,$at > i dont know the correct fix here, so i imagine the original author will need > to chime in. Well, 'mov' is not real Alpha instruction and assembler is expected to replace it with equivalent real one. There is a number of ways it can be realized, and proper replacement for 'mov -4096,$n' is 'lda $n,-4096(zero)'. Apparently gas isn't bright enough and real instruction has to be explicitly coded. Did gas-compiled code work by the way? I mean it could have generated code that would SEGV... > at any rate, the attached patch fixes all the errors on alpha/Linux systems > and i cant see it breaking any others ... it's against CVS head, but it should > apply cleanly to the 1.0.0 branch as well. both places need it. But HEAD branch has two more assembler modules, sha1-alpha.pl and ghash-alpha.pl, which couldn't have worked. At least because of missing #include. I've applied http://cvs.openssl.org/chngview?cn=19894. Could you test the HEAD branch? Once you confirm that it works (or some other issues are addressed), I'll propagate it to 1.0. Thanks for report. A. ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [email protected] Automated List Manager [email protected]
