_x86_64_AES_[en|de]crypt_compact: size optimization and aggressive
[oweals/openssl.git] / crypto / aes / asm / aes-ppc.pl
index 9c8a8d32b82acbf5adbe9d1c5021737d81d5b93f..7219b30e8ca9f607cb57acbc14f3c11d0ed20a0c 100644 (file)
@@ -12,9 +12,9 @@
 # ppc_AES_[en|de]crypt perform at 18 cycles per byte processed with
 # 128-bit key, which is ~40% better than 64-bit code generated by gcc
 # 4.0. But these are not the ones currently used! Their "compact"
-# counterparts are, for security reason. ppc_AES_crypt_compact runs at
-# 1/2 of ppc_AES_encrypt speed, while ppc_AES_decrypt_compact - at 1/3
-# of ppc_AES_decrypt.
+# counterparts are, for security reason. ppc_AES_encrypt_compact runs
+# at 1/2 of ppc_AES_encrypt speed, while ppc_AES_decrypt_compact -
+# at 1/3 of ppc_AES_decrypt.
 
 $output = shift;
 
@@ -87,8 +87,8 @@ $acc14="r30";
 $acc15="r31";
 
 # stay away from TLS pointer
-if ($SIZE_T==8)        { $t1="r0";             }
-else           { $Tbl3=$t0; $t="r0";   }
+if ($SIZE_T==8)        { die if ($t1 ne "r13");  $t1="r0";             }
+else           { die if ($Tbl3 ne "r2"); $Tbl3=$t0; $t0="r0";  }
 $mask80=$Tbl2;
 $mask1b=$Tbl3;