aboutsummaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* Load the message words we need in the round before. By going out to thelloyd2006-08-131-54/+133
* Introduce a MSG() macro which returns the desired message wordlloyd2006-08-131-9/+13
* Use LEA with the magic constant and A, rather than the magic and thelloyd2006-08-131-9/+9
* Make the temporary implicit, since we always use ESP inside the roundlloyd2006-08-131-47/+49
* Add a (working, optimized) x86 version of MD4lloyd2006-08-133-2/+182
* Add the memory word and the magic constant using LEA, rather than thelloyd2006-08-131-24/+24
* Forgot the II() macro in the last checkinlloyd2006-08-131-1/+2
* Use the spare register to load the message word, which will potentiallylloyd2006-08-131-3/+7
* Make the temporary implicit, since we were always passing the same registerlloyd2006-08-131-106/+108
* Cleanups, and move the initial memory access to the beginning of eachlloyd2006-08-132-52/+77
* Respect the --seconds command line argument with --bench-algolloyd2006-08-132-4/+4
* Add an x86 assembly MD5 implementation; works, but needs optimizationlloyd2006-08-133-0/+176
* Add a macro for the not instructionlloyd2006-08-131-0/+1
* Minor formatting changes, reorder one instructionlloyd2006-08-131-3/+1
* Add checks for MD4, MD5, and SHA-1 for zero-length inputslloyd2006-08-131-0/+3
* Clear the W buffer inside the SHA_160::clear() functionslloyd2006-08-132-0/+2
* Remove a block of disabled code that was just for debug purposeslloyd2006-08-131-8/+0
* Clean up the macros, add comment headers, add a couple of helper macroslloyd2006-08-132-28/+63
* Drop the AES asm code for nowlloyd2006-08-133-192/+0
* Update sha1core.S to match the macro updates in the last checkin. Renamelloyd2006-08-131-63/+63
* A few macro fixeslloyd2006-08-131-7/+10
* Add stub versions of AES assemblerlloyd2006-08-133-0/+193
* Rename sha_x86 module to alg_ia32; there will probably be other algorithmslloyd2006-08-134-0/+0
* Merge the AES TD and TE arrays, so assembly versions can used indexedlloyd2006-08-133-190/+190
* Clean up the macros a little bitlloyd2006-08-131-2/+3
* Throw Invalid_Key_Length rather than Invalid_Argument in AES constructorlloyd2006-08-131-2/+1
* 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
* 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
* Use ADD_IMM everywhere it is applicablelloyd2006-08-131-7/+7
* 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
* 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
* Rearrange some operations, though instruction scheduling still needs alloyd2006-08-121-19/+16
* Use different registers in each iteration of the unrolled loop, so we canlloyd2006-08-121-20/+21
* Unroll the expansion looplloyd2006-08-121-8/+36
* Use indexed addressing to pull out elements of W[], rather thanlloyd2006-08-121-30/+36