re PR target/20650 (float.c fails to build with weird error message)

PR 20650
	* config/rs6000/rs6000.md (fix_truncdfsi2): Make destination
	a register.

From-SVN: r97435
This commit is contained in:
Geoffrey Keating 2005-04-02 09:58:36 +00:00 committed by Geoffrey Keating
parent 5f89fef6c4
commit 51b759248a
4 changed files with 22 additions and 1 deletions

View File

@ -1,5 +1,9 @@
2005-04-02 Geoffrey Keating <geoffk@apple.com>
PR 20650
* config/rs6000/rs6000.md (fix_truncdfsi2): Make destination
a register.
* config/rs6000/t-darwin (TARGET_LIBGCC2_CFLAGS): Add -pipe.
* config/t-darwin (TARGET_LIBGCC2_CFLAGS): Likewise.

View File

@ -5272,8 +5272,10 @@
DONE;
}")
; In the TARGET_PPC_GFXOPT case, this could and probably should
; take a memory destination; but actually making this work is hard.
(define_expand "fix_truncdfsi2"
[(parallel [(set (match_operand:SI 0 "reg_or_mem_operand" "")
[(parallel [(set (match_operand:SI 0 "gpc_reg_operand" "")
(fix:SI (match_operand:DF 1 "gpc_reg_operand" "")))
(clobber (match_dup 2))
(clobber (match_dup 3))])]

View File

@ -1,3 +1,7 @@
2005-04-02 Geoffrey Keating <geoffk@apple.com>
* gcc.dg/rs6000-fpint.c: New.
2005-04-01 Joseph S. Myers <joseph@codesourcery.com>
* gcc.dg/old-style-then-proto-1.c: New test.

View File

@ -0,0 +1,11 @@
/* { dg-do compile { target powerpc*-*-* rs6000-*-* } } */
/* { dg-options "-mno-powerpc-gfxopt" } */
/* { dg-final { scan-assembler-not "stfiwx" } } */
/* A basic test of the old-style (not stfiwx) fp -> int conversion. */
int f(double a, double b)
{
int a1 = a;
int b1 = b;
return a1+b1;
}