Commit 81eae077 authored by Andy Polyakov's avatar Andy Polyakov
Browse files

crpyto/ppccpuid.pl: add FPU probe and fix OPENSSL_rdtsc.



Reviewed-by: default avatarKurt Roeckx <kurt@openssl.org>
parent 2688d999
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -23,6 +23,14 @@ $code=<<___;
.machine	"any"
.text

.globl	.OPENSSL_fpu_probe
.align	4
.OPENSSL_fpu_probe:
	fmr	f0,f0
	blr
	.long	0
	.byte	0,12,0x14,0,0,0,0,0
.size	.OPENSSL_fpu_probe,.-.OPENSSL_fpu_probe
.globl	.OPENSSL_ppc64_probe
.align	4
.OPENSSL_ppc64_probe:
@@ -102,8 +110,19 @@ Ladd: lwarx r5,0,r3
.globl	.OPENSSL_rdtsc
.align	4
.OPENSSL_rdtsc:
___
$code.=<<___	if ($flavour =~ /64/);
	mftb	r3
___
$code.=<<___	if ($flavour !~ /64/);
Loop_rdtsc:
	mftbu	r5
	mftb	r3
	mftbu	r4
	cmplw	r4,r5
	bne	Loop_rdtsc
___
$code.=<<___;
	blr
	.long	0
	.byte	0,12,0x14,0,0,0,0,0