On Tuesday, June 7, 2016 at 3:19:36 PM UTC-4, Jeffrey Walton wrote: > > > alignof and alignas was added to Visual Studio 2015. Would someone add the >>> following to the end of config.h and perform some testing under Visual >>> Studio 2015 with it in effect: >>> >>> // Hack... CRYPTOPP_ALIGN_DATA is defined earlier, before C++11 alignas >>> availability is determined >>> #if defined(CRYPTOPP_CXX11_ALIGNAS) >>> # undef CRYPTOPP_ALIGN_DATA >>> # define CRYPTOPP_ALIGN_DATA(x) alignas(x) >>> #endif // CRYPTOPP_CXX11_ALIGNAS >>> >>> I'm interested in two things. First, does the code actually compile >>> under Visual Studio 2015. Second, does the code enjoy a speedup when using >>> it? >>> >>> The speedup (or lack thereof) can be measured with a benchmark: >>> >>> ./cryptest.exe b <time in seconds> <cpu speed in GHz> >>> >> >> This was committed at >> https://github.com/weidai11/cryptopp/commit/16df6e64a8d026d3369b2fc93572fce7505a9cef >> > > I want to back this out. The initial test results looked good. However, > the detailed testing is showing some fractures. The pain point seems to be > C++11 is more strict about the location of the 'alignas(N)' in the > statement-expression of the BNF. >
I've completed a fair amount of testing, including older Clang's and Sun Studio's. It looks like we are safe with Commit 29d36de59e9b4720 (http://github.com/weidai11/cryptopp/commit/29d36de59e9b472030f85112fef87c6d559cbf01). I'll be re-adding this change soon if there are no objections. Jeff -- -- You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to cryptopp-users-unsubscr...@googlegroups.com. More information about Crypto++ and this group is available at http://www.cryptopp.com. --- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to cryptopp-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.