Fix compile errors on ppc64-be#6
Fix compile errors on ppc64-be#6noloader wants to merge 11 commits intoPPC64:masterfrom noloader:master
Conversation
Compiling with IBM XL C/C++ needs additional CFLAGS. The makefile should honor a user's choice of flags. ALL_CFLAGS supplies the project's C compiler options, and combines them with the user's CFLAGS. Also see GNU Coding Standards, Section 7.2.3, Variables for Specifying Commands (https://www.gnu.org/prep/standards/standards.html#Command-Variables)
The C and C++ standard reserves leading underscores in identifiers for library code. User code should not use them
|
@gut, @brunoalr, @lbianc and @leitao Here is the result of testing on GCC119, which is ppc64-be. I believe the changes tested good except for the missing Maybe your test script can check for the availability of the command |
This reverts commit 0e3ef15. Some other changes cross-pollinated into the commit.
|
Sorry to wander off-topic here. We started a book on POWER8 in-core crypto programming at POWER8-crypto... I'd like you guys to contribute to it. You folks are a part of a small group who has actually programmed this stuff. Contribute by writing content or technical editing. I cited sha2-le in the nominal references. I would enjoy adding you as an author or a contributor (see |
|
I added a section to the book on integrating with The signature of the function Do you guys want to rework the public API? |
|
I don't think that this project is going to be updated. Sorry |
This fixes three compile errors on ppc64-be.
The first fix is a trivial unbalanced closing brace. The second is undefined behavior due to a shift width issue. 'unsigned long long' is always 64-bits in practice, and it avoids '<stdint.h>' headers. The third is a missing 'swap_bytes' implementation, which is trivially fixed with a 'memcpy'.
There are some additional fixes, like avoiding the use of reserved identifiers, fixing a compile under IBM XL C/C++ and fixing duplicate symbols on AIX.
A ppc64-be machine is available on the GCC Compile Farm at gcc119.fsffrance.org. Accounts are free for open source developers. Access is provided using SSH. Sign up for an account at tetaneutral.net | Compile Farm. The compile farm account gets you access to the hardware listed at CFarm Machines.