Page MenuHomeFreeBSD

Refactor skein_block_asm.s to assemble with LLVM integrated assembler
Needs ReviewPublic

Authored by gldisater_gmail.com on Jan 5 2019, 8:28 PM.

Details

Reviewers
jmg
Summary

The LLVM integrated assembler doesn't support the extensive macro system that GNU as does. To implement the code without the heavy macros I wrote a C program to use C's macros to unroll all the code and printf each instruction to create interim files that were combined to make skein_block_asm.S that LLVM would compile. As looping would require the assembler to have the macro support it lacks all the loop code was removed. As the SKEIN_DEBUG code wasn't in use by FreeBSD I also removed it.

Test Plan

Tested with libmd's make test target

Diff Detail

Repository
rS FreeBSD src repository
Lint
Lint Skipped
Unit
Unit Tests Skipped