123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371 |
- .machine "any"
- .abiversion 2
- .text
- .globl sha256_block_ppc
- .type sha256_block_ppc,@function
- .align 6
- sha256_block_ppc:
- .localentry sha256_block_ppc,0
- stdu 1,-320(1)
- mflr 0
- sldi 5,5,6
- std 3,144(1)
- std 14,176(1)
- std 15,184(1)
- std 16,192(1)
- std 17,200(1)
- std 18,208(1)
- std 19,216(1)
- std 20,224(1)
- std 21,232(1)
- std 22,240(1)
- std 23,248(1)
- std 24,256(1)
- std 25,264(1)
- std 26,272(1)
- std 27,280(1)
- std 28,288(1)
- std 29,296(1)
- std 30,304(1)
- std 31,312(1)
- std 0,336(1)
- lwz 8,0(3)
- mr 31,4
- lwz 9,4(3)
- lwz 10,8(3)
- lwz 11,12(3)
- lwz 12,16(3)
- lwz 6,20(3)
- lwz 14,24(3)
- lwz 15,28(3)
- bl .LPICmeup
- .LPICedup:
- andi. 0,31,3
- bne .Lunaligned
- .Laligned:
- add 5,31,5
- std 5,128(1)
- std 31,136(1)
- bl .Lsha2_block_private
- b .Ldone
- .align 4
- .Lunaligned:
- subfic 0,31,4096
- andi. 0,0,4032
- beq .Lcross_page
- cmpld 5,0
- ble .Laligned
- subfc 5,0,5
- add 0,31,0
- std 5,120(1)
- std 0,128(1)
- std 31,136(1)
- bl .Lsha2_block_private
- ld 5,120(1)
- .Lcross_page:
- li 0,16
- mtctr 0
- addi 20,1,48
- .Lmemcpy:
- lbz 16,0(31)
- lbz 17,1(31)
- lbz 18,2(31)
- lbz 19,3(31)
- addi 31,31,4
- stb 16,0(20)
- stb 17,1(20)
- stb 18,2(20)
- stb 19,3(20)
- addi 20,20,4
- bdnz .Lmemcpy
- std 31,112(1)
- addi 0,1,112
- addi 31,1,48
- std 5,120(1)
- std 0,128(1)
- std 31,136(1)
- bl .Lsha2_block_private
- ld 31,112(1)
- ld 5,120(1)
- addic. 5,5,-64
- bne .Lunaligned
- .Ldone:
- ld 0,336(1)
- ld 14,176(1)
- ld 15,184(1)
- ld 16,192(1)
- ld 17,200(1)
- ld 18,208(1)
- ld 19,216(1)
- ld 20,224(1)
- ld 21,232(1)
- ld 22,240(1)
- ld 23,248(1)
- ld 24,256(1)
- ld 25,264(1)
- ld 26,272(1)
- ld 27,280(1)
- ld 28,288(1)
- ld 29,296(1)
- ld 30,304(1)
- ld 31,312(1)
- mtlr 0
- addi 1,1,320
- blr
- .long 0
- .byte 0,12,4,1,0x80,18,3,0
- .long 0
- .align 4
- .Lsha2_block_private:
- lwz 0,0(7)
- lwz 3,0(31)
- rotlwi 16,3,8
- rlwimi 16,3,24,0,7
- rlwimi 16,3,24,16,23
- rotrwi 3,12,6
- rotrwi 4,12,11
- and 5,6,12
- xor 3,3,4
- add 15,15,0
- andc 0,14,12
- rotrwi 4,4,14
- or 5,5,0
- add 15,15,16
- xor 3,3,4
- add 15,15,5
- add 15,15,3
- rotrwi 3,8,2
- rotrwi 4,8,13
- and 5,8,9
- and 0,8,10
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,9,10
- xor 3,3,4
- add 11,11,15
- xor 5,5,0
- lwz 0,4(7)
- add 15,15,3
- add 15,15,5
- lwz 3,4(31)
- rotlwi 17,3,8
- rlwimi 17,3,24,0,7
- rlwimi 17,3,24,16,23
- rotrwi 3,11,6
- rotrwi 4,11,11
- and 5,12,11
- xor 3,3,4
- add 14,14,0
- andc 0,6,11
- rotrwi 4,4,14
- or 5,5,0
- add 14,14,17
- xor 3,3,4
- add 14,14,5
- add 14,14,3
- rotrwi 3,15,2
- rotrwi 4,15,13
- and 5,15,8
- and 0,15,9
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,8,9
- xor 3,3,4
- add 10,10,14
- xor 5,5,0
- lwz 0,8(7)
- add 14,14,3
- add 14,14,5
- lwz 3,8(31)
- rotlwi 18,3,8
- rlwimi 18,3,24,0,7
- rlwimi 18,3,24,16,23
- rotrwi 3,10,6
- rotrwi 4,10,11
- and 5,11,10
- xor 3,3,4
- add 6,6,0
- andc 0,12,10
- rotrwi 4,4,14
- or 5,5,0
- add 6,6,18
- xor 3,3,4
- add 6,6,5
- add 6,6,3
- rotrwi 3,14,2
- rotrwi 4,14,13
- and 5,14,15
- and 0,14,8
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,15,8
- xor 3,3,4
- add 9,9,6
- xor 5,5,0
- lwz 0,12(7)
- add 6,6,3
- add 6,6,5
- lwz 3,12(31)
- rotlwi 19,3,8
- rlwimi 19,3,24,0,7
- rlwimi 19,3,24,16,23
- rotrwi 3,9,6
- rotrwi 4,9,11
- and 5,10,9
- xor 3,3,4
- add 12,12,0
- andc 0,11,9
- rotrwi 4,4,14
- or 5,5,0
- add 12,12,19
- xor 3,3,4
- add 12,12,5
- add 12,12,3
- rotrwi 3,6,2
- rotrwi 4,6,13
- and 5,6,14
- and 0,6,15
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,14,15
- xor 3,3,4
- add 8,8,12
- xor 5,5,0
- lwz 0,16(7)
- add 12,12,3
- add 12,12,5
- lwz 3,16(31)
- rotlwi 20,3,8
- rlwimi 20,3,24,0,7
- rlwimi 20,3,24,16,23
- rotrwi 3,8,6
- rotrwi 4,8,11
- and 5,9,8
- xor 3,3,4
- add 11,11,0
- andc 0,10,8
- rotrwi 4,4,14
- or 5,5,0
- add 11,11,20
- xor 3,3,4
- add 11,11,5
- add 11,11,3
- rotrwi 3,12,2
- rotrwi 4,12,13
- and 5,12,6
- and 0,12,14
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,6,14
- xor 3,3,4
- add 15,15,11
- xor 5,5,0
- lwz 0,20(7)
- add 11,11,3
- add 11,11,5
- lwz 3,20(31)
- rotlwi 21,3,8
- rlwimi 21,3,24,0,7
- rlwimi 21,3,24,16,23
- rotrwi 3,15,6
- rotrwi 4,15,11
- and 5,8,15
- xor 3,3,4
- add 10,10,0
- andc 0,9,15
- rotrwi 4,4,14
- or 5,5,0
- add 10,10,21
- xor 3,3,4
- add 10,10,5
- add 10,10,3
- rotrwi 3,11,2
- rotrwi 4,11,13
- and 5,11,12
- and 0,11,6
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,12,6
- xor 3,3,4
- add 14,14,10
- xor 5,5,0
- lwz 0,24(7)
- add 10,10,3
- add 10,10,5
- lwz 3,24(31)
- rotlwi 22,3,8
- rlwimi 22,3,24,0,7
- rlwimi 22,3,24,16,23
- rotrwi 3,14,6
- rotrwi 4,14,11
- and 5,15,14
- xor 3,3,4
- add 9,9,0
- andc 0,8,14
- rotrwi 4,4,14
- or 5,5,0
- add 9,9,22
- xor 3,3,4
- add 9,9,5
- add 9,9,3
- rotrwi 3,10,2
- rotrwi 4,10,13
- and 5,10,11
- and 0,10,12
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,11,12
- xor 3,3,4
- add 6,6,9
- xor 5,5,0
- lwz 0,28(7)
- add 9,9,3
- add 9,9,5
- lwz 3,28(31)
- rotlwi 23,3,8
- rlwimi 23,3,24,0,7
- rlwimi 23,3,24,16,23
- rotrwi 3,6,6
- rotrwi 4,6,11
- and 5,14,6
- xor 3,3,4
- add 8,8,0
- andc 0,15,6
- rotrwi 4,4,14
- or 5,5,0
- add 8,8,23
- xor 3,3,4
- add 8,8,5
- add 8,8,3
- rotrwi 3,9,2
- rotrwi 4,9,13
- and 5,9,10
- and 0,9,11
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,10,11
- xor 3,3,4
- add 12,12,8
- xor 5,5,0
- lwz 0,32(7)
- add 8,8,3
- add 8,8,5
- lwz 3,32(31)
- rotlwi 24,3,8
- rlwimi 24,3,24,0,7
- rlwimi 24,3,24,16,23
- rotrwi 3,12,6
- rotrwi 4,12,11
- and 5,6,12
- xor 3,3,4
- add 15,15,0
- andc 0,14,12
- rotrwi 4,4,14
- or 5,5,0
- add 15,15,24
- xor 3,3,4
- add 15,15,5
- add 15,15,3
- rotrwi 3,8,2
- rotrwi 4,8,13
- and 5,8,9
- and 0,8,10
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,9,10
- xor 3,3,4
- add 11,11,15
- xor 5,5,0
- lwz 0,36(7)
- add 15,15,3
- add 15,15,5
- lwz 3,36(31)
- rotlwi 25,3,8
- rlwimi 25,3,24,0,7
- rlwimi 25,3,24,16,23
- rotrwi 3,11,6
- rotrwi 4,11,11
- and 5,12,11
- xor 3,3,4
- add 14,14,0
- andc 0,6,11
- rotrwi 4,4,14
- or 5,5,0
- add 14,14,25
- xor 3,3,4
- add 14,14,5
- add 14,14,3
- rotrwi 3,15,2
- rotrwi 4,15,13
- and 5,15,8
- and 0,15,9
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,8,9
- xor 3,3,4
- add 10,10,14
- xor 5,5,0
- lwz 0,40(7)
- add 14,14,3
- add 14,14,5
- lwz 3,40(31)
- rotlwi 26,3,8
- rlwimi 26,3,24,0,7
- rlwimi 26,3,24,16,23
- rotrwi 3,10,6
- rotrwi 4,10,11
- and 5,11,10
- xor 3,3,4
- add 6,6,0
- andc 0,12,10
- rotrwi 4,4,14
- or 5,5,0
- add 6,6,26
- xor 3,3,4
- add 6,6,5
- add 6,6,3
- rotrwi 3,14,2
- rotrwi 4,14,13
- and 5,14,15
- and 0,14,8
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,15,8
- xor 3,3,4
- add 9,9,6
- xor 5,5,0
- lwz 0,44(7)
- add 6,6,3
- add 6,6,5
- lwz 3,44(31)
- rotlwi 27,3,8
- rlwimi 27,3,24,0,7
- rlwimi 27,3,24,16,23
- rotrwi 3,9,6
- rotrwi 4,9,11
- and 5,10,9
- xor 3,3,4
- add 12,12,0
- andc 0,11,9
- rotrwi 4,4,14
- or 5,5,0
- add 12,12,27
- xor 3,3,4
- add 12,12,5
- add 12,12,3
- rotrwi 3,6,2
- rotrwi 4,6,13
- and 5,6,14
- and 0,6,15
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,14,15
- xor 3,3,4
- add 8,8,12
- xor 5,5,0
- lwz 0,48(7)
- add 12,12,3
- add 12,12,5
- lwz 3,48(31)
- rotlwi 28,3,8
- rlwimi 28,3,24,0,7
- rlwimi 28,3,24,16,23
- rotrwi 3,8,6
- rotrwi 4,8,11
- and 5,9,8
- xor 3,3,4
- add 11,11,0
- andc 0,10,8
- rotrwi 4,4,14
- or 5,5,0
- add 11,11,28
- xor 3,3,4
- add 11,11,5
- add 11,11,3
- rotrwi 3,12,2
- rotrwi 4,12,13
- and 5,12,6
- and 0,12,14
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,6,14
- xor 3,3,4
- add 15,15,11
- xor 5,5,0
- lwz 0,52(7)
- add 11,11,3
- add 11,11,5
- lwz 3,52(31)
- rotlwi 29,3,8
- rlwimi 29,3,24,0,7
- rlwimi 29,3,24,16,23
- rotrwi 3,15,6
- rotrwi 4,15,11
- and 5,8,15
- xor 3,3,4
- add 10,10,0
- andc 0,9,15
- rotrwi 4,4,14
- or 5,5,0
- add 10,10,29
- xor 3,3,4
- add 10,10,5
- add 10,10,3
- rotrwi 3,11,2
- rotrwi 4,11,13
- and 5,11,12
- and 0,11,6
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,12,6
- xor 3,3,4
- add 14,14,10
- xor 5,5,0
- lwz 0,56(7)
- add 10,10,3
- add 10,10,5
- lwz 3,56(31)
- rotlwi 30,3,8
- rlwimi 30,3,24,0,7
- rlwimi 30,3,24,16,23
- rotrwi 3,14,6
- rotrwi 4,14,11
- and 5,15,14
- xor 3,3,4
- add 9,9,0
- andc 0,8,14
- rotrwi 4,4,14
- or 5,5,0
- add 9,9,30
- xor 3,3,4
- add 9,9,5
- add 9,9,3
- rotrwi 3,10,2
- rotrwi 4,10,13
- and 5,10,11
- and 0,10,12
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,11,12
- xor 3,3,4
- add 6,6,9
- xor 5,5,0
- lwz 0,60(7)
- add 9,9,3
- add 9,9,5
- lwz 3,60(31)
- rotlwi 31,3,8
- rlwimi 31,3,24,0,7
- rlwimi 31,3,24,16,23
- rotrwi 3,6,6
- rotrwi 4,6,11
- and 5,14,6
- xor 3,3,4
- add 8,8,0
- andc 0,15,6
- rotrwi 4,4,14
- or 5,5,0
- add 8,8,31
- xor 3,3,4
- add 8,8,5
- add 8,8,3
- rotrwi 3,9,2
- rotrwi 4,9,13
- and 5,9,10
- and 0,9,11
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,10,11
- xor 3,3,4
- add 12,12,8
- xor 5,5,0
- add 8,8,3
- add 8,8,5
- li 5,3
- mtctr 5
- .align 4
- .Lrounds:
- addi 7,7,64
- rotrwi 3,17,7
- rotrwi 4,17,18
- rotrwi 5,30,17
- rotrwi 0,30,19
- xor 3,3,4
- srwi 4,17,3
- xor 5,5,0
- srwi 0,30,10
- add 16,16,25
- xor 3,3,4
- xor 5,5,0
- lwz 0,0(7)
- add 16,16,3
- add 16,16,5
- rotrwi 3,12,6
- rotrwi 4,12,11
- and 5,6,12
- xor 3,3,4
- add 15,15,0
- andc 0,14,12
- rotrwi 4,4,14
- or 5,5,0
- add 15,15,16
- xor 3,3,4
- add 15,15,5
- add 15,15,3
- rotrwi 3,8,2
- rotrwi 4,8,13
- and 5,8,9
- and 0,8,10
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,9,10
- xor 3,3,4
- add 11,11,15
- xor 5,5,0
- add 15,15,3
- add 15,15,5
- rotrwi 3,18,7
- rotrwi 4,18,18
- rotrwi 5,31,17
- rotrwi 0,31,19
- xor 3,3,4
- srwi 4,18,3
- xor 5,5,0
- srwi 0,31,10
- add 17,17,26
- xor 3,3,4
- xor 5,5,0
- lwz 0,4(7)
- add 17,17,3
- add 17,17,5
- rotrwi 3,11,6
- rotrwi 4,11,11
- and 5,12,11
- xor 3,3,4
- add 14,14,0
- andc 0,6,11
- rotrwi 4,4,14
- or 5,5,0
- add 14,14,17
- xor 3,3,4
- add 14,14,5
- add 14,14,3
- rotrwi 3,15,2
- rotrwi 4,15,13
- and 5,15,8
- and 0,15,9
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,8,9
- xor 3,3,4
- add 10,10,14
- xor 5,5,0
- add 14,14,3
- add 14,14,5
- rotrwi 3,19,7
- rotrwi 4,19,18
- rotrwi 5,16,17
- rotrwi 0,16,19
- xor 3,3,4
- srwi 4,19,3
- xor 5,5,0
- srwi 0,16,10
- add 18,18,27
- xor 3,3,4
- xor 5,5,0
- lwz 0,8(7)
- add 18,18,3
- add 18,18,5
- rotrwi 3,10,6
- rotrwi 4,10,11
- and 5,11,10
- xor 3,3,4
- add 6,6,0
- andc 0,12,10
- rotrwi 4,4,14
- or 5,5,0
- add 6,6,18
- xor 3,3,4
- add 6,6,5
- add 6,6,3
- rotrwi 3,14,2
- rotrwi 4,14,13
- and 5,14,15
- and 0,14,8
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,15,8
- xor 3,3,4
- add 9,9,6
- xor 5,5,0
- add 6,6,3
- add 6,6,5
- rotrwi 3,20,7
- rotrwi 4,20,18
- rotrwi 5,17,17
- rotrwi 0,17,19
- xor 3,3,4
- srwi 4,20,3
- xor 5,5,0
- srwi 0,17,10
- add 19,19,28
- xor 3,3,4
- xor 5,5,0
- lwz 0,12(7)
- add 19,19,3
- add 19,19,5
- rotrwi 3,9,6
- rotrwi 4,9,11
- and 5,10,9
- xor 3,3,4
- add 12,12,0
- andc 0,11,9
- rotrwi 4,4,14
- or 5,5,0
- add 12,12,19
- xor 3,3,4
- add 12,12,5
- add 12,12,3
- rotrwi 3,6,2
- rotrwi 4,6,13
- and 5,6,14
- and 0,6,15
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,14,15
- xor 3,3,4
- add 8,8,12
- xor 5,5,0
- add 12,12,3
- add 12,12,5
- rotrwi 3,21,7
- rotrwi 4,21,18
- rotrwi 5,18,17
- rotrwi 0,18,19
- xor 3,3,4
- srwi 4,21,3
- xor 5,5,0
- srwi 0,18,10
- add 20,20,29
- xor 3,3,4
- xor 5,5,0
- lwz 0,16(7)
- add 20,20,3
- add 20,20,5
- rotrwi 3,8,6
- rotrwi 4,8,11
- and 5,9,8
- xor 3,3,4
- add 11,11,0
- andc 0,10,8
- rotrwi 4,4,14
- or 5,5,0
- add 11,11,20
- xor 3,3,4
- add 11,11,5
- add 11,11,3
- rotrwi 3,12,2
- rotrwi 4,12,13
- and 5,12,6
- and 0,12,14
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,6,14
- xor 3,3,4
- add 15,15,11
- xor 5,5,0
- add 11,11,3
- add 11,11,5
- rotrwi 3,22,7
- rotrwi 4,22,18
- rotrwi 5,19,17
- rotrwi 0,19,19
- xor 3,3,4
- srwi 4,22,3
- xor 5,5,0
- srwi 0,19,10
- add 21,21,30
- xor 3,3,4
- xor 5,5,0
- lwz 0,20(7)
- add 21,21,3
- add 21,21,5
- rotrwi 3,15,6
- rotrwi 4,15,11
- and 5,8,15
- xor 3,3,4
- add 10,10,0
- andc 0,9,15
- rotrwi 4,4,14
- or 5,5,0
- add 10,10,21
- xor 3,3,4
- add 10,10,5
- add 10,10,3
- rotrwi 3,11,2
- rotrwi 4,11,13
- and 5,11,12
- and 0,11,6
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,12,6
- xor 3,3,4
- add 14,14,10
- xor 5,5,0
- add 10,10,3
- add 10,10,5
- rotrwi 3,23,7
- rotrwi 4,23,18
- rotrwi 5,20,17
- rotrwi 0,20,19
- xor 3,3,4
- srwi 4,23,3
- xor 5,5,0
- srwi 0,20,10
- add 22,22,31
- xor 3,3,4
- xor 5,5,0
- lwz 0,24(7)
- add 22,22,3
- add 22,22,5
- rotrwi 3,14,6
- rotrwi 4,14,11
- and 5,15,14
- xor 3,3,4
- add 9,9,0
- andc 0,8,14
- rotrwi 4,4,14
- or 5,5,0
- add 9,9,22
- xor 3,3,4
- add 9,9,5
- add 9,9,3
- rotrwi 3,10,2
- rotrwi 4,10,13
- and 5,10,11
- and 0,10,12
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,11,12
- xor 3,3,4
- add 6,6,9
- xor 5,5,0
- add 9,9,3
- add 9,9,5
- rotrwi 3,24,7
- rotrwi 4,24,18
- rotrwi 5,21,17
- rotrwi 0,21,19
- xor 3,3,4
- srwi 4,24,3
- xor 5,5,0
- srwi 0,21,10
- add 23,23,16
- xor 3,3,4
- xor 5,5,0
- lwz 0,28(7)
- add 23,23,3
- add 23,23,5
- rotrwi 3,6,6
- rotrwi 4,6,11
- and 5,14,6
- xor 3,3,4
- add 8,8,0
- andc 0,15,6
- rotrwi 4,4,14
- or 5,5,0
- add 8,8,23
- xor 3,3,4
- add 8,8,5
- add 8,8,3
- rotrwi 3,9,2
- rotrwi 4,9,13
- and 5,9,10
- and 0,9,11
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,10,11
- xor 3,3,4
- add 12,12,8
- xor 5,5,0
- add 8,8,3
- add 8,8,5
- rotrwi 3,25,7
- rotrwi 4,25,18
- rotrwi 5,22,17
- rotrwi 0,22,19
- xor 3,3,4
- srwi 4,25,3
- xor 5,5,0
- srwi 0,22,10
- add 24,24,17
- xor 3,3,4
- xor 5,5,0
- lwz 0,32(7)
- add 24,24,3
- add 24,24,5
- rotrwi 3,12,6
- rotrwi 4,12,11
- and 5,6,12
- xor 3,3,4
- add 15,15,0
- andc 0,14,12
- rotrwi 4,4,14
- or 5,5,0
- add 15,15,24
- xor 3,3,4
- add 15,15,5
- add 15,15,3
- rotrwi 3,8,2
- rotrwi 4,8,13
- and 5,8,9
- and 0,8,10
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,9,10
- xor 3,3,4
- add 11,11,15
- xor 5,5,0
- add 15,15,3
- add 15,15,5
- rotrwi 3,26,7
- rotrwi 4,26,18
- rotrwi 5,23,17
- rotrwi 0,23,19
- xor 3,3,4
- srwi 4,26,3
- xor 5,5,0
- srwi 0,23,10
- add 25,25,18
- xor 3,3,4
- xor 5,5,0
- lwz 0,36(7)
- add 25,25,3
- add 25,25,5
- rotrwi 3,11,6
- rotrwi 4,11,11
- and 5,12,11
- xor 3,3,4
- add 14,14,0
- andc 0,6,11
- rotrwi 4,4,14
- or 5,5,0
- add 14,14,25
- xor 3,3,4
- add 14,14,5
- add 14,14,3
- rotrwi 3,15,2
- rotrwi 4,15,13
- and 5,15,8
- and 0,15,9
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,8,9
- xor 3,3,4
- add 10,10,14
- xor 5,5,0
- add 14,14,3
- add 14,14,5
- rotrwi 3,27,7
- rotrwi 4,27,18
- rotrwi 5,24,17
- rotrwi 0,24,19
- xor 3,3,4
- srwi 4,27,3
- xor 5,5,0
- srwi 0,24,10
- add 26,26,19
- xor 3,3,4
- xor 5,5,0
- lwz 0,40(7)
- add 26,26,3
- add 26,26,5
- rotrwi 3,10,6
- rotrwi 4,10,11
- and 5,11,10
- xor 3,3,4
- add 6,6,0
- andc 0,12,10
- rotrwi 4,4,14
- or 5,5,0
- add 6,6,26
- xor 3,3,4
- add 6,6,5
- add 6,6,3
- rotrwi 3,14,2
- rotrwi 4,14,13
- and 5,14,15
- and 0,14,8
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,15,8
- xor 3,3,4
- add 9,9,6
- xor 5,5,0
- add 6,6,3
- add 6,6,5
- rotrwi 3,28,7
- rotrwi 4,28,18
- rotrwi 5,25,17
- rotrwi 0,25,19
- xor 3,3,4
- srwi 4,28,3
- xor 5,5,0
- srwi 0,25,10
- add 27,27,20
- xor 3,3,4
- xor 5,5,0
- lwz 0,44(7)
- add 27,27,3
- add 27,27,5
- rotrwi 3,9,6
- rotrwi 4,9,11
- and 5,10,9
- xor 3,3,4
- add 12,12,0
- andc 0,11,9
- rotrwi 4,4,14
- or 5,5,0
- add 12,12,27
- xor 3,3,4
- add 12,12,5
- add 12,12,3
- rotrwi 3,6,2
- rotrwi 4,6,13
- and 5,6,14
- and 0,6,15
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,14,15
- xor 3,3,4
- add 8,8,12
- xor 5,5,0
- add 12,12,3
- add 12,12,5
- rotrwi 3,29,7
- rotrwi 4,29,18
- rotrwi 5,26,17
- rotrwi 0,26,19
- xor 3,3,4
- srwi 4,29,3
- xor 5,5,0
- srwi 0,26,10
- add 28,28,21
- xor 3,3,4
- xor 5,5,0
- lwz 0,48(7)
- add 28,28,3
- add 28,28,5
- rotrwi 3,8,6
- rotrwi 4,8,11
- and 5,9,8
- xor 3,3,4
- add 11,11,0
- andc 0,10,8
- rotrwi 4,4,14
- or 5,5,0
- add 11,11,28
- xor 3,3,4
- add 11,11,5
- add 11,11,3
- rotrwi 3,12,2
- rotrwi 4,12,13
- and 5,12,6
- and 0,12,14
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,6,14
- xor 3,3,4
- add 15,15,11
- xor 5,5,0
- add 11,11,3
- add 11,11,5
- rotrwi 3,30,7
- rotrwi 4,30,18
- rotrwi 5,27,17
- rotrwi 0,27,19
- xor 3,3,4
- srwi 4,30,3
- xor 5,5,0
- srwi 0,27,10
- add 29,29,22
- xor 3,3,4
- xor 5,5,0
- lwz 0,52(7)
- add 29,29,3
- add 29,29,5
- rotrwi 3,15,6
- rotrwi 4,15,11
- and 5,8,15
- xor 3,3,4
- add 10,10,0
- andc 0,9,15
- rotrwi 4,4,14
- or 5,5,0
- add 10,10,29
- xor 3,3,4
- add 10,10,5
- add 10,10,3
- rotrwi 3,11,2
- rotrwi 4,11,13
- and 5,11,12
- and 0,11,6
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,12,6
- xor 3,3,4
- add 14,14,10
- xor 5,5,0
- add 10,10,3
- add 10,10,5
- rotrwi 3,31,7
- rotrwi 4,31,18
- rotrwi 5,28,17
- rotrwi 0,28,19
- xor 3,3,4
- srwi 4,31,3
- xor 5,5,0
- srwi 0,28,10
- add 30,30,23
- xor 3,3,4
- xor 5,5,0
- lwz 0,56(7)
- add 30,30,3
- add 30,30,5
- rotrwi 3,14,6
- rotrwi 4,14,11
- and 5,15,14
- xor 3,3,4
- add 9,9,0
- andc 0,8,14
- rotrwi 4,4,14
- or 5,5,0
- add 9,9,30
- xor 3,3,4
- add 9,9,5
- add 9,9,3
- rotrwi 3,10,2
- rotrwi 4,10,13
- and 5,10,11
- and 0,10,12
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,11,12
- xor 3,3,4
- add 6,6,9
- xor 5,5,0
- add 9,9,3
- add 9,9,5
- rotrwi 3,16,7
- rotrwi 4,16,18
- rotrwi 5,29,17
- rotrwi 0,29,19
- xor 3,3,4
- srwi 4,16,3
- xor 5,5,0
- srwi 0,29,10
- add 31,31,24
- xor 3,3,4
- xor 5,5,0
- lwz 0,60(7)
- add 31,31,3
- add 31,31,5
- rotrwi 3,6,6
- rotrwi 4,6,11
- and 5,14,6
- xor 3,3,4
- add 8,8,0
- andc 0,15,6
- rotrwi 4,4,14
- or 5,5,0
- add 8,8,31
- xor 3,3,4
- add 8,8,5
- add 8,8,3
- rotrwi 3,9,2
- rotrwi 4,9,13
- and 5,9,10
- and 0,9,11
- xor 3,3,4
- rotrwi 4,4,9
- xor 5,5,0
- and 0,10,11
- xor 3,3,4
- add 12,12,8
- xor 5,5,0
- add 8,8,3
- add 8,8,5
- bdnz .Lrounds
- ld 3,144(1)
- ld 31,136(1)
- ld 5,128(1)
- subi 7,7,192
- lwz 16,0(3)
- lwz 17,4(3)
- lwz 18,8(3)
- lwz 19,12(3)
- lwz 20,16(3)
- lwz 21,20(3)
- lwz 22,24(3)
- addi 31,31,64
- lwz 23,28(3)
- add 8,8,16
- add 9,9,17
- std 31,136(1)
- add 10,10,18
- stw 8,0(3)
- add 11,11,19
- stw 9,4(3)
- add 12,12,20
- stw 10,8(3)
- add 6,6,21
- stw 11,12(3)
- add 14,14,22
- stw 12,16(3)
- add 15,15,23
- stw 6,20(3)
- stw 14,24(3)
- cmpld 31,5
- stw 15,28(3)
- bne .Lsha2_block_private
- blr
- .long 0
- .byte 0,12,0x14,0,0,0,0,0
- .size sha256_block_ppc,.-sha256_block_ppc
- .align 6
- .LPICmeup:
- mflr 0
- bcl 20,31,$+4
- mflr 7
- addi 7,7,56
- mtlr 0
- blr
- .long 0
- .byte 0,12,0x14,0,0,0,0,0
- .space 28
- .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
- .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
- .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
- .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
- .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
- .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
- .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
- .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
- .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
- .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
- .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
- .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070
- .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
- .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
- .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
- .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
|