$(PERL) x86_64cpuid.pl $(PERLASM_SCHEME) > $@
ia64cpuid.s: ia64cpuid.S
$(CC) $(CFLAGS) -E ia64cpuid.S > $@
-ppccpuid.s: ppccpuid.pl; $(PERL) ppccpuid.pl $(PERLASM_SCHEME) $@
+ppccpuid.s: ppccpuid.pl; $(PERL) ppccpuid.pl $(PERLASM_SCHEME) $@
+alphacpuid.s: alphacpuid.pl
+ $(PERL) $< | $(CC) -E - | tee $@ > /dev/null
testapps:
[ -z "$(THIS)" ] || ( if echo $(SDIRS) | fgrep ' des '; \
--- /dev/null
+#!/usr/bin/env perl
+print <<___;
+.text
+
+.set noat
+
+.globl OPENSSL_cpuid_setup
+.ent OPENSSL_cpuid_setup
+OPENSSL_cpuid_setup:
+ .frame $30,0,$26
+ .prologue 0
+ ret ($26)
+.end OPENSSL_cpuid_setup
+
+.globl OPENSSL_wipe_cpu
+.ent OPENSSL_wipe_cpu
+OPENSSL_wipe_cpu:
+ .frame $30,0,$26
+ .prologue 0
+ clr $1
+ clr $2
+ clr $3
+ clr $4
+ clr $5
+ clr $6
+ clr $7
+ clr $8
+ clr $16
+ clr $17
+ clr $18
+ clr $19
+ clr $20
+ clr $21
+ clr $22
+ clr $23
+ clr $24
+ clr $25
+ clr $27
+ clr $at
+ clr $29
+ fclr $f0
+ fclr $f1
+ fclr $f10
+ fclr $f11
+ fclr $f12
+ fclr $f13
+ fclr $f14
+ fclr $f15
+ fclr $f16
+ fclr $f17
+ fclr $f18
+ fclr $f19
+ fclr $f20
+ fclr $f21
+ fclr $f22
+ fclr $f23
+ fclr $f24
+ fclr $f25
+ fclr $f26
+ fclr $f27
+ fclr $f28
+ fclr $f29
+ fclr $f30
+ mov $sp,$0
+ ret ($26)
+.end OPENSSL_wipe_cpu
+
+.globl OPENSSL_atomic_add
+.ent OPENSSL_atomic_add
+OPENSSL_atomic_add:
+ .frame $30,0,$26
+ .prologue 0
+1: ldl_l $0,($16)
+ addl $0,$17,$1
+ stl_c $1,($16)
+ beq $1,1b
+ addl $0,$17,$0
+ ret ($26)
+.end OPENSSL_atomic_add
+
+.globl OPENSSL_rdtsc
+.ent OPENSSL_rdtsc
+OPENSSL_rdtsc:
+ .frame $30,0,$26
+ .prologue 0
+ rpcc $0
+ ret ($26)
+.end OPENSSL_rdtsc
+
+.globl OPENSSL_cleanse
+.ent OPENSSL_cleanse
+OPENSSL_cleanse:
+ .frame $30,0,$26
+ .prologue 0
+ beq $17,.Ldone
+ and $16,7,$0
+ bic $17,7,$at
+ beq $at,.Little
+ beq $0,.Laligned
+
+.Little:
+ ldq_u $1,0($16)
+ mov $16,$2
+.Lalign:
+ mskbl $1,$16,$1
+ lda $16,1($16)
+ subq $17,1,$17
+ subq $0,1,$0
+ beq $17,.Lout
+ bne $0,.Lalign
+.Lout: stq_u $1,0($2)
+ beq $17,.Ldone
+ bic $17,7,$at
+ mov $17,$0
+ beq $at,.Little
+
+.Laligned:
+ stq $31,0($16)
+ subq $17,8,$17
+ lda $16,8($16)
+ bic $17,7,$at
+ bne $at,.Laligned
+ beq $17,.Ldone
+ mov $17,$0
+ br .Little
+.Ldone: ret ($26)
+.end OPENSSL_cleanse
+___
+++ /dev/null
-.text
-
-.set noat
-
-.globl OPENSSL_cpuid_setup
-.ent OPENSSL_cpuid_setup
-OPENSSL_cpuid_setup:
- .frame $30,0,$26
- .prologue 0
- ret ($26)
-.end OPENSSL_cpuid_setup
-
-.globl OPENSSL_wipe_cpu
-.ent OPENSSL_wipe_cpu
-OPENSSL_wipe_cpu:
- .frame $30,0,$26
- .prologue 0
- clr $1
- clr $2
- clr $3
- clr $4
- clr $5
- clr $6
- clr $7
- clr $8
- clr $16
- clr $17
- clr $18
- clr $19
- clr $20
- clr $21
- clr $22
- clr $23
- clr $24
- clr $25
- clr $27
- clr $at
- clr $29
- fclr $f0
- fclr $f1
- fclr $f10
- fclr $f11
- fclr $f12
- fclr $f13
- fclr $f14
- fclr $f15
- fclr $f16
- fclr $f17
- fclr $f18
- fclr $f19
- fclr $f20
- fclr $f21
- fclr $f22
- fclr $f23
- fclr $f24
- fclr $f25
- fclr $f26
- fclr $f27
- fclr $f28
- fclr $f29
- fclr $f30
- mov $sp,$0
- ret ($26)
-.end OPENSSL_wipe_cpu
-
-.globl OPENSSL_atomic_add
-.ent OPENSSL_atomic_add
-OPENSSL_atomic_add:
- .frame $30,0,$26
- .prologue 0
-1: ldl_l $0,($16)
- addl $0,$17,$1
- stl_c $1,($16)
- beq $1,1b
- addl $0,$17,$0
- ret ($26)
-.end OPENSSL_atomic_add
-
-.globl OPENSSL_rdtsc
-.ent OPENSSL_rdtsc
-OPENSSL_rdtsc:
- .frame $30,0,$26
- .prologue 0
- rpcc $0
- ret ($26)
-.end OPENSSL_rdtsc
-
-.globl OPENSSL_cleanse
-.ent OPENSSL_cleanse
-OPENSSL_cleanse:
- .frame $30,0,$26
- .prologue 0
- beq $17,.Ldone
- and $16,7,$0
- bic $17,7,$at
- beq $at,.Little
- beq $0,.Laligned
-
-.Little:
- ldq_u $1,0($16)
- mov $16,$2
-.Lalign:
- mskbl $1,$16,$1
- lda $16,1($16)
- subq $17,1,$17
- subq $0,1,$0
- beq $17,.Lout
- bne $0,.Lalign
-.Lout: stq_u $1,0($2)
- beq $17,.Ldone
- bic $17,7,$at
- mov $17,$0
- beq $at,.Little
-
-.Laligned:
- stq $31,0($16)
- subq $17,8,$17
- lda $16,8($16)
- bic $17,7,$at
- bne $at,.Laligned
- beq $17,.Ldone
- mov $17,$0
- br .Little
-.Ldone: ret ($26)
-.end OPENSSL_cleanse