Fix bug introduced in cn#16195.
authorAndy Polyakov <appro@openssl.org>
Thu, 3 May 2007 09:12:47 +0000 (09:12 +0000)
committerAndy Polyakov <appro@openssl.org>
Thu, 3 May 2007 09:12:47 +0000 (09:12 +0000)
crypto/aes/asm/aes-s390x.pl

index c09e140e615d2c11480d2ccb28e8deac3aa7890c..9f5d48ae1f82c052dfaadd9b98718f21c8e30a24 100644 (file)
@@ -139,11 +139,13 @@ AES_encrypt:
        jz      .Lesoft
        lghi    %r0,`0x00|0x12` # encrypt AES-128
        la      %r1,0($key)
-       la      %r2,0($inp)
+       #la     %r2,0($inp)
        la      %r4,0($out)
        lghi    %r3,16          # single block length
        .long   0xb92e0042      # km %r4,%r2
        bcr     8,%r14
+       la      $out,0(%r4)     # restore arguments
+       la      $key,0(%r1)
 .Lesoft:
        stmg    %r3,%r15,24($sp)
 
@@ -448,11 +450,14 @@ AES_decrypt:
        jz      .Ldsoft
        lghi    %r0,`0x80|0x12` # decrypt AES-128
        la      %r1,160($key)
-       la      %r2,0($inp)
+       #la     %r2,0($inp)
        la      %r4,0($out)
        lghi    %r3,16          # single block length
        .long   0xb92e0042      # km %r4,%r2
        bcr     8,%r14
+       la      $out,0(%r4)     # restore arguments
+       lghi    $key,-160
+       la      $key,0($key,%r1)
 .Ldsoft:
        stmg    %r3,%r15,24($sp)