SPARCv9 assembler pack: refine CPU detection on Linux, fix for "unaligned
[oweals/openssl.git] / crypto / sha / asm / sha256-armv4.pl
index 0c9d999de998c5f11b5bfb53f320afa5c8e255c6..48d846deec36810fffc4dbacae782ddb487e9a7f 100644 (file)
@@ -172,8 +172,10 @@ $code.=<<___;
        bx      lr                      @ interoperable with Thumb ISA:-)
 .size   sha256_block_data_order,.-sha256_block_data_order
 .asciz  "SHA256 block transform for ARMv4, CRYPTOGAMS by <appro\@openssl.org>"
+.align 2
 ___
 
 $code =~ s/\`([^\`]*)\`/eval $1/gem;
+$code =~ s/\bbx\s+lr\b/.word\t0xe12fff1e/gm;   # make it possible to compile with -march=armv4
 print $code;
 close STDOUT; # enforce flush