-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
Base64 test of folly passes on s390x (Linux on IBM zSystems) #1993
Comments
I believe the initial lockout of big endian systems was out of precaution (since we don't have any readily accessible means of testing). If it's passing tests and working fine, we can probably just remove the assert that was keeping things from compiling on big endian hosts. |
Thanks @Orvid! |
This may fix #1834 perhaps for MacOS too. Let me try. |
Summary: It doesn't appear to actually be needed as the tests pass on big endian platforms: #1993 (comment) Fixes: #1993 Reviewed By: Gownta Differential Revision: D52974667 fbshipit-source-id: 89193ec75e58d54f05e1300b56d17775aab856d2
Hi Team,
This is to build upon an issue I raised previously within the community (#1951) where we were having trouble building the folly library with s390x (Linux on IBM zSystems mainframe).
Specifically, we were having trouble due to an assertion in
folly/detail/base64_detail/Base64SWAR.cpp
, which checked if the host machine was big-endian (IBM zSystems are big-endian). I was advised to understand the SWAR table used in the Base64 decode process and adapt it for big-endian platform.For debugging, I tried commenting out the assertion and built folly on s390x. Also, I tried pulling out
folly/test/base64_test.cpp
and built it manually. Strangely, the test succeeds when run.Can someone shed some light into why the test is succeeding on the big-endian IBM zSystems?
I was of understanding that the little-endian specific implementation of SWAR table used would cause the test to fail.
Thanks!
The text was updated successfully, but these errors were encountered: