Commit 76ca5f40 by Michael Meissner Committed by Michael Meissner

re PR target/79947 (ICE in rs6000_emit_swsqrt at gcc/config/rs6000/rs6000.c:37570)

[gcc]
2017-03-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/79947
	* config/rs6000/rs6000.h (TARGET_FRSQRTES): Add check for
	-mpowerpc-gfxopt.

[gcc/testsuite]
2017-03-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/79947
	* gcc.target/powerpc/pr79947.c: New test.

From-SVN: r246150
parent 568c347c
2017-03-14 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/79947
* config/rs6000/rs6000.h (TARGET_FRSQRTES): Add check for
-mpowerpc-gfxopt.
2017-03-14 Martin Sebor <msebor@redhat.com> 2017-03-14 Martin Sebor <msebor@redhat.com>
PR middle-end/80020 PR middle-end/80020
......
...@@ -752,7 +752,8 @@ extern int rs6000_vector_align[]; ...@@ -752,7 +752,8 @@ extern int rs6000_vector_align[];
&& (TARGET_POPCNTB || VECTOR_UNIT_VSX_P (DFmode))) && (TARGET_POPCNTB || VECTOR_UNIT_VSX_P (DFmode)))
#define TARGET_FRSQRTES (TARGET_HARD_FLOAT && TARGET_POPCNTB \ #define TARGET_FRSQRTES (TARGET_HARD_FLOAT && TARGET_POPCNTB \
&& TARGET_FPRS && TARGET_SINGLE_FLOAT) && TARGET_PPC_GFXOPT && TARGET_FPRS \
&& TARGET_SINGLE_FLOAT)
#define TARGET_FRSQRTE (TARGET_HARD_FLOAT && TARGET_FPRS \ #define TARGET_FRSQRTE (TARGET_HARD_FLOAT && TARGET_FPRS \
&& TARGET_DOUBLE_FLOAT \ && TARGET_DOUBLE_FLOAT \
......
2017-03-14 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/79947
* gcc.target/powerpc/pr79947.c: New test.
2017-03-14 Martin Sebor <msebor@redhat.com> 2017-03-14 Martin Sebor <msebor@redhat.com>
PR middle-end/80020 PR middle-end/80020
......
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-options "-Ofast -mno-powerpc-gfxopt -mcmpb -mno-vsx" } */
/* PR 79949: Compiler segmentation fault due to not having conditional move
support for the target if the -mno-powerpc-gfxopt option is used. */
float a, b;
void
c ()
{
a = __builtin_sqrtf (b);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment