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
[gcc] Prefer bsl/bit/bif for copysignf. (backport GCC-8) #4
Conversation
|
You need to run the precheckin.sh script to sync the cross-gcc spec files with gcc.spec. |
|
Please smash the two commits
|
This patch is to fix the ICE caused in expand pattern of copysignf builtin. This is a back port to r267019 of trunk. gcc: 2019-04-29 Srinath Parvathaneni <srinath.parvathaneni@arm.com> Backport from mainline 2018-12-11 Richard Earnshaw <Richard.Earnshaw@arm.com> PR target/37369 * config/aarch64/iterators.md (sizem1): Add sizes for SFmode and DFmode. (Vbtype): Add SFmode mapping. * config/aarch64/aarch64.md (copysigndf3, copysignsf3): Delete. (copysign<GPF:mode>3): New expand pattern. (copysign<GPF:mode>3_insn): New insn pattern. testsuite: 2019-04-29 Srinath Parvathaneni <srinath.parvathaneni@arm.com> PR target/90075 * gcc.target/aarch64/pr90075.c: New test. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90075 https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=267019 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37369
|
precheckin.sh script ran and commits squashed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
We still don't know if this patch actually fixes the problem flypig is facing with gecko build. I would have built this myself, but it looks like not all cross-aarch64 dependencies for GCC are available for i486 built target. The cross-i486 dependencies are available, and I can compile that one, but it doesn't help here. Perhaps OBS helps us out here. |
|
Did you install the cross-* packages into the tooling?
Which cross-aarch64 dependencies are missing?
|
|
I was just able to test this new version, and it does seem to fix the issue I was experiencing. Here's the error output from before: And this is what I get now (no error!): Great work @direc85! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This fixes the issue I was experiencing. Thanks @direc85!
|
I will make a full devel test build with these changs to make sure nothing breaks. If that is ok then I will approve this. |
This (slightly modified) patch supposedly fixes the compiler segfault @llewelld ran into while updating Gecko from ESR 78 to ESR 91:
I haven't been able to compile nor test this patch in Platform SDK, but with minor tweaks (two changes for
Changelogand a one-line add foraarch64.md) the patch applies at least. As such, I wish to someone who is more familiar with this process pick this up and build/test it further.The original bug I found was: Bug 90075 - [7/8 Regression] [AArch64] ICE during RTL pass when member of union passed to copysignf (also contains code to reproduce the issue - untested my be though).
The unmodified patch can be downloaded here (or from the bug link by following the gcc-8 backport links).