Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(561)

Side by Side Diff: openssl/crypto/ppccpuid.pl

Issue 9254031: Upgrade chrome's OpenSSL to same version Android ships with. (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/openssl/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « openssl/crypto/pkcs7/pkcs7err.c ('k') | openssl/crypto/pqueue/Makefile » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #!/usr/bin/env perl
2
3 $flavour = shift;
4
5 $0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1;
6 ( $xlate="${dir}ppc-xlate.pl" and -f $xlate ) or
7 ( $xlate="${dir}perlasm/ppc-xlate.pl" and -f $xlate) or
8 die "can't locate ppc-xlate.pl";
9
10 open STDOUT,"| $^X $xlate $flavour ".shift || die "can't call $xlate: $!";
11
12 if ($flavour=~/64/) {
13 $CMPLI="cmpldi";
14 $SHRLI="srdi";
15 $SIGNX="extsw";
16 } else {
17 $CMPLI="cmplwi";
18 $SHRLI="srwi";
19 $SIGNX="mr";
20 }
21
22 $code=<<___;
23 .machine "any"
24 .text
25
26 .globl .OPENSSL_cpuid_setup
27 .align 4
28 .OPENSSL_cpuid_setup:
29 blr
30
31 .globl .OPENSSL_wipe_cpu
32 .align 4
33 .OPENSSL_wipe_cpu:
34 xor r0,r0,r0
35 mr r3,r1
36 xor r4,r4,r4
37 xor r5,r5,r5
38 xor r6,r6,r6
39 xor r7,r7,r7
40 xor r8,r8,r8
41 xor r9,r9,r9
42 xor r10,r10,r10
43 xor r11,r11,r11
44 xor r12,r12,r12
45 blr
46
47 .globl .OPENSSL_atomic_add
48 .align 4
49 .OPENSSL_atomic_add:
50 Loop: lwarx r5,0,r3
51 add r0,r4,r5
52 stwcx. r0,0,r3
53 bne- Loop
54 $SIGNX r3,r0
55 blr
56
57 .globl .OPENSSL_rdtsc
58 .align 4
59 .OPENSSL_rdtsc:
60 mftb r3
61 mftbu r4
62 blr
63
64 .globl .OPENSSL_cleanse
65 .align 4
66 .OPENSSL_cleanse:
67 $CMPLI r4,7
68 li r0,0
69 bge Lot
70 $CMPLI r4,0
71 beqlr-
72 Little: mtctr r4
73 stb r0,0(r3)
74 addi r3,r3,1
75 bdnz- \$-8
76 blr
77 Lot: andi. r5,r3,3
78 beq Laligned
79 stb r0,0(r3)
80 subi r4,r4,1
81 addi r3,r3,1
82 b Lot
83 Laligned:
84 $SHRLI r5,r4,2
85 mtctr r5
86 stw r0,0(r3)
87 addi r3,r3,4
88 bdnz- \$-8
89 andi. r4,r4,3
90 bne Little
91 blr
92 ___
93
94 $code =~ s/\`([^\`]*)\`/eval $1/gem;
95 print $code;
96 close STDOUT;
OLDNEW
« no previous file with comments | « openssl/crypto/pkcs7/pkcs7err.c ('k') | openssl/crypto/pqueue/Makefile » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698