aboutsummaryrefslogtreecommitdiffstats
path: root/modules/sha_x86
Commit message (Collapse)AuthorAgeFilesLines
* Rename sha_x86 module to alg_ia32; there will probably be other algorithmslloyd2006-08-134-308/+0
| | | | going in here (at least eventually, and potentially soon-ish)
* Clean up the macros a little bitlloyd2006-08-131-2/+3
|
* Remove the last vestiges of AT&T syntax that are directly in the codelloyd2006-08-132-4/+6
|
* Reorder instructions in the round functions for (slightly) betterlloyd2006-08-131-13/+13
| | | | instruction scheduling
* Add another macro for LEA, to cover the usage inside the round functionslloyd2006-08-132-3/+4
|
* Reverse the order of arguments to AND() and OR()lloyd2006-08-132-13/+12
|
* Reverse the order of XOR()'s argumentslloyd2006-08-132-18/+19
|
* Switch the destination and source arguments of ADD()lloyd2006-08-132-13/+13
|
* Use a different notation for the rotate instructionslloyd2006-08-132-32/+28
| | | | | | Switch the remaining MOV() macros to ASSIGN() Clean up the macro definitions a little
* Use ADD_IMM everywhere it is applicablelloyd2006-08-131-7/+7
| | | | Use the ASSIGN() macro in a couple of places that I hadn't touched
* Introduce some new macros to improve the readability of the codelloyd2006-08-132-22/+24
|
* Convert the round functions to use the macroslloyd2006-08-132-30/+35
|
* Convert another set of asm instructions to macroslloyd2006-08-132-18/+19
|
* Further macro-izationlloyd2006-08-132-43/+44
|
* Add a loop macro, continue converting the assembly to use the wrapperlloyd2006-08-132-14/+24
| | | | macros.
* Set up some macros to help portability and readabilitylloyd2006-08-133-90/+146
|
* Format cleanuplloyd2006-08-121-14/+14
|
* Remove some trailing whitespacelloyd2006-08-121-10/+7
|
* Reschedule some instructions in attempt to hide latencieslloyd2006-08-121-17/+18
|
* Fully unroll the byte-reader loop, now to reschedulelloyd2006-08-121-6/+12
|
* Finish unrolling the expansion loop, and start on the byte-reading looplloyd2006-08-121-36/+43
|
* Pull a variable directly out of a live register, rather than going outlloyd2006-08-121-4/+4
| | | | to memory for it.
* Rearrange some operations, though instruction scheduling still needs alloyd2006-08-121-19/+16
| | | | lot of work.
* Use different registers in each iteration of the unrolled loop, so we canlloyd2006-08-121-20/+21
| | | | easily rearrange things for better scheduling.
* Unroll the expansion looplloyd2006-08-121-8/+36
|
* Use indexed addressing to pull out elements of W[], rather thanlloyd2006-08-121-30/+36
| | | | incrementing the pointer
* Use LEA inside the round functions, various cleanupslloyd2006-08-121-62/+45
|
* Remove the C implementations of the round functions, no longer usedlloyd2006-08-121-40/+0
|
* Entire SHA-1 compression function now implemented in assembly, just needslloyd2006-08-122-70/+45
| | | | instruction scheduling and code cleanup.
* Implement the second set of SHA-1 functions in assembler; add somelloyd2006-08-122-36/+38
| | | | macros in an attempt to keep the code reasonably clean.
* Implement the first set of rounds of SHA-1 in assemblylloyd2006-08-122-5/+85
|
* Get all of the (callee-saved) registers saved so we have maximum spacelloyd2006-08-121-11/+14
| | | | for performing operations.
* Add preliminary version of an SHA-1 x86 assembly modulelloyd2006-08-123-0/+187