public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
@ 2009-01-31 17:48 rob1weld at aol dot com
2009-01-31 22:28 ` [Bug inline-asm/39048] " ubizjak at gmail dot com
` (12 more replies)
0 siblings, 13 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-01-31 17:48 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 7972 bytes --]
I looked for a "Component" for 'libgcc' but there is no such category so I
chose 'inline-asm' as this is an "extra underscore issue" with '.s' files.
# gcc/xgcc -v
Using built-in specs.
Target: i386-pc-solaris2.11
Configured with: ../gcc_trunk/configure
--enable-languages=ada,c,c++,fortran,java,objc,obj-c++ --enable-shared
--disable-static --enable-decimal-float --with-long-double-128
--with-included-gettext --enable-stage1-checking --enable-checking=release
--with-tune=k8 --with-cpu=k8 --with-arch=k8 --with-gnu-as
--with-as=/usr/local/bin/as --with-gnu-ld --with-ld=/usr/local/bin/ld
Thread model: posix
gcc version 4.4.0 20090131 (experimental) [trunk revision 143817] (GCC)
Note: I use GNU's 'ld' on OpenSolaris.
When I run "make -i check" I get this:
...
Running /usr/share/src/gcc_trunk/gcc/testsuite/gcc.dg/torture/dg-torture.exp
...
FAIL: gcc.dg/torture/fp-int-convert-float128.c -O0 (test for excess errors)
WARNING: gcc.dg/torture/fp-int-convert-float128.c -O0 compilation failed to
produce executable
FAIL: gcc.dg/torture/fp-int-convert-float128.c -O1 (test for excess errors)
WARNING: gcc.dg/torture/fp-int-convert-float128.c -O1 compilation failed to
produce executable
FAIL: gcc.dg/torture/fp-int-convert-float128.c -O2 (test for excess errors)
WARNING: gcc.dg/torture/fp-int-convert-float128.c -O2 compilation failed to
produce executable
FAIL: gcc.dg/torture/fp-int-convert-float128.c -O3 -fomit-frame-pointer (test
for excess errors)
WARNING: gcc.dg/torture/fp-int-convert-float128.c -O3 -fomit-frame-pointer
compilation failed to produce executable
FAIL: gcc.dg/torture/fp-int-convert-float128.c -O3 -g (test for excess
errors)
WARNING: gcc.dg/torture/fp-int-convert-float128.c -O3 -g compilation failed
to produce executable
FAIL: gcc.dg/torture/fp-int-convert-float128.c -Os (test for excess errors)
WARNING: gcc.dg/torture/fp-int-convert-float128.c -Os compilation failed to
produce executable
...
I tried to compile the Testsuite case "gcc.dg/torture/fp-int-convert-float.c"
by hand to investigate these errors:
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/
/usr/share/src/gcc_trunk/gcc/testsuite/gcc.dg/torture/fp-int-convert-float128.c
-O0 -lm -o ./fp-int-convert-float128.exe (timeout = 300)
/var/tmp//cc_XaqHO.o: In function `main':
fp-int-convert-float128.c:(.text+0x3a): undefined reference to `__floatsitf'
fp-int-convert-float128.c:(.text+0x5a): undefined reference to `__fixtfsi'
fp-int-convert-float128.c:(.text+0xa1): undefined reference to `__netf2'
...
fp-int-convert-float128.c:(.text+0xa5f3): undefined reference to `__netf2'
collect2: ld returned 1 exit status
FAIL: gcc.dg/torture/fp-int-convert-float128.c -O3 -fomit-frame-pointer (test
for excess errors)
Excess errors:
...
fp-int-convert-float128.c:(.text+0xa4f8): undefined reference to
`__floatunditf'
fp-int-convert-float128.c:(.text+0xa516): undefined reference to `__fixunstfdi'
fp-int-convert-float128.c:(.text+0xa598): undefined reference to `__netf2'
WARNING: gcc.dg/torture/fp-int-convert-float128.c -O3 -fomit-frame-pointer
compilation failed to produce executable
Where are those functions and what are they called:
# find /usr/share/src/gcc_build/i386-pc-solaris2.11/ -name *floatunditf*
/usr/share/src/gcc_build/i386-pc-solaris2.11/amd64/libgcc/_floatunditf_s.o
/usr/share/src/gcc_build/i386-pc-solaris2.11/amd64/libgcc/_floatunditf.o
/usr/share/src/gcc_build/i386-pc-solaris2.11/amd64/libgcc/_floatunditf.dep
/usr/share/src/gcc_build/i386-pc-solaris2.11/amd64/libgcc/_floatunditf_s.dep
/usr/share/src/gcc_build/i386-pc-solaris2.11/libgcc/_floatunditf.dep
/usr/share/src/gcc_build/i386-pc-solaris2.11/libgcc/_floatunditf.o
/usr/share/src/gcc_build/i386-pc-solaris2.11/libgcc/_floatunditf_s.dep
/usr/share/src/gcc_build/i386-pc-solaris2.11/libgcc/_floatunditf_s.o
Failing Command:
/usr/share/src/gcc_build/gcc/xgcc -B/usr/share/src/gcc_build/gcc/
/usr/share/src/gcc_trunk/gcc/testsuite/gcc.dg/torture/fp-int-convert-float128.c
-O3 -g -lm -o ./fp-int-convert-float128.exe
Working Command (Note that I add -lgcc to provoke the linker):
# /usr/share/src/gcc_build/gcc/xgcc -B/usr/share/src/gcc_build/gcc/
/usr/share/src/gcc_trunk/gcc/testsuite/gcc.dg/torture/fp-int-convert-float128.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/floatunditf.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/floatunsitf.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/floatsitf.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfdi.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/floatditf.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfdi.c
/usr/share/src/gcc_trunk/gcc/config/soft-fp/eqtf2.c
-I/usr/share/src/gcc_trunk/gcc/config/i386/ -I/usr/share/src/gcc_trunk/libgcc/
-I/usr/share/src/gcc_trunk/gcc/ -O0 -lm -lgcc -o ./fp-int-convert-float128.exe
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c: In function __fixtfsi:
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixtfsi.c:42: warning: left shift
count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c: In function
__fixunstfsi:
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
/usr/share/src/gcc_trunk/gcc/config/soft-fp/fixunstfsi.c:42: warning: left
shift count >= width of type
#
# ./fp-int-convert-float128.exe
#
Works. Even though I used "-lgcc" there was no 'collision' between the
various "conversion functions". The unwanted underscores hide them.
I used the soft-fp "C" source files instead of relying on the double
underscored versions of these functions that are in libgcc and was
able to hand-compile and run ./fp-int-convert-float128.exe .
The Testsuite tests for these "conversion functions" could work
if they were fixed. These files might have first been discussed here:
http://gcc.gnu.org/ml/gcc-patches/2006-05/msg00968.html .
Rob
--
Summary: gcc 4.4.0 20090131 - Extra underscore hides libgcc's
soft-fp functions from Testsuite causing FAILs + naming
error in libgcc
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: major
Priority: P3
Component: inline-asm
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rob1weld at aol dot com
GCC build triplet: i386-pc-solaris2.11
GCC host triplet: i386-pc-solaris2.11
GCC target triplet: i386-pc-solaris2.11
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
@ 2009-01-31 22:28 ` ubizjak at gmail dot com
2009-02-05 3:43 ` rob1weld at aol dot com
` (11 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: ubizjak at gmail dot com @ 2009-01-31 22:28 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from ubizjak at gmail dot com 2009-01-31 22:28 -------
You can use following (slightly wrapped...) patch to enable 128bit soft-fp on
Solaris:
--cut here--
Index: config.gcc
===================================================================
--- config.gcc (revision 143833)
+++ config.gcc (working copy)
@@ -3058,6 +3058,9 @@
i[34567]86-*-linux* | x86_64-*-linux*)
tmake_file="${tmake_file} i386/t-fprules-softfp
soft-fp/t-softfp i386/t-linux"
;;
+ i[34567]86-*-solaris2*)
+ tmake_file="${tmake_file} i386/t-fprules-softfp
soft-fp/t-softfp"
+ ;;
mips*-*-*)
if test x$gnu_ld = xyes
--cut here--
Probably, it works out-of-the-box, otherwise please look into configuration
files in libgcc/config/i386/{32,64}.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
2009-01-31 22:28 ` [Bug inline-asm/39048] " ubizjak at gmail dot com
@ 2009-02-05 3:43 ` rob1weld at aol dot com
2009-02-06 14:12 ` rob1weld at aol dot com
` (10 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-05 3:43 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from rob1weld at aol dot com 2009-02-05 03:43 -------
(In reply to comment #1)
> You can use following (slightly wrapped...) patch to enable 128bit soft-fp on
> Solaris:
>
Thanks, I'll try that this week (working on a P1).
Please read the ChangeLog:
../gcc_trunk/ChangeLog: * configure.ac: Recognize GNU/kOpenSolaris
(*-*-kopensolaris*-gnu).
../gcc_trunk/ChangeLog: * libtool.m4: Add kfreebsd*-gnu and knetbsd*-gnu.
You might want to change that to allow for the new Targets k*bsd and
kopensolaris ("OpenSolaris Kernel with *BSD" and "OpenSolaris Kernel with
GNU Libc"):
@@ -3058,6 +3058,9 @@
- i[34567]86-*-linux* | x86_64-*-linux*)
+ i[34567]86-*-linux* | x86_64-*-linux* *-*-kopensolaris*-gnu
kfreebsd*-gnu* knetbsd*-gnu* x86_64-*kfreebsd*-gnu)
Thanks for the Tip,
Rob
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
2009-01-31 22:28 ` [Bug inline-asm/39048] " ubizjak at gmail dot com
2009-02-05 3:43 ` rob1weld at aol dot com
@ 2009-02-06 14:12 ` rob1weld at aol dot com
2009-02-06 14:40 ` rob1weld at aol dot com
` (9 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-06 14:12 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from rob1weld at aol dot com 2009-02-06 14:11 -------
I tossed in that patch and it cause gcc's build to fail here:
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/floatditf.c:35: warning: no
previous prototype for '__floatditf'
/usr/share/src/gcc_build/./gcc/xgcc -B/usr/share/src/gcc_build/./gcc/
-B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/
-isystem /usr/local/i386-pc-solaris2.11/include -isystem
/usr/local/i386-pc-solaris2.11/sys-include -g -O2 -O2 -g -O2 -DIN_GCC -W
-Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual
-Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT
-DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../.././gcc
-I../../../gcc_trunk/libgcc -I../../../gcc_trunk/libgcc/.
-I../../../gcc_trunk/libgcc/../gcc -I../../../gcc_trunk/libgcc/../include
-I../../../gcc_trunk/libgcc/../libdecnumber/dpd
-I../../../gcc_trunk/libgcc/../libdecnumber -DHAVE_CC_TLS -o floatunditf.o -MT
floatunditf.o -MD -MP -MF floatunditf.dep -fexceptions -c
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/floatunditf.c
-fvisibility=hidden -DHIDE_EXPORTS
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/floatunditf.c:36: warning: no
previous prototype for '__floatunditf'
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/floatunditf.c: In function
'__floatunditf':
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/floatunditf.c:42: warning:
comparison of unsigned expression < 0 is always false
/usr/share/src/gcc_build/./gcc/xgcc -B/usr/share/src/gcc_build/./gcc/
-B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/
-isystem /usr/local/i386-pc-solaris2.11/include -isystem
/usr/local/i386-pc-solaris2.11/sys-include -g -O2 -O2 -g -O2 -DIN_GCC -W
-Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual
-Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT
-DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../.././gcc
-I../../../gcc_trunk/libgcc -I../../../gcc_trunk/libgcc/.
-I../../../gcc_trunk/libgcc/../gcc -I../../../gcc_trunk/libgcc/../include
-I../../../gcc_trunk/libgcc/../libdecnumber/dpd
-I../../../gcc_trunk/libgcc/../libdecnumber -DHAVE_CC_TLS -o fixtfti.o -MT
fixtfti.o -MD -MP -MF fixtfti.dep -fexceptions -c
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c -fvisibility=hidden
-DHIDE_EXPORTS
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:34: error: expected
'=', ',', ';', 'asm' or '__attribute__' before '__fixtfti'
gmake[3]: *** [fixtfti.o] Error 1
gmake[3]: Leaving directory
`/usr/share/src/gcc_build/i386-pc-solaris2.11/libgcc'
gmake[2]: *** [all-stage1-target-libgcc] Error 2
gmake[2]: Leaving directory `/usr/share/src/gcc_build'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/usr/share/src/gcc_build'
gmake: *** [all] Error 2
I guess that it is missing an Include file or the included files
have generated portions that missed TMODES inclusions ...
When I add these lines to the top of fixtfti.c it complains about TI_BITS:
typedef int TItype __attribute__ ((mode (TI)));
typedef unsigned int UTItype __attribute__ ((mode (TI)));
# gmake
...
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:36: error: unable to
emulate 'TI'
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:37: error: unable to
emulate 'TI'
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:40: warning: no
previous prototype for '__fixtfti'
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c: In function
'__fixtfti':
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: error: 'TI_BITS'
undeclared (first use in this function)
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: error: (Each
undeclared identifier is reported only once
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: error: for each
function it appears in.)
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:47: warning: left
shift count >= width of type
I'll play with it some more while I await the help from an expert (or
succeed in Googling my own help).
Thanks,
Rob
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (2 preceding siblings ...)
2009-02-06 14:12 ` rob1weld at aol dot com
@ 2009-02-06 14:40 ` rob1weld at aol dot com
2009-02-06 16:31 ` ubizjak at gmail dot com
` (8 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-06 14:40 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from rob1weld at aol dot com 2009-02-06 14:40 -------
Do we support TImode arithmetic on many platforms?, See:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17279
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19493
I am booted in 32-bit mode (and building multilib).
Rob
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (3 preceding siblings ...)
2009-02-06 14:40 ` rob1weld at aol dot com
@ 2009-02-06 16:31 ` ubizjak at gmail dot com
2009-02-06 16:36 ` ubizjak at gmail dot com
` (7 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: ubizjak at gmail dot com @ 2009-02-06 16:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from ubizjak at gmail dot com 2009-02-06 16:31 -------
(In reply to comment #3)
> I tossed in that patch and it cause gcc's build to fail here:
> ../../../gcc_trunk/libgcc/../gcc/config/soft-fp/fixtfti.c:34: error: expected
> '=', ',', ';', 'asm' or '__attribute__' before '__fixtfti'
Sorry, you need to change libgcc/config.host in the same way. Look at the end
of the file.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (4 preceding siblings ...)
2009-02-06 16:31 ` ubizjak at gmail dot com
@ 2009-02-06 16:36 ` ubizjak at gmail dot com
2009-02-06 22:29 ` rob1weld at aol dot com
` (6 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: ubizjak at gmail dot com @ 2009-02-06 16:36 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from ubizjak at gmail dot com 2009-02-06 16:35 -------
(In reply to comment #4)
> Do we support TImode arithmetic on many platforms?, See:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17279
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19493
>
> I am booted in 32-bit mode (and building multilib).
32bit i386 doesn't support TImode.
TImode soft-fp is disabled in libgcc/config/i386/32/t-fprules-softfp. A change
in libgcc/conifg.host is needed to correctly filter these functions out on your
target.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (5 preceding siblings ...)
2009-02-06 16:36 ` ubizjak at gmail dot com
@ 2009-02-06 22:29 ` rob1weld at aol dot com
2009-02-07 4:21 ` rob1weld at aol dot com
` (5 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-06 22:29 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from rob1weld at aol dot com 2009-02-06 22:29 -------
(In reply to comment #6)
> (In reply to comment #4)
> > Do we support TImode arithmetic on many platforms?, ...
> > I am booted in 32-bit mode (and building multilib).
>
> 32bit i386 doesn't support TImode.
>
> TImode soft-fp is disabled in libgcc/config/i386/32/t-fprules-softfp. A change
> in libgcc/conifg.host is needed to correctly filter these functions out on
> your target.
OK.
The file "libgcc/config.host" says this (so I will use it's code):
# This file bears an obvious resemblance to gcc/config.gcc. The cases
# should be kept similar, to ease moving library-specific settings
# from config.gcc to this file.
The (patched) section of "config.gcc" is (now) this:
i[34567]86-*-darwin* | x86_64-*-darwin*)
tmake_file="${tmake_file} i386/t-fprules-softfp
soft-fp/t-softfp"
;;
i[34567]86-*-linux* | x86_64-*-linux*)
tmake_file="${tmake_file} i386/t-fprules-softfp
soft-fp/t-softfp i386/t-linux"
;;
i[34567]86-*-solaris2*)
tmake_file="${tmake_file} i386/t-fprules-softfp
soft-fp/t-softfp"
;;
----------
Hmmm, Let me check something ...
# find /usr/share/src/gcc_trunk/ -name t-fprules-softfp
/usr/share/src/gcc_trunk/libgcc/config/i386/32/t-fprules-softfp
/usr/share/src/gcc_trunk/gcc/config/i386/t-fprules-softfp
/usr/share/src/gcc_trunk/gcc/config/rs6000/t-fprules-softfp
The code is broken (or faILs through) in "libgcc/conifg.host" (since we have no
"64" directory):
# Provide backward binary compatibility for 64bit Linux/x86.
if test "${host_address}" = 64; then
tmake_file="${tmake_file} i386/${host_address}/t-softfp-compat"
fi
----------
I am going to add this to the _end_ of "libgcc/config.host" :
case ${host} in
i[34567]86-*-solaris2*)
if test "${host_address}" = 32; then
tmake_file="${tmake_file} t-softfp
i386/${host_address}/t-fprules-softfp"
else
tmake_file="${tmake_file} i386/t-fprules-softfp
soft-fp/t-softfp"
;;
fi
;;
esac
Building now, seems to build without breaking (thus far).
I will keep you informed and report back with the Testsuite.
Thanks,
Rob
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (6 preceding siblings ...)
2009-02-06 22:29 ` rob1weld at aol dot com
@ 2009-02-07 4:21 ` rob1weld at aol dot com
2009-02-12 13:45 ` rob1weld at aol dot com
` (4 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-07 4:21 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from rob1weld at aol dot com 2009-02-07 04:21 -------
Here is: gcc 4.4.0 20090206 [trunk revision 143992] ./configured with:
../gcc_trunk/configure --enable-languages=ada,c,c++,fortran,java,objc,obj-c++
--enable-shared --disable-static --enable-multilib --enable-decimal-float
--with-long-double-128 --with-included-gettext --enable-stage1-checking
--enable-checking=release --with-tune=k8 --with-cpu=k8 --with-arch=k8
--with-gnu-as --with-as=/usr/local/bin/as --without-gnu-ld
--with-ld=/usr/ccs/bin/ld
(Notes: This error no longer occurs when I use your patch, my fix, a different
revision, and a different Linker. It is _likely_ that the error is also fixed
for the revision reported (with GNU's Linker). I needed to switch back to
Sun's Linker to compile some Sun code that I must work on the next few days.
# gedit gcc/testsuite/gcc.log
...
PASS: gcc.dg/torture/fp-int-convert-float.c -Os execution test
UNSUPPORTED: gcc.dg/torture/fp-int-convert-float128-timode.c -O0
UNSUPPORTED: gcc.dg/torture/fp-int-convert-float128-timode.c -O1
UNSUPPORTED: gcc.dg/torture/fp-int-convert-float128-timode.c -O2
UNSUPPORTED: gcc.dg/torture/fp-int-convert-float128-timode.c -O3
-fomit-frame-pointer
UNSUPPORTED: gcc.dg/torture/fp-int-convert-float128-timode.c -O3 -g
UNSUPPORTED: gcc.dg/torture/fp-int-convert-float128-timode.c -Os
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/ /usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O0 (test for excess errors)
Setting LD_LIBRARY_PATH to
:/usr/share/src/gcc_build/gcc:/usr/share/src/gcc_build/gcc/amd64::/usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O0 execution test
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/ /usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O1 (test for excess errors)
Setting LD_LIBRARY_PATH to
:/usr/share/src/gcc_build/gcc:/usr/share/src/gcc_build/gcc/amd64::/usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O1 execution test
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/ /usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O2 (test for excess errors)
Setting LD_LIBRARY_PATH to
:/usr/share/src/gcc_build/gcc:/usr/share/src/gcc_build/gcc/amd64::/usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O2 execution test
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/ /usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O3 -fomit-frame-pointer (test
for excess errors)
Setting LD_LIBRARY_PATH to
:/usr/share/src/gcc_build/gcc:/usr/share/src/gcc_build/gcc/amd64::/usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O3 -fomit-frame-pointer
execution test
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/ /usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O3 -g (test for excess
errors)
Setting LD_LIBRARY_PATH to
:/usr/share/src/gcc_build/gcc:/usr/share/src/gcc_build/gcc/amd64::/usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -O3 -g execution test
Executing on host: /usr/share/src/gcc_build/gcc/xgcc
-B/usr/share/src/gcc_build/gcc/ /usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -Os (test for excess errors)
Setting LD_LIBRARY_PATH to
:/usr/share/src/gcc_build/gcc:/usr/share/src/gcc_build/gcc/amd64::/usr/share/...
PASS: gcc.dg/torture/fp-int-convert-float128.c -Os execution test
...
I searched gcc.log for the words "undefined reference" and they no longer
occur.
This patch is tested for i386-pc-solaris2.11 (OpenSolaris 2008.11 snv_101b)
when booted in 32-bit mode (on VirtualBox, on WinXP) using gcc revision 143992
using Sun's Linker (and GNU assembler version 2.19).
After this patch is tested, approved, applied to trunk, and re-tested, then
this Bug will be fixed.
We all thank us for our help,
Rob
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (7 preceding siblings ...)
2009-02-07 4:21 ` rob1weld at aol dot com
@ 2009-02-12 13:45 ` rob1weld at aol dot com
2009-02-20 1:14 ` rob1weld at aol dot com
` (3 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-12 13:45 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from rob1weld at aol dot com 2009-02-12 13:44 -------
(In reply to comment #8)
> ...
> This patch is tested for i386-pc-solaris2.11 (OpenSolaris 2008.11 snv_101b)
> when booted in 32-bit mode (on VirtualBox, on WinXP) using gcc revision 143992
> using Sun's Linker (and GNU assembler version 2.19).
>
> After this patch is tested, approved, applied to trunk, and re-tested, then
> this Bug will be fixed.
>
Adding DEPENDS and trying to test the 'Booted 64-Bit Mode" after fixing: 39150
--
rob1weld at aol dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
BugsThisDependsOn| |39150
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (8 preceding siblings ...)
2009-02-12 13:45 ` rob1weld at aol dot com
@ 2009-02-20 1:14 ` rob1weld at aol dot com
2010-03-31 9:04 ` ro at gcc dot gnu dot org
` (2 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rob1weld at aol dot com @ 2009-02-20 1:14 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from rob1weld at aol dot com 2009-02-20 01:13 -------
(In reply to comment #9)
> (In reply to comment #8)
> > using Sun's Linker (and GNU assembler version 2.19).
> > After this patch is tested, approved, applied to trunk, and re-tested, then
> > this Bug will be fixed.
> Adding DEPENDS and trying to test the 'Booted 64-Bit Mode" after fixing: 39150
This is not yet working on _both_ Sun and GNU's Linkers.
Rob
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug inline-asm/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (9 preceding siblings ...)
2009-02-20 1:14 ` rob1weld at aol dot com
@ 2010-03-31 9:04 ` ro at gcc dot gnu dot org
2010-03-31 9:05 ` [Bug target/39048] " ro at gcc dot gnu dot org
2010-03-31 9:07 ` ro at gcc dot gnu dot org
12 siblings, 0 replies; 14+ messages in thread
From: ro at gcc dot gnu dot org @ 2010-03-31 9:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from ro at gcc dot gnu dot org 2010-03-31 09:03 -------
Subject: Bug 39048
Author: ro
Date: Wed Mar 31 09:03:29 2010
New Revision: 157854
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=157854
Log:
gcc:
PR target/39048
* config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
and soft-fp/t-softfp to tmake_file.
* config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
(LIBGCC2_TF_CEXT): Define.
(TF_SIZE): Define.
libgcc:
PR target/39048
* config.host (i[34567]86-*-solaris2): Handle 32-bit Solaris 2/x86
like other remaining 32-bit x86 OSes.
* config/i386/32/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Support Sun
assembler syntax.
* config/i386/libgcc-sol2.ver: New file.
* config/i386/t-sol2 (SHLIB_MAPFILES): Add it.
Added:
trunk/libgcc/config/i386/libgcc-sol2.ver
Modified:
trunk/gcc/config.gcc
trunk/gcc/config/i386/sol2.h
trunk/libgcc/ChangeLog
trunk/libgcc/config.host
trunk/libgcc/config/i386/32/sfp-machine.h
trunk/libgcc/config/i386/t-sol2
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug target/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (10 preceding siblings ...)
2010-03-31 9:04 ` ro at gcc dot gnu dot org
@ 2010-03-31 9:05 ` ro at gcc dot gnu dot org
2010-03-31 9:07 ` ro at gcc dot gnu dot org
12 siblings, 0 replies; 14+ messages in thread
From: ro at gcc dot gnu dot org @ 2010-03-31 9:05 UTC (permalink / raw)
To: gcc-bugs
--
ro at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |ro at gcc dot gnu dot org
|dot org |
Status|UNCONFIRMED |ASSIGNED
Component|inline-asm |target
Ever Confirmed|0 |1
Known to fail| |4.4.0
Known to work| |4.5.0
Last reconfirmed|0000-00-00 00:00:00 |2010-03-31 09:05:14
date| |
Target Milestone|--- |4.5.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug target/39048] gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
` (11 preceding siblings ...)
2010-03-31 9:05 ` [Bug target/39048] " ro at gcc dot gnu dot org
@ 2010-03-31 9:07 ` ro at gcc dot gnu dot org
12 siblings, 0 replies; 14+ messages in thread
From: ro at gcc dot gnu dot org @ 2010-03-31 9:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from ro at gcc dot gnu dot org 2010-03-31 09:07 -------
Fixed for 4.5.0.
--
ro at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
URL| |http://gcc.gnu.org/ml/gcc-
| |patches/2010-
| |03/msg01071.html
Status|ASSIGNED |RESOLVED
Keywords| |patch
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39048
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2010-03-31 9:07 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-01-31 17:48 [Bug inline-asm/39048] New: gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc rob1weld at aol dot com
2009-01-31 22:28 ` [Bug inline-asm/39048] " ubizjak at gmail dot com
2009-02-05 3:43 ` rob1weld at aol dot com
2009-02-06 14:12 ` rob1weld at aol dot com
2009-02-06 14:40 ` rob1weld at aol dot com
2009-02-06 16:31 ` ubizjak at gmail dot com
2009-02-06 16:36 ` ubizjak at gmail dot com
2009-02-06 22:29 ` rob1weld at aol dot com
2009-02-07 4:21 ` rob1weld at aol dot com
2009-02-12 13:45 ` rob1weld at aol dot com
2009-02-20 1:14 ` rob1weld at aol dot com
2010-03-31 9:04 ` ro at gcc dot gnu dot org
2010-03-31 9:05 ` [Bug target/39048] " ro at gcc dot gnu dot org
2010-03-31 9:07 ` ro at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).