-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix compile errors on ppc64-be #6
base: master
Are you sure you want to change the base?
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.