aboutsummaryrefslogtreecommitdiffstats
path: root/modules
Commit message (Collapse)AuthorAgeFilesLines
* 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
| | | | | | for spilling/restoring registers. Reorder some instructions for slightly better scheduling across rounds
* 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
| | | | some variables for easier reading.
* 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
| | | | 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
|
* Use an object to prevent the leak of memory or the file descriptor iflloyd2006-08-091-19/+40
| | | | something goes wrong and an exception is thrown.
* Add an exception type specific for MemoryMapping_Allocator, simply to cutlloyd2006-08-091-9/+24
| | | | down on repeated strings a bit.
* Access the global configuration through an object reference insteadlloyd2006-07-012-2/+3
| | | | | of stand-alone functions. Store the configuration in a distinct object, rather than just a map inside the library state.
* Yet more conf.h -> config.h changeslloyd2006-07-013-3/+3
|
* Remove a spurious linebreaklloyd2006-06-251-1/+0
|
* Support named mutexes outside of the global library state.lloyd2006-06-252-12/+6
| | | | | | Alter the AEP engine to use one in favor of a static Mutex pointer. Fix a stupid typo in an exception message.
* The AEP engine was still expecting mul_mod to exist, which was removedlloyd2006-06-251-7/+14
| | | | quite a while ago. Changed to use Modular_Reducer objects.
* Have allocator objects 'know' their own names, rather than keeping themlloyd2006-06-251-0/+1
| | | | around as ancillary strings.
* Inline a number of small objects that are only used in a local contextlloyd2006-06-234-123/+86
| | | | | | | (ie, a single function). This will, unfortunately, break GCC 2.95.x support. Most of the operating systems that had shipped with 2.95.x, like OpenBSD and QNX, have since upgraded. Anyone needing 2.95.x support will have to continue using 1.4.x
* Was missing an include for <algorithm>, needed for using std::sort;lloyd2006-06-231-0/+1
| | | | most compilers didn't mind but gcc 2.95 on Linux/alpha complained.
* Have the amd64 assembler code also be linked as C and use thelloyd2006-06-101-28/+38
| | | | stringify preprocessor operator.