[Build] Use -msse2 option only for 32-bit Intel#38024
Closed
veblush wants to merge 4 commits intogrpc:masterfrom
Closed
[Build] Use -msse2 option only for 32-bit Intel#38024veblush wants to merge 4 commits intogrpc:masterfrom
veblush wants to merge 4 commits intogrpc:masterfrom
Conversation
Contributor
Author
|
tools/bazelify_tests/test/runtests_c_linux_dbg_x86_build_only failed complaining |
Contributor
Author
|
Solution is to narrow the CMake's condition checking if it's 32-bit x86. |
XuanWang-Amos
approved these changes
Nov 4, 2024
Contributor
Author
|
This needs to be rolled back to fix this failure; https://btx.cloud.google.com/invocations/d7ab4c8f-0264-4b41-9ed5-2527c2c5a39a/targets/github%2Fgrpc%2Ftoplevel_run_tests_invocations%2Frun_tests_c_linux_dbg_native_x86_default;config=default/log |
veblush
added a commit
to veblush/grpc
that referenced
this pull request
Nov 6, 2024
This reverts commit 574b19e.
copybara-service bot
pushed a commit
that referenced
this pull request
Nov 6, 2024
…)" (#38074) This reverts commit 574b19e. <!-- If you know who should review your pull request, please assign it to that person, otherwise the pull request would get assigned randomly. If your pull request is for a specific language, please add the appropriate lang label. --> Closes #38074 PiperOrigin-RevId: 693803071
eugeneo
pushed a commit
to eugeneo/grpc
that referenced
this pull request
Nov 6, 2024
This might not be needed? (From grpc#37976) - Boringssl commit requiring -msse2: google/boringssl@56d3ad9#diff-f628d148f94bbab9e22a1ad426ccd94311f1fb87bbe5cc533cb85aee18b07a20R248 - gRPC change to add -msse2 grpc#36089 --- Answer to the quesiton above is yes; The -msse2 option remains necessary for gRPC on i686 due to BoringSSL's requirements. However, the existing CMake condition for this option was too broad, potentially including ARM architectures where SSE2 isn't supported, leading to compilation errors. I've refined the condition to specifically target 32-bit x86 architectures. Furthermore, to ensure accurate architecture detection within our dockerized tests, I've configured x86 tests to utilize the linux32 command. This ensures that uname -a correctly reports i686, allowing gRPC's CMake to identify the architecture and apply the -msse2 option as needed. It's important to note that RBE overrides the default entrypoint, so RBE-based tests must explicitly invoke linux32 even if the Docker image already has it set. Fixes grpc#37976 Closes grpc#38024 PiperOrigin-RevId: 693026079
paulosjca
pushed a commit
to paulosjca/grpc
that referenced
this pull request
Nov 25, 2024
This might not be needed? (From grpc#37976) - Boringssl commit requiring -msse2: google/boringssl@56d3ad9#diff-f628d148f94bbab9e22a1ad426ccd94311f1fb87bbe5cc533cb85aee18b07a20R248 - gRPC change to add -msse2 grpc#36089 --- Answer to the quesiton above is yes; The -msse2 option remains necessary for gRPC on i686 due to BoringSSL's requirements. However, the existing CMake condition for this option was too broad, potentially including ARM architectures where SSE2 isn't supported, leading to compilation errors. I've refined the condition to specifically target 32-bit x86 architectures. Furthermore, to ensure accurate architecture detection within our dockerized tests, I've configured x86 tests to utilize the linux32 command. This ensures that uname -a correctly reports i686, allowing gRPC's CMake to identify the architecture and apply the -msse2 option as needed. It's important to note that RBE overrides the default entrypoint, so RBE-based tests must explicitly invoke linux32 even if the Docker image already has it set. Fixes grpc#37976 Closes grpc#38024 PiperOrigin-RevId: 693026079
paulosjca
pushed a commit
to paulosjca/grpc
that referenced
this pull request
Nov 25, 2024
…#38024)" (grpc#38074) This reverts commit 574b19e. <!-- If you know who should review your pull request, please assign it to that person, otherwise the pull request would get assigned randomly. If your pull request is for a specific language, please add the appropriate lang label. --> Closes grpc#38074 PiperOrigin-RevId: 693803071
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This might not be needed? (From #37976)
Answer to the quesiton above is yes; The -msse2 option remains necessary for gRPC on i686 due to BoringSSL's requirements. However, the existing CMake condition for this option was too broad, potentially including ARM architectures where SSE2 isn't supported, leading to compilation errors. I've refined the condition to specifically target 32-bit x86 architectures.
Furthermore, to ensure accurate architecture detection within our dockerized tests, I've configured x86 tests to utilize the linux32 command. This ensures that uname -a correctly reports i686, allowing gRPC's CMake to identify the architecture and apply the -msse2 option as needed.
It's important to note that RBE overrides the default entrypoint, so RBE-based tests must explicitly invoke linux32 even if the Docker image already has it set.
Fixes #37976