[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 Thomas Preud'homme changed: What|Removed |Added Status|ASSIGNED|RESOLVED Known to work||6.4.1 Resolution|--- |FIXED Known to fail|6.4.1 |6.4.0 --- Comment #7 from Thomas Preud'homme --- Fixed in all release branches.
[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 --- Comment #6 from Thomas Preud'homme --- Author: thopre01 Date: Wed Apr 18 13:17:30 2018 New Revision: 259469 URL: https://gcc.gnu.org/viewcvs?rev=259469=gcc=rev Log: [ARM] Fix PR85261: ICE with FPSCR setter builtin Instruction pattern for setting the FPSCR expects the input value to be in a register. However, __builtin_arm_set_fpscr expander does not ensure that this is the case and as a result GCC ICEs when the builtin is called with a constant literal. This commit fixes the builtin to force the input value into a register. It also remove the unneeded volatile in the existing fpscr test and fixes the function prototype. 2018-04-18 Thomas Preud'hommeBackport from mainline 2018-04-11 Thomas Preud'homme gcc/ PR target/85261 * config/arm/arm-builtins.c (arm_expand_builtin): Force input operand into register. gcc/testsuite/ PR target/85261 * gcc.target/arm/fpscr.c: Add call to __builtin_arm_set_fpscr with literal value. Expect 2 MCR instruction. Fix function prototype. Remove volatile keyword. Modified: branches/gcc-6-branch/gcc/ChangeLog branches/gcc-6-branch/gcc/config/arm/arm-builtins.c branches/gcc-6-branch/gcc/testsuite/ChangeLog branches/gcc-6-branch/gcc/testsuite/gcc.target/arm/fpscr.c
[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 --- Comment #5 from Thomas Preud'homme --- Author: thopre01 Date: Wed Apr 18 11:42:10 2018 New Revision: 259465 URL: https://gcc.gnu.org/viewcvs?rev=259465=gcc=rev Log: [ARM] Fix PR85261: ICE with FPSCR setter builtin Instruction pattern for setting the FPSCR expects the input value to be in a register. However, __builtin_arm_set_fpscr expander does not ensure that this is the case and as a result GCC ICEs when the builtin is called with a constant literal. This commit fixes the builtin to force the input value into a register. It also remove the unneeded volatile in the existing fpscr test and fixes the function prototype. 2018-04-18 Thomas Preud'hommeBackport from mainline 2018-04-11 Thomas Preud'homme gcc/ PR target/85261 * config/arm/arm-builtins.c (arm_expand_builtin): Force input operand into register. gcc/testsuite/ PR target/85261 * gcc.target/arm/fpscr.c: Add call to __builtin_arm_set_fpscr with literal value. Expect 2 MCR instruction. Fix function prototype. Remove volatile keyword. Modified: branches/gcc-7-branch/gcc/ChangeLog branches/gcc-7-branch/gcc/config/arm/arm-builtins.c branches/gcc-7-branch/gcc/testsuite/ChangeLog branches/gcc-7-branch/gcc/testsuite/gcc.target/arm/fpscr.c
[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 --- Comment #4 from Thomas Preud'homme --- Author: thopre01 Date: Wed Apr 11 10:07:25 2018 New Revision: 259310 URL: https://gcc.gnu.org/viewcvs?rev=259310=gcc=rev Log: [ARM] Fix PR85261: ICE with FPSCR setter builtin Instruction pattern for setting the FPSCR expects the input value to be in a register. However, __builtin_arm_set_fpscr expander does not ensure that this is the case and as a result GCC ICEs when the builtin is called with a constant literal. This commit fixes the builtin to force the input value into a register. It also remove the unneeded volatile in the existing fpscr test and fixes the function prototype. 2018-04-11 Thomas Preud'hommegcc/ PR target/85261 * config/arm/arm-builtins.c (arm_expand_builtin): Force input operand into register. gcc/testsuite/ PR target/85261 * config/arm/arm-builtins.c (arm_expand_builtin): Force input operand into register. Modified: trunk/gcc/ChangeLog trunk/gcc/config/arm/arm-builtins.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.target/arm/fpscr.c
[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 Thomas Preud'homme changed: What|Removed |Added Known to fail||6.4.1, 7.3.1 --- Comment #3 from Thomas Preud'homme --- (In reply to Ramana Radhakrishnan from comment #2) > What about earlier branches ? Oh yes, forgot the previous fpscr fix was also backported.
[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 Ramana Radhakrishnan changed: What|Removed |Added CC||ramana at gcc dot gnu.org --- Comment #2 from Ramana Radhakrishnan --- What about earlier branches ?
[Bug target/85261] __builtin_arm_set_fpscr ICEs with constant input
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85261 Thomas Preud'homme changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2018-04-06 Ever confirmed|0 |1 Known to fail||8.0.1 --- Comment #1 from Thomas Preud'homme --- Have a patch, testing it.