public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/45476] New: libgcc should contain TFmode functions
@ 2010-09-01 9:14 fxcoudert at gcc dot gnu dot org
2010-09-01 10:12 ` [Bug target/45476] " ubizjak at gmail dot com
` (9 more replies)
0 siblings, 10 replies; 11+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2010-09-01 9:14 UTC (permalink / raw)
To: gcc-bugs
As the Fortran front-end now uses soft-float quad precision floating-point
types (__float128 and its complex counterpart), it would be nice for libgcc to
contain TFmode functions on Intel/darwin.
This is present on *86*-{linux,mingw,solaris} and ia64-{linux,hpux}. It was
recently introduced in *86*-freebsd, see patch at
http://gcc.gnu.org/ml/gcc-patches/2010-08/msg02139.html
--
Summary: libgcc should contain TFmode functions
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fxcoudert at gcc dot gnu dot org
GCC target triplet: *86*-apple-darwin10
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TFmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
@ 2010-09-01 10:12 ` ubizjak at gmail dot com
2010-09-01 10:22 ` [Bug target/45476] libgcc should contain TCmode functions fxcoudert at gcc dot gnu dot org
` (8 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: ubizjak at gmail dot com @ 2010-09-01 10:12 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from ubizjak at gmail dot com 2010-09-01 10:12 -------
Intel/darwin already supports __float128.
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
2010-09-01 10:12 ` [Bug target/45476] " ubizjak at gmail dot com
@ 2010-09-01 10:22 ` fxcoudert at gcc dot gnu dot org
2010-09-01 10:30 ` ubizjak at gmail dot com
` (7 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2010-09-01 10:22 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from fxcoudert at gcc dot gnu dot org 2010-09-01 10:21 -------
It partially does. But TC functions are missing:
$ cat a.c
typedef _Complex float __attribute__((mode(TC))) __complex128;
__complex128 foo (__complex128 z1, __complex128 z2) {
return z1 * z2; }
__complex128 bar (__complex128 z1, __complex128 z2) {
return z1 / z2; }
int main (void) {
(void) foo (0, 0);
return 0;
}
$ ./bin/gcc a.c -W -Wall
Undefined symbols:
"___divtc3", referenced from:
_bar in ccqf0ZEK.o
"___multc3", referenced from:
_foo in ccqf0ZEK.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
$ ./bin/gcc -v
Using built-in specs.
COLLECT_GCC=./bin/gcc
COLLECT_LTO_WRAPPER=/Users/fx/devel/gcc/irun/libexec/gcc/x86_64-apple-darwin10.4.0/4.6.0/lto-wrapper
Target: x86_64-apple-darwin10.4.0
Configured with: ../trunk/configure --prefix=/Users/fx/devel/gcc/irun
--with-gmp=/Users/fx/devel/gcc/deps --enable-languages=c,fortran --without-ppl
Thread model: posix
gcc version 4.6.0 20100901 (experimental) [trunk revision 163721] (GCC)
--
fxcoudert at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |UNCONFIRMED
Resolution|INVALID |
Summary|libgcc should contain TFmode|libgcc should contain TCmode
|functions |functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
2010-09-01 10:12 ` [Bug target/45476] " ubizjak at gmail dot com
2010-09-01 10:22 ` [Bug target/45476] libgcc should contain TCmode functions fxcoudert at gcc dot gnu dot org
@ 2010-09-01 10:30 ` ubizjak at gmail dot com
2010-09-01 12:31 ` dominiq at lps dot ens dot fr
` (6 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: ubizjak at gmail dot com @ 2010-09-01 10:30 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from ubizjak at gmail dot com 2010-09-01 10:30 -------
(In reply to comment #2)
> It partially does. But TC functions are missing:
Ah, I see. Put these defines somewhere:
/* Put all *tf routines in libgcc. */
#undef LIBGCC2_HAS_TF_MODE
#define LIBGCC2_HAS_TF_MODE 1
#define LIBGCC2_TF_CEXT q
#define TF_SIZE 113
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2010-09-01 10:30:44
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (2 preceding siblings ...)
2010-09-01 10:30 ` ubizjak at gmail dot com
@ 2010-09-01 12:31 ` dominiq at lps dot ens dot fr
2010-09-01 13:31 ` burnus at gcc dot gnu dot org
` (5 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-09-01 12:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from dominiq at lps dot ens dot fr 2010-09-01 12:31 -------
(In reply to comment #3)
On x86_64-apple-darwin10 I have applied the following patch
--- ../_clean/gcc/config/i386/darwin.h 2010-07-19 11:51:25.000000000 +0200
+++ ../p_work/gcc/config/i386/darwin.h 2010-09-01 14:10:53.000000000 +0200
@@ -148,6 +148,12 @@ extern int darwin_emit_branch_islands;
#define SHIFT_DOUBLE_OMITS_COUNT 0
+/* Put all *tf routines in libgcc. */
+#undef LIBGCC2_HAS_TF_MODE
+#define LIBGCC2_HAS_TF_MODE 1
+#define LIBGCC2_TF_CEXT q
+#define TF_SIZE 113
+
#undef TARGET_ASM_FILE_END
#define TARGET_ASM_FILE_END darwin_file_end
and bootstrap fails at stage 1 with
ld: duplicate symbol ___fixtfdi in fixtfdi_s.o and _fixtfdi_s.o
Any idea?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (3 preceding siblings ...)
2010-09-01 12:31 ` dominiq at lps dot ens dot fr
@ 2010-09-01 13:31 ` burnus at gcc dot gnu dot org
2010-09-01 13:36 ` burnus at gcc dot gnu dot org
` (4 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: burnus at gcc dot gnu dot org @ 2010-09-01 13:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from burnus at gcc dot gnu dot org 2010-09-01 13:31 -------
Cf. patch by Uros for cygming, darwin, freebsd at
http://gcc.gnu.org/ml/gcc-patches/2010-09/msg00040.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (4 preceding siblings ...)
2010-09-01 13:31 ` burnus at gcc dot gnu dot org
@ 2010-09-01 13:36 ` burnus at gcc dot gnu dot org
2010-09-01 18:07 ` uros at gcc dot gnu dot org
` (3 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: burnus at gcc dot gnu dot org @ 2010-09-01 13:36 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from burnus at gcc dot gnu dot org 2010-09-01 13:35 -------
Uros, did you see the comment of Dominique regarding x86_64-apple-darwin10?
(In reply to comment #4)
> and bootstrap fails at stage 1 with
> ld: duplicate symbol ___fixtfdi in fixtfdi_s.o and _fixtfdi_s.o
That's with the patch from comment 2 (or comment 4) - but I think that's
identical to the submitted patch (comment 5).
--
burnus at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (5 preceding siblings ...)
2010-09-01 13:36 ` burnus at gcc dot gnu dot org
@ 2010-09-01 18:07 ` uros at gcc dot gnu dot org
2010-09-02 5:05 ` uros at gcc dot gnu dot org
` (2 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: uros at gcc dot gnu dot org @ 2010-09-01 18:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from uros at gcc dot gnu dot org 2010-09-01 18:06 -------
Subject: Bug 45476
Author: uros
Date: Wed Sep 1 18:06:02 2010
New Revision: 163741
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163741
Log:
PR target/45476
* config/i386/cygming.h (LIBGCC2_HAS_TF_MODE,
LIBGCC2_TF_CEXT, TF_SIZE): Move from ...
* config/i386/mingw32.h: ... here.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/cygming.h
trunk/gcc/config/i386/mingw32.h
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (6 preceding siblings ...)
2010-09-01 18:07 ` uros at gcc dot gnu dot org
@ 2010-09-02 5:05 ` uros at gcc dot gnu dot org
2010-09-03 14:24 ` uros at gcc dot gnu dot org
2010-09-03 19:58 ` ubizjak at gmail dot com
9 siblings, 0 replies; 11+ messages in thread
From: uros at gcc dot gnu dot org @ 2010-09-02 5:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from uros at gcc dot gnu dot org 2010-09-02 05:05 -------
Subject: Bug 45476
Author: uros
Date: Thu Sep 2 05:05:01 2010
New Revision: 163756
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163756
Log:
PR target/45476
* config/i386/freebsd.h (LIBGCC2_HAS_TF_MODE,
LIBGCC2_TF_CEXT, TF_SIZE): New defines.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/freebsd.h
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (7 preceding siblings ...)
2010-09-02 5:05 ` uros at gcc dot gnu dot org
@ 2010-09-03 14:24 ` uros at gcc dot gnu dot org
2010-09-03 19:58 ` ubizjak at gmail dot com
9 siblings, 0 replies; 11+ messages in thread
From: uros at gcc dot gnu dot org @ 2010-09-03 14:24 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from uros at gcc dot gnu dot org 2010-09-03 14:23 -------
Subject: Bug 45476
Author: uros
Date: Fri Sep 3 14:23:05 2010
New Revision: 163819
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163819
Log:
libgcc/ChangeLog:
PR target/45476
* Makefile.in (sifuncs, difuncs, tifuncs): Filter out
LIB2FUNCS_EXCLUDE functions.
gcc/ChangeLog:
PR target/45476
* config/i386/t-darwin (LIB2FUNCS_EXCLUDE): New.
* config/i386/darwin.h (LIBGCC2_HAS_TF_MODE,
LIBGCC2_TF_CEXT, TF_SIZE): New defines.
gcc/testsuite/ChangeLog:
PR target/45476
* gcc.target/i386/float128-1.c: Enable for all x86 targets.
* gcc.target/i386/float128-2.c: Ditto.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/darwin.h
trunk/gcc/config/i386/t-darwin
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.target/i386/float128-1.c
trunk/gcc/testsuite/gcc.target/i386/float128-2.c
trunk/libgcc/ChangeLog
trunk/libgcc/Makefile.in
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/45476] libgcc should contain TCmode functions
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
` (8 preceding siblings ...)
2010-09-03 14:24 ` uros at gcc dot gnu dot org
@ 2010-09-03 19:58 ` ubizjak at gmail dot com
9 siblings, 0 replies; 11+ messages in thread
From: ubizjak at gmail dot com @ 2010-09-03 19:58 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from ubizjak at gmail dot com 2010-09-03 19:58 -------
Fixed for all targets that support __float128.
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
GCC target triplet|*86*-apple-darwin10 |x86
Resolution| |FIXED
Target Milestone|--- |4.6.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45476
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2010-09-03 19:58 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-01 9:14 [Bug target/45476] New: libgcc should contain TFmode functions fxcoudert at gcc dot gnu dot org
2010-09-01 10:12 ` [Bug target/45476] " ubizjak at gmail dot com
2010-09-01 10:22 ` [Bug target/45476] libgcc should contain TCmode functions fxcoudert at gcc dot gnu dot org
2010-09-01 10:30 ` ubizjak at gmail dot com
2010-09-01 12:31 ` dominiq at lps dot ens dot fr
2010-09-01 13:31 ` burnus at gcc dot gnu dot org
2010-09-01 13:36 ` burnus at gcc dot gnu dot org
2010-09-01 18:07 ` uros at gcc dot gnu dot org
2010-09-02 5:05 ` uros at gcc dot gnu dot org
2010-09-03 14:24 ` uros at gcc dot gnu dot org
2010-09-03 19:58 ` ubizjak at gmail dot com
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).