summaryrefslogtreecommitdiff
path: root/src/aes
Commit message (Collapse)AuthorAge
* altos/arm: Align data so that gcc 5.4 doesn't do byte-accesses. Add -Wcast-alignKeith Packard2016-12-17
| | | | | | | | | | | | | | | | | | | | | | Gcc 5.4.1 tracks alignment of data through assignments, so that a uint32_t pointer which comes from byte-aligned uint8_t data: extern uint8_t foo[]; uint32_t *q = (void *) foo; Fetches and stores through this pointer are done bytewise. This is slow (meh), but if q references a device register, things to bad very quickly. This patch works around this bug in the compiler by adding __attribute__((aligned(4))) tags to some variables, or changing them from uint8_t to uint32_t. Places doing this will now be caught as I've added -Wcast-align to the compiler flags. That required adding (void *) casts, after the relevant code was checked to make sure the compiler could tell that the addresses were aligned. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up -Wextra warningsKeith Packard2013-12-20
| | | | | | | Unused variables, mismatching signed/unsigned and a few other misc warnings. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Nothing in altos uses AES decryption, so don't compile itKeith Packard2013-12-07
| | | | | | Saves a bit of space where AES is used, and avoids some compiler warnings. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Build test framework for AES codeKeith Packard2013-05-07
| | | | | | Simple CBC-CMAC test with a constant 0 key and constant 0 data for now. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add software AES implementationKeith Packard2012-07-29
This is untested Signed-off-by: Keith Packard <keithp@keithp.com>