Executing on host: /mnt/gnu/gcc/objdir/gcc/xgcc -B/mnt/gnu/gcc/objdir/gcc/ /mnt/ gnu/gcc/gcc/gcc/testsuite/gcc.dg/pr28796-1.c -ffinite-math-only -fno-show-colu mn -lm -o pr28796-1.exe (timeout = 300) /usr/ccs/bin/ld: Unsatisfied symbols: link_error (first referenced in /var/tmp//ccjtth6i.o) (code) collect2: ld returned 1 exit status compiler exited with status 1 output is: /usr/ccs/bin/ld: Unsatisfied symbols: link_error (first referenced in /var/tmp//ccjtth6i.o) (code) collect2: ld returned 1 exit status FAIL: gcc.dg/pr28796-1.c (test for excess errors) Excess errors: /usr/ccs/bin/ld: Unsatisfied symbols: link_error (first referenced in /var/tmp//ccjtth6i.o) (code) Executing on host: /mnt/gnu/gcc/objdir/gcc/xgcc -B/mnt/gnu/gcc/objdir/gcc/ /mnt/ gnu/gcc/gcc/gcc/testsuite/gcc.dg/pr28796-2.c -O2 -funsafe-math-optimizations - fno-show-column -lm -o ./pr28796-2.exe (timeout = 300) /usr/ccs/bin/ld: Unsatisfied symbols: finite (first referenced in /var/tmp//ccklYEaP.o) (code) collect2: ld returned 1 exit status compiler exited with status 1 output is: /usr/ccs/bin/ld: Unsatisfied symbols: finite (first referenced in /var/tmp//ccklYEaP.o) (code) collect2: ld returned 1 exit status FAIL: gcc.dg/pr28796-2.c (test for excess errors) Excess errors: /usr/ccs/bin/ld: Unsatisfied symbols: finite (first referenced in /var/tmp//ccklYEaP.o) (code) This is with revision revision 131740.
Subject: Re: New: [4.2 Regression] FAIL: gcc.dg/pr28796-[12].c (test for excess errors) > link_error (first referenced in /var/tmp//ccjtth6i.o) (code) Attached is tree dump. Dave
Created attachment 15000 [details] pr28796-1.c.003t.original
I don't think this is a regression, this is a new testcase for the branch. There was most likely a forgot patch that should have been backported.
Subject: Re: FAIL: gcc.dg/pr28796-[12].c (test for excess errors) > I don't think this is a regression, this is a new testcase for the branch. Yes, I missed the fact that the testcases are new. > There was most likely a forgot patch that should have been backported. For some reason, __builtin_finite() seems broken. Dave
Of course I tested the backport on x86_64-unknown-linux-gnu, where it worked for me. And it should via fold_builtin_classify ... case BUILT_IN_FINITE: if (!HONOR_NANS (TYPE_MODE (TREE_TYPE (arg))) && !HONOR_INFINITIES (TYPE_MODE (TREE_TYPE (arg)))) return omit_one_operand (type, integer_zero_node, arg); ha! And indeed we miss: 2006-10-21 Richard Guenther <rguenther@suse.de> * builtins.c (fold_builtin_classify): Fix typo. I'll take care of it.
Fixed.
Subject: Re: FAIL: gcc.dg/pr28796-[12].c (test for excess errors) > Fixed. Unfortunately, only the first testcase is fixed. We still have FAIL: gcc.dg/pr28796-2.c (test for excess errors) Excess errors: /usr/ccs/bin/ld: Unsatisfied symbols: finite (first referenced in /var/tmp//ccEVbuEL.o) (code) Think we also need the following fix: 2007-01-25 Steve Ellcey <sje@cup.hp.com> PR other/30182 * config/pa/pa.c (pa_init_builtins): Set asm names for finite routines. * config/ia64/ia64.c (ia64_init_builtins): Ditto. Dave
Testing backend fix.
Subject: Bug 34931 Author: danglin Date: Thu Jan 24 17:18:54 2008 New Revision: 131797 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131797 Log: PR middle-end/34931 Backport: 2007-01-25 Steve Ellcey <sje@cup.hp.com> PR other/30182 * config/pa/pa.c (pa_init_builtins): Set asm names for finite routines. * config/ia64/ia64.c (ia64_init_builtins): Ditto. 2007-01-26 Steve Ellcey <sje@cup.hp.com> PR other/30182 * config/pa/pa.h (TARGET_HPUX_11): New. * config/pa/pa-hpux11.h (TARGET_HPUX_11): New. * config/pa/pa.c (pa_init_builtins): Use TARGET_HPUX_11. Modified: branches/gcc-4_2-branch/gcc/config/ia64/ia64.c branches/gcc-4_2-branch/gcc/config/pa/pa-hpux11.h branches/gcc-4_2-branch/gcc/config/pa/pa.c branches/gcc-4_2-branch/gcc/config/pa/pa.h
The finite builtins should now find the right libc functions on hpux11.