public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/43729] New: MachO LTO support needed for darwin
@ 2010-04-12 15:51 howarth at nitro dot med dot uc dot edu
2010-04-12 15:55 ` [Bug target/43729] " steven at gcc dot gnu dot org
` (55 more replies)
0 siblings, 56 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-04-12 15:51 UTC (permalink / raw)
To: gcc-bugs
This bug report is a placeholder for discussing the changes required for LTO
via collect2 on darwin. It exists to have a distinct discussion about darwin
since we don't use either ELF or binutils. It would be optimal if the required
changes would not involve modifications to the darwin linker since, even if
those were obtained from Apple in some future Xcode, it is unlikely that they
would ever be backported to the earlier OS releases.
--
Summary: MachO LTO support needed for darwin
Product: gcc
Version: lto
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: howarth at nitro dot med dot uc dot edu
GCC build triplet: *-apple-darwin*
GCC host triplet: *-apple-darwin*
GCC target triplet: *-apple-darwin*
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] MachO LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
@ 2010-04-12 15:55 ` steven at gcc dot gnu dot org
2010-04-12 16:00 ` steven at gcc dot gnu dot org
` (54 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-12 15:55 UTC (permalink / raw)
To: gcc-bugs
--
steven at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |enhancement
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
GCC build triplet|*-apple-darwin* |
GCC host triplet|*-apple-darwin* |
Last reconfirmed|0000-00-00 00:00:00 |2010-04-12 15:55:01
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] MachO LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
2010-04-12 15:55 ` [Bug target/43729] " steven at gcc dot gnu dot org
@ 2010-04-12 16:00 ` steven at gcc dot gnu dot org
2010-04-12 16:16 ` steven at gcc dot gnu dot org
` (53 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-12 16:00 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from steven at gcc dot gnu dot org 2010-04-12 15:59 -------
>From http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42776#c8 :
> Can we use a similar approach for Mach-O [as for PE-COFF]?
I don't speak Mach-O, but yes, the approach should work. You'd start by
saying lto_binary_reader=lto-mach-o in config.gcc and adding a new
lto/lto-mach-o.c with the same handful of toplevel functions: open and close
file, build section hash, and create section and append binary data to section.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] MachO LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
2010-04-12 15:55 ` [Bug target/43729] " steven at gcc dot gnu dot org
2010-04-12 16:00 ` steven at gcc dot gnu dot org
@ 2010-04-12 16:16 ` steven at gcc dot gnu dot org
2010-04-12 17:12 ` howarth at nitro dot med dot uc dot edu
` (52 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-12 16:16 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from steven at gcc dot gnu dot org 2010-04-12 16:15 -------
For the Mach-O file format, follow this link:
http://developer.apple.com/mac/library/documentation/DeveloperTools/Conceptual/MachORuntime/Reference/reference.html
First step for Mach-O support would be figuring out where to store the LTO
data.
AFAIU, Mach-O has segments, which are bundles of sections. I don't know if GCC
LTO should write a segment, or a section.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] MachO LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (2 preceding siblings ...)
2010-04-12 16:16 ` steven at gcc dot gnu dot org
@ 2010-04-12 17:12 ` howarth at nitro dot med dot uc dot edu
2010-04-12 21:39 ` fang at csl dot cornell dot edu
` (51 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-04-12 17:12 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from howarth at nitro dot med dot uc dot edu 2010-04-12 17:11 -------
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42776#c8
also contains a short list of some of the required code changes for MachO LTO.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] MachO LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (3 preceding siblings ...)
2010-04-12 17:12 ` howarth at nitro dot med dot uc dot edu
@ 2010-04-12 21:39 ` fang at csl dot cornell dot edu
2010-04-14 22:10 ` [Bug target/43729] Mach-O " steven at gcc dot gnu dot org
` (50 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: fang at csl dot cornell dot edu @ 2010-04-12 21:39 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from fang at csl dot cornell dot edu 2010-04-12 21:39 -------
Plz? :)
--
fang at csl dot cornell dot edu changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |fang at csl dot cornell dot
| |edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (4 preceding siblings ...)
2010-04-12 21:39 ` fang at csl dot cornell dot edu
@ 2010-04-14 22:10 ` steven at gcc dot gnu dot org
2010-04-15 13:49 ` howarth at nitro dot med dot uc dot edu
` (49 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-14 22:10 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from steven at gcc dot gnu dot org 2010-04-14 22:10 -------
Collecting bits and pieces from all over, I'm trying to make a plan...
Consensus on IRC is that LTO data does not need its own Mach-O segment, and
that can it just fit as a section in the _TEXT (since LTO data is read-only) or
_DATA segment.
Re. changes in the darwin assembler/linker, it looks like they will just work.
>From http://gcc.gnu.org/ml/gcc/2010-04/msg00250.html:
-------------------------
Binutils for COFF targets needed a patch to allow sections to be
byte-aligned and byte-packed, as it wasn't originally possible to use any
alignment directive to reduce the section alignment below the default, and the
zip-compressed data sections need to be exactly sized to the data they contain
rather than padded up to the default section alignment of 4.
If MachO can do that already, it won't need any changes. Or it could be
fixed in GCC by modifying the format of the compressed sections to be
self-describing w.r.t valid data length in some way - this would probably be
the better thing to do in the long run.
-------------------------
So. Can MachO binutils already do that? Apparently yes:
$ as << ".section __TEXT,__foo"
gives a section alignment of 2^0=1 i.e. byte-aligned.
Alternatively, it is possible to disable zlib compression, although we should
try to avoid that.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (5 preceding siblings ...)
2010-04-14 22:10 ` [Bug target/43729] Mach-O " steven at gcc dot gnu dot org
@ 2010-04-15 13:49 ` howarth at nitro dot med dot uc dot edu
2010-04-15 14:04 ` stevenb dot gcc at gmail dot com
` (48 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-04-15 13:49 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from howarth at nitro dot med dot uc dot edu 2010-04-15 13:48 -------
Can we just use the LTO COFF patch...
http://gcc.gnu.org/ml/gcc-patches/2010-04/msg00612.html
as a template? Hopefully we can just remove the unnecessary sections of the
patch and rename things as appropriate (for a first pass at implementing the
Mach-O LTO support).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (6 preceding siblings ...)
2010-04-15 13:49 ` howarth at nitro dot med dot uc dot edu
@ 2010-04-15 14:04 ` stevenb dot gcc at gmail dot com
2010-04-19 7:40 ` steven at gcc dot gnu dot org
` (47 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: stevenb dot gcc at gmail dot com @ 2010-04-15 14:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from stevenb dot gcc at gmail dot com 2010-04-15 14:03 -------
Subject: Re: Mach-O LTO support needed for darwin
> Can we just use the LTO COFF patch...as a template?
That is certainly my plan, yes.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (7 preceding siblings ...)
2010-04-15 14:04 ` stevenb dot gcc at gmail dot com
@ 2010-04-19 7:40 ` steven at gcc dot gnu dot org
2010-04-26 14:49 ` mrs at gcc dot gnu dot org
` (46 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-19 7:40 UTC (permalink / raw)
To: gcc-bugs
--
steven at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |steven at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
Last reconfirmed|2010-04-12 15:55:01 |2010-04-19 07:40:34
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (8 preceding siblings ...)
2010-04-19 7:40 ` steven at gcc dot gnu dot org
@ 2010-04-26 14:49 ` mrs at gcc dot gnu dot org
2010-04-26 16:07 ` stevenb dot gcc at gmail dot com
` (45 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-04-26 14:49 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from mrs at gcc dot gnu dot org 2010-04-26 14:49 -------
One open question for me would be, are 16 bytes of an arbitrary named
section/segment enough? It you carve out a slice, say lto_%d, that leaves just
12 bytes for the `name', if this big enough?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (9 preceding siblings ...)
2010-04-26 14:49 ` mrs at gcc dot gnu dot org
@ 2010-04-26 16:07 ` stevenb dot gcc at gmail dot com
2010-04-26 18:40 ` davek at gcc dot gnu dot org
` (44 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: stevenb dot gcc at gmail dot com @ 2010-04-26 16:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from stevenb dot gcc at gmail dot com 2010-04-26 16:06 -------
Subject: Re: Mach-O LTO support needed for darwin
Mach-O section names are too short, but I have solved this with a
separate section with section names in a strings table. This is
similar to the solution from lto-coff.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (10 preceding siblings ...)
2010-04-26 16:07 ` stevenb dot gcc at gmail dot com
@ 2010-04-26 18:40 ` davek at gcc dot gnu dot org
2010-04-27 2:35 ` davek at gcc dot gnu dot org
` (43 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: davek at gcc dot gnu dot org @ 2010-04-26 18:40 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from davek at gcc dot gnu dot org 2010-04-26 18:39 -------
(In reply to comment #1)
> I don't speak Mach-O, but yes, the approach should work. You'd start by
> saying lto_binary_reader=lto-mach-o in config.gcc and adding a new
> lto/lto-mach-o.c with the same handful of toplevel functions: open and close
> file, build section hash, and create section and append binary data to section.
Oh, and the one last thing I forgot to mention: update is_elf_or_coff() in
collect2.c so it recognizes Mach-O object files as well as ELF/COFF.
(That may be evident by now anyway, but I thought I'd leave it here for the
record anyway.)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (11 preceding siblings ...)
2010-04-26 18:40 ` davek at gcc dot gnu dot org
@ 2010-04-27 2:35 ` davek at gcc dot gnu dot org
2010-04-27 20:25 ` steven at gcc dot gnu dot org
` (42 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: davek at gcc dot gnu dot org @ 2010-04-27 2:35 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from davek at gcc dot gnu dot org 2010-04-27 02:35 -------
I noticed the dependency was the wrong way round when I saw that this open bug
was blocking a freshly-closed one :)
--
davek at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
BugsThisDependsOn| |42776
OtherBugsDependingO|42776 |
nThis| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (12 preceding siblings ...)
2010-04-27 2:35 ` davek at gcc dot gnu dot org
@ 2010-04-27 20:25 ` steven at gcc dot gnu dot org
2010-04-28 12:20 ` dominiq at lps dot ens dot fr
` (41 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-27 20:25 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from steven at gcc dot gnu dot org 2010-04-27 20:25 -------
Created an attachment (id=20500)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20500&action=view)
proof-of-concept patch
This doesn't even include a Mach-O writer yet (except for the to be rewritten
COFF writer ;-) but this already makes LTO work for most of the test suite. For
lto.exp, C only:
Test Run By stevenb on Tue Apr 27 16:20:21 2010
Native configuration is x86_64-apple-darwin10.3.0
=== gcc tests ===
Schedule of variations:
unix
Running target unix
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /Users/stevenb/gcc_trunk/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /Users/stevenb/gcc_trunk/gcc/testsuite/gcc.dg/lto/lto.exp ...
FAIL: gcc.dg/lto/20081201-2 c_lto_20081201-2_0.o-c_lto_20081201-2_1.o execute
-O3 -fwhopr
FAIL: gcc.dg/lto/20081222 c_lto_20081222_1.o assemble, -O0 -fwhopr
FAIL: gcc.dg/lto/20081222 c_lto_20081222_1.o assemble, -O2 -fwhopr
FAIL: gcc.dg/lto/20081222 c_lto_20081222_1.o assemble, -O0 -flto
FAIL: gcc.dg/lto/20081222 c_lto_20081222_1.o assemble, -O2 -flto
FAIL: gcc.dg/lto/20090914-2 c_lto_20090914-2_0.o assemble, -O0 -fwhopr
FAIL: gcc.dg/lto/20090914-2 c_lto_20090914-2_0.o assemble, -O2 -fwhopr
FAIL: gcc.dg/lto/20090914-2 c_lto_20090914-2_0.o assemble, -O0 -flto
FAIL: gcc.dg/lto/20090914-2 c_lto_20090914-2_0.o assemble, -O2 -flto
FAIL: gcc.dg/lto/20091216-1 c_lto_20091216-1_0.o-c_lto_20091216-1_0.o link
FAIL: gcc.dg/lto/20091216-1 c_lto_20091216-1_0.o-c_lto_20091216-1_0.o link
FAIL: gcc.dg/lto/20091216-1 c_lto_20091216-1_0.o-c_lto_20091216-1_0.o link
FAIL: gcc.dg/lto/20091216-1 c_lto_20091216-1_0.o-c_lto_20091216-1_0.o link
FAIL: gcc.dg/lto/20100423-2 c_lto_20100423-2_0.o-c_lto_20100423-2_1.o link
FAIL: gcc.dg/lto/20100423-2 c_lto_20100423-2_0.o-c_lto_20100423-2_1.o link
FAIL: gcc.dg/lto/20100423-2 c_lto_20100423-2_0.o-c_lto_20100423-2_1.o link
FAIL: gcc.dg/lto/20100423-2 c_lto_20100423-2_0.o-c_lto_20100423-2_1.o link
=== gcc Summary ===
# of expected passes 479
# of unexpected failures 17
# of unresolved testcases 24
# of unsupported tests 2
/Users/stevenb/lto_objdir/gcc/xgcc version 4.6.0 20100427 (experimental)
[trunk revision 158800] (GCC)
There's still work to be done:
1) Try with other languages
2) Make it with with checking enabled (shouldn't make a difference)
3) Produce distinct error message per failure mode
4) Implement the writer
n) ... fix whatever needs fixing ...
I plan to go through the list as time permits. Help welcome (as are patches).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (13 preceding siblings ...)
2010-04-27 20:25 ` steven at gcc dot gnu dot org
@ 2010-04-28 12:20 ` dominiq at lps dot ens dot fr
2010-04-28 13:04 ` dominiq at lps dot ens dot fr
` (40 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-04-28 12:20 UTC (permalink / raw)
To: gcc-bugs
------- Comment #13 from dominiq at lps dot ens dot fr 2010-04-28 12:20 -------
> proof-of-concept patch
Great!-) Thanks a lot.
Besides the 17 C failures, for all languages but ADA, I also see
FAIL: g++.dg/lto/20100302 cp_lto_20100302_0.o-cp_lto_20100302_1.o link
and
FAIL: gcc.c-torture/execute/cmpdi-1.c compilation, -O3 -g
FAIL: gfortran.dg/array_constructor_11.f90 -O3 -g (internal compiler error)
but they are probably unrelated.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (14 preceding siblings ...)
2010-04-28 12:20 ` dominiq at lps dot ens dot fr
@ 2010-04-28 13:04 ` dominiq at lps dot ens dot fr
2010-04-28 19:50 ` steven at gcc dot gnu dot org
` (39 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-04-28 13:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #14 from dominiq at lps dot ens dot fr 2010-04-28 13:04 -------
Note also that the polyhedron test aermod.f90 fails with -flto or -whopr at any
level of optimization with:
ld: in /var/tmp//ccDGk6QZ.o, in section __TEXT,__text reloc 17: local
relocation for address 0x000E58F4 in section __text does not target section
__00000B61
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (15 preceding siblings ...)
2010-04-28 13:04 ` dominiq at lps dot ens dot fr
@ 2010-04-28 19:50 ` steven at gcc dot gnu dot org
2010-04-29 10:48 ` steven at gcc dot gnu dot org
` (38 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-28 19:50 UTC (permalink / raw)
To: gcc-bugs
------- Comment #15 from steven at gcc dot gnu dot org 2010-04-28 19:50 -------
Re. comment #14, this is obviously related to LTO but we (gcc) don't do
anything with relocations. I'll try to reproduce this problem, but I suspect it
is an assembler or linker bug.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (16 preceding siblings ...)
2010-04-28 19:50 ` steven at gcc dot gnu dot org
@ 2010-04-29 10:48 ` steven at gcc dot gnu dot org
2010-04-29 11:39 ` steven at gcc dot gnu dot org
` (37 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-29 10:48 UTC (permalink / raw)
To: gcc-bugs
------- Comment #16 from steven at gcc dot gnu dot org 2010-04-29 10:48 -------
Re. comment #14 this is now Apple radar 7920267. Let's see if someone on their
end can cq. is willing to help us out here.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (17 preceding siblings ...)
2010-04-29 10:48 ` steven at gcc dot gnu dot org
@ 2010-04-29 11:39 ` steven at gcc dot gnu dot org
2010-04-29 13:20 ` howarth at nitro dot med dot uc dot edu
` (36 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-04-29 11:39 UTC (permalink / raw)
To: gcc-bugs
------- Comment #17 from steven at gcc dot gnu dot org 2010-04-29 11:39 -------
I've played a bit with modified .s files by hand, and as/ld work if the LTO
sections follow the other sections.
The normal order of output with -flto looks like this in the .s file:
LTO sections (the __GNU_LTO stuff)
.text / .data / etc. (all non-LTO sections)
LTO __section_names section
With this order I get the linker error.
I do *not* get the linker error if I re-order the .s file by hand to look like
this:
.text / .data / etc. (all non-LTO sections)
LTO sections (the __GNU_LTO stuff)
LTO __section_names section
With this order, the .s file looks identical with and without -flto, except for
the extra LTO sections after the non-LTO stuff of course. And with this order,
the linker doesn't give an error.
I don't understand this at all. It is almost as if the compiler somehow writes
an address relative to start-of-file, but the compiler doesn't know about
addresses (it can write labels and such, but not count bytes from
start-of-file).
Anyway, I did some research with Google and we are not the first to encounter
this problem. Apparently it doesn't happen in 32-bits mode, so I'll implement
that now and try that.
The important conclusion for me, is that the LTO patch is OK and the bug is
somewhere else :-)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (18 preceding siblings ...)
2010-04-29 11:39 ` steven at gcc dot gnu dot org
@ 2010-04-29 13:20 ` howarth at nitro dot med dot uc dot edu
2010-05-01 14:40 ` steven at gcc dot gnu dot org
` (35 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-04-29 13:20 UTC (permalink / raw)
To: gcc-bugs
------- Comment #18 from howarth at nitro dot med dot uc dot edu 2010-04-29 13:20 -------
Does the executable created from the manually reordered aermod.s run correctly?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (19 preceding siblings ...)
2010-04-29 13:20 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-01 14:40 ` steven at gcc dot gnu dot org
2010-05-01 14:43 ` steven at gcc dot gnu dot org
` (34 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-05-01 14:40 UTC (permalink / raw)
To: gcc-bugs
------- Comment #19 from steven at gcc dot gnu dot org 2010-05-01 14:40 -------
Created an attachment (id=20526)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20526&action=view)
proof-of-concept patch, with Mach-O writer implemented now
Remaining failures due to missing support for what's tested:
gcc.dg/lto/20081222_1.c:14:21: error: only weak aliases are supported in this
configuration
gcc.dg/lto/20090914: Unknown pseudo-op: .type
gcc.dg/lto/20100423: Undefined symbols: "_stderr"
g++.dg/lto/20100302: Undefined symbols: "f(float __vector(4)*)"
Remaining real failures:
gcc.dg/lto/20090126: lto1: internal compiler error: Segmentation fault
--
steven at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #20500|0 |1
is obsolete| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (20 preceding siblings ...)
2010-05-01 14:40 ` steven at gcc dot gnu dot org
@ 2010-05-01 14:43 ` steven at gcc dot gnu dot org
2010-05-01 14:53 ` rguenth at gcc dot gnu dot org
` (33 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-05-01 14:43 UTC (permalink / raw)
To: gcc-bugs
------- Comment #20 from steven at gcc dot gnu dot org 2010-05-01 14:43 -------
On x86_64-unknown-linux-gnu, I see that gcc.dg/lto/20090126 also fails (see
http://gcc.gnu.org/ml/gcc-testresults/2010-05/msg00031.html). So the test
suite results on x86_64-darwin are the same as on x86_64-linux modulo
unsupported features / ELFisms / GLIBCisms.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (21 preceding siblings ...)
2010-05-01 14:43 ` steven at gcc dot gnu dot org
@ 2010-05-01 14:53 ` rguenth at gcc dot gnu dot org
2010-05-01 15:26 ` dominiq at lps dot ens dot fr
` (32 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-05-01 14:53 UTC (permalink / raw)
To: gcc-bugs
------- Comment #21 from rguenth at gcc dot gnu dot org 2010-05-01 14:53 -------
+ /* ??? Some targets need to handle LTO assembler output specially.
+ Is this the right place to hanlde that? */
+ if (flag_generate_lto)
yes.
+ if (flag_generate_lto)
+ targetm.asm_out.lto_end ();
should be right after ipa_write_summaries
+ /* FIXME Need to document this. */
off_t offset;
this is the offset for the ELF object inside an ar archive file (or zero)
-
+if(1) return true;
eh?
Not looking at the darwin / mach-o specific parts this looks good to me.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (22 preceding siblings ...)
2010-05-01 14:53 ` rguenth at gcc dot gnu dot org
@ 2010-05-01 15:26 ` dominiq at lps dot ens dot fr
2010-05-01 21:40 ` dominiq at lps dot ens dot fr
` (31 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-05-01 15:26 UTC (permalink / raw)
To: gcc-bugs
------- Comment #22 from dominiq at lps dot ens dot fr 2010-05-01 15:26 -------
Sorry to bother you, but with the patch in comment #19 bootstrap fails at stage
2 with the infamous "all warnings being treated as errors":
...
/opt/gcc/build_w/./prev-gcc/xgcc -B/opt/gcc/build_w/./prev-gcc/
-B/opt/gcc/gcc4.6w/x86_64-apple-darwin10/bin/
-B/opt/gcc/gcc4.6w/x86_64-apple-darwin10/bin/
-B/opt/gcc/gcc4.6w/x86_64-apple-darwin10/lib/ -isystem
/opt/gcc/gcc4.6w/x86_64-apple-darwin10/include -isystem
/opt/gcc/gcc4.6w/x86_64-apple-darwin10/sys-include -c -g -O2 -gtoggle
-DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition
-Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -Ilto -I../../work/gcc
-I../../work/gcc/lto -I../../work/gcc/../include
-I../../work/gcc/../libcpp/include -I/opt/sw64/include -I/opt/sw64/include
-I../../work/gcc/../libdecnumber -I../../work/gcc/../libdecnumber/dpd
-I../libdecnumber -I/opt/sw64/include -I/opt/sw64/include -DCLOOG_PPL_BACKEND
-I/opt/sw64/include ../../work/gcc/lto/lto-macho.c -o lto/lto-macho.o
In file included from ../../work/gcc/lto/lto-macho.c:31:0:
../../work/gcc/lto/lto-macho.h:221:33: error: using 'lto_mach_o_data' as both a
typedef and a tag is invalid in C++ [-Werror=c++-compat]
../../work/gcc/lto/lto-macho.h:205:8: note: originally defined here
../../work/gcc/lto/lto-macho.h:255:36: error: using 'lto_mach_o_section' as
both a typedef and a tag is invalid in C++ [-Werror=c++-compat]
../../work/gcc/lto/lto-macho.h:206:8: note: originally defined here
cc1: all warnings being treated as errors
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (23 preceding siblings ...)
2010-05-01 15:26 ` dominiq at lps dot ens dot fr
@ 2010-05-01 21:40 ` dominiq at lps dot ens dot fr
2010-05-01 21:51 ` steven at gcc dot gnu dot org
` (30 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-05-01 21:40 UTC (permalink / raw)
To: gcc-bugs
------- Comment #23 from dominiq at lps dot ens dot fr 2010-05-01 21:40 -------
After some surgery in gcc/lto/lto-macho.h and gcc/lto/lto-macho.c, I have
managed to bootstrap. Now the full polyhedron test pass without failure. The
timings with my default options, with -fwhole-file, and with -flto follows
(Core2Duo 2.53Ghz, 3Mb cache, 4Gb RAM):
================================================================================
Date & Time : 22 Apr 2010 10:44:08
Test Name : pbharness
Compile Command : gfc %n.f90 -O3 -ffast-math -funroll-loops -ftree-loop-linear
-fomit-frame-pointer -finline-limit=600
--param min-vect-loop-bound=2 -o %n
Benchmarks : ac aermod air capacita channel doduc fatigue gas_dyn induct
linpk mdbx nf protein rnflow test_fpu tfft
Maximum Times : 300.0
Target Error % : 0.200
Minimum Repeats : 2
Maximum Repeats : 5
Benchmark Compile Executable Ave Run Number Estim
Name (secs) (bytes) (secs) Repeats Err %
--------- ------- ---------- ------- ------- ------
ac 2.23 46792 10.14 2 0.0000
aermod 74.42 1419504 22.70 2 0.1542
air 5.47 77848 6.96 5 0.4008
capacita 7.68 126824 40.90 2 0.0685
channel 1.91 34664 2.92 2 0.0685
doduc 10.08 196872 29.89 4 0.1952
fatigue 4.40 85688 8.39 2 0.1370
gas_dyn 7.11 725640 4.90 5 0.6075
induct 8.10 186864 14.23 2 0.0914
linpk 1.50 38544 21.66 2 0.0277
mdbx 2.75 73864 12.55 2 0.0597
nf 23.55 153376 29.98 2 0.1568
protein 10.43 127520 38.66 2 0.0375
rnflow 15.93 205136 26.50 2 0.0019
test_fpu 8.91 158968 11.50 2 0.0391
tfft 1.15 26584 3.28 2 0.1829
Geometric Mean Execution Time = 13.38 seconds
================================================================================
Date & Time : 15 Apr 2010 12:07:17
Test Name : pbharness
Compile Command : gfc %n.f90 -O3 -ffast-math -funroll-loops -ftree-loop-linear
-fomit-frame-pointer -finline-limit=600
--param min-vect-loop-bound=2 -fwhole-file -o %n
Benchmarks : ac aermod air capacita channel doduc fatigue gas_dyn induct
linpk mdbx nf protein rnflow test_fpu tfft
Maximum Times : 300.0
Target Error % : 0.200
Minimum Repeats : 2
Maximum Repeats : 5
Benchmark Compile Executable Ave Run Number Estim
Name (secs) (bytes) (secs) Repeats Err %
--------- ------- ---------- ------- ------- ------
ac 2.98 42696 8.96 2 0.0056
aermod 98.92 1808760 21.42 2 0.0700
air 13.09 114728 7.14 5 0.2725
capacita 8.00 135016 40.78 2 0.0037
channel 1.75 34664 2.92 3 0.1769
doduc 12.56 250192 28.59 2 0.0052
fatigue 5.15 102112 8.44 2 0.0118
gas_dyn 7.39 729736 4.90 5 0.3932
induct 11.50 244448 14.16 2 0.0035
linpk 1.81 50848 21.68 2 0.0208
mdbx 7.05 139448 12.55 2 0.0159
nf 20.10 157504 28.99 5 0.1680
protein 13.03 147992 38.94 2 0.0116
rnflow 17.64 229760 26.05 2 0.0134
test_fpu 9.77 183608 11.42 4 0.1691
tfft 1.28 34808 3.29 2 0.0912
Geometric Mean Execution Time = 13.17 seconds
================================================================================
Date & Time : 1 May 2010 23:04:52
Test Name : pbharness
Compile Command : gfc %n.f90 -O3 -ffast-math -funroll-loops -ftree-loop-linear
-fomit-frame-pointer -finline-limit=600
--param min-vect-loop-bound=2 -flto -o %n
Benchmarks : ac aermod air capacita channel doduc fatigue gas_dyn induct
linpk mdbx nf protein rnflow test_fpu tfft
Maximum Times : 300.0
Target Error % : 0.200
Minimum Repeats : 2
Maximum Repeats : 5
Benchmark Compile Executable Ave Run Number Estim
Name (secs) (bytes) (secs) Repeats Err %
--------- ------- ---------- ------- ------- ------
ac 6.36 46800 8.44 2 0.0118
aermod 194.06 1901544 19.00 2 0.0632
air 23.06 106816 7.27 5 0.1278
capacita 15.52 126832 40.81 2 0.0588
channel 3.15 34712 3.09 2 0.1618
doduc 25.82 254352 27.93 2 0.0519
fatigue 10.52 102144 8.75 2 0.1771
gas_dyn 17.60 754592 4.72 5 0.6081
induct 21.66 236416 14.11 2 0.0921
linpk 3.32 46760 21.70 2 0.0323
mdbx 9.23 106792 12.62 2 0.0158
nf 47.72 149368 30.19 5 0.3552
protein 22.63 148024 38.55 2 0.1206
rnflow 34.14 229792 26.33 3 0.1770
test_fpu 18.88 183576 11.54 2 0.0563
tfft 2.89 34848 3.33 5 0.1648
Geometric Mean Execution Time = 13.12 seconds
================================================================================
Polyhedron Benchmark Validator
Copyright (C) Polyhedron Software Ltd - 2004 - All rights reserved
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (24 preceding siblings ...)
2010-05-01 21:40 ` dominiq at lps dot ens dot fr
@ 2010-05-01 21:51 ` steven at gcc dot gnu dot org
2010-05-01 22:19 ` howarth at nitro dot med dot uc dot edu
` (29 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-05-01 21:51 UTC (permalink / raw)
To: gcc-bugs
------- Comment #24 from steven at gcc dot gnu dot org 2010-05-01 21:51 -------
Created an attachment (id=20527)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20527&action=view)
final patch
I plan to submit this, but with 32 bits disabled because I get failures I don't
understand.
--
steven at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #20526|0 |1
is obsolete| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (25 preceding siblings ...)
2010-05-01 21:51 ` steven at gcc dot gnu dot org
@ 2010-05-01 22:19 ` howarth at nitro dot med dot uc dot edu
2010-05-01 22:31 ` stevenb dot gcc at gmail dot com
` (28 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-01 22:19 UTC (permalink / raw)
To: gcc-bugs
------- Comment #25 from howarth at nitro dot med dot uc dot edu 2010-05-01 22:18 -------
Steven,
Do you mean the errors which have "symbol xxx can't be undefined in a
subtraction expression"? A google shows this to look like that discussed
here...
http://gcc.gnu.org/ml/gcc-bugs/2003-11/msg01552.html
which is apparently PR10901. On gpc seems to have been worked around with a
--longjmp-all-nonlocal-labels option?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (26 preceding siblings ...)
2010-05-01 22:19 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-01 22:31 ` stevenb dot gcc at gmail dot com
2010-05-01 23:22 ` mrs at gcc dot gnu dot org
` (27 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: stevenb dot gcc at gmail dot com @ 2010-05-01 22:31 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 681 bytes --]
------- Comment #26 from stevenb dot gcc at gmail dot com 2010-05-01 22:30 -------
Subject: Re: Mach-O LTO support needed for darwin
> Do you mean the errors which have "symbol xxx can't be undefined in a
> subtraction expression"?
Yes, exactly those.
> A google shows this to look like that discussed
> here...
>
> http://gcc.gnu.org/ml/gcc-bugs/2003-11/msg01552.html
>
> which is apparently PR10901. On gpc seems to have been worked around with a
> --longjmp-all-nonlocal-labels option?
I don't think that's the same problem. With LTO it happens for regular
variables. But perhaps the problems are related.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (27 preceding siblings ...)
2010-05-01 22:31 ` stevenb dot gcc at gmail dot com
@ 2010-05-01 23:22 ` mrs at gcc dot gnu dot org
2010-05-01 23:59 ` howarth at nitro dot med dot uc dot edu
` (26 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-05-01 23:22 UTC (permalink / raw)
To: gcc-bugs
------- Comment #27 from mrs at gcc dot gnu dot org 2010-05-01 23:22 -------
Ok for all the darwin bits with any necessary mods to turn off or fix the
32-bit port. If you attach the the 32-bit .s file, I can puzzle it out for
you. In short, only - of two defined symbols in the same section work.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (28 preceding siblings ...)
2010-05-01 23:22 ` mrs at gcc dot gnu dot org
@ 2010-05-01 23:59 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:01 ` howarth at nitro dot med dot uc dot edu
` (25 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-01 23:59 UTC (permalink / raw)
To: gcc-bugs
------- Comment #28 from howarth at nitro dot med dot uc dot edu 2010-05-01 23:59 -------
Created an attachment (id=20529)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20529&action=view)
example 32-bit failing testcase
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (29 preceding siblings ...)
2010-05-01 23:59 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 0:01 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:07 ` howarth at nitro dot med dot uc dot edu
` (24 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 0:01 UTC (permalink / raw)
To: gcc-bugs
------- Comment #29 from howarth at nitro dot med dot uc dot edu 2010-05-02 00:01 -------
Mike,
I've attached one of the failing testcases with all of the files generated
by the commands...
/Users/stevenb/lto_objdir32/gcc/xgcc -B/Users/stevenb/lto_objdir32/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_0.o
/Users/stevenb/gcc_trunk/gcc/testsuite/gcc.dg/lto/20081111_0.c
/Users/stevenb/lto_objdir32/gcc/xgcc -B/Users/stevenb/lto_objdir32/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_1.o
/Users/stevenb/gcc_trunk/gcc/testsuite/gcc.dg/lto/20081111_1.c
/Users/stevenb/lto_objdir32/gcc/xgcc -B/Users/stevenb/lto_objdir32/gcc/
c_lto_20081111_0.o c_lto_20081111_1.o -v --save-temps -O0 -fwhopr -o
gcc-dg-lto-20081111-01
Unfortunately this testcase produces an empty gcc-dg-lto-20081111-01.s file.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (30 preceding siblings ...)
2010-05-02 0:01 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 0:07 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:10 ` howarth at nitro dot med dot uc dot edu
` (23 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 0:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #30 from howarth at nitro dot med dot uc dot edu 2010-05-02 00:07 -------
Created an attachment (id=20530)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20530&action=view)
non-failing testcase for 64-bit
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (31 preceding siblings ...)
2010-05-02 0:07 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 0:10 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:48 ` howarth at nitro dot med dot uc dot edu
` (22 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 0:10 UTC (permalink / raw)
To: gcc-bugs
------- Comment #31 from howarth at nitro dot med dot uc dot edu 2010-05-02 00:09 -------
Mike,
I've also attached the same non-failing testcase from the x86_64 build
generated with the commands...
/Users/stevenb/lto_objdir/gcc/xgcc -B/Users/stevenb/lto_objdir/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_0.o
/Users/stevenb/gcc_trunk/gcc/testsuite/gcc.dg/lto/20081111_0.c
/Users/stevenb/lto_objdir/gcc/xgcc -B/Users/stevenb/lto_objdir/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_1.o
/Users/stevenb/gcc_trunk/gcc/testsuite/gcc.dg/lto/20081111_1.c
/Users/stevenb/lto_objdir/gcc/xgcc -B/Users/stevenb/lto_objdir/gcc/
c_lto_20081111_0.o c_lto_20081111_1.o -v --save-temps -O0 -fwhopr -o
gcc-dg-lto-20081111-01
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (32 preceding siblings ...)
2010-05-02 0:10 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 0:48 ` howarth at nitro dot med dot uc dot edu
2010-05-02 1:24 ` mrs at gcc dot gnu dot org
` (21 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 0:48 UTC (permalink / raw)
To: gcc-bugs
------- Comment #32 from howarth at nitro dot med dot uc dot edu 2010-05-02 00:47 -------
The failing command out of the log from the 32-bit testcase is...
/Users/stevenb/lto_objdir32/gcc/lto1 -fPIC -quiet -dumpbase
gcc-dg-lto-20081111-01.ltrans0 -dumpdir ./ -mmacosx-version-min=10.6.3
-mtune=generic -auxbase-strip c_lto_20081111_1.wpa.ltrans.o -O0 -version
-fltrans c_lto_20081111_1.wpa.o -o c_lto_20081111_1.wpa.s
and produces the file c_lto_20081111_1.wpa.s containing...
.text
.globl _bar
_bar:
pushl %ebp
movl %esp, %ebp
subl $8, %esp
call ___i686.get_pc_thunk.cx
"L00000000001$pb":
leal _mumble-"L00000000001$pb"(%ecx), %eax
movl (%eax), %eax
leave
ret
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
.weak_definition ___i686.get_pc_thunk.cx
.private_extern ___i686.get_pc_thunk.cx
___i686.get_pc_thunk.cx:
movl (%esp), %ecx
ret
.subsections_via_symbols
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (33 preceding siblings ...)
2010-05-02 0:48 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 1:24 ` mrs at gcc dot gnu dot org
2010-05-02 13:11 ` howarth at nitro dot med dot uc dot edu
` (20 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-05-02 1:24 UTC (permalink / raw)
To: gcc-bugs
------- Comment #33 from mrs at gcc dot gnu dot org 2010-05-02 01:23 -------
So, mumble isn't defined in the wpa file. The .wpa. file has to be assembled
at the same time as 20081111_1.s, or, different code would need to be
generated. darwin.c manages the code gen by asking the question, is this
symbol _defined_ in the translation unit or _must_ it be defined. The answer
from that question must be valid. In this case, someone lied to us. So, if
there is a new answer, like, is this symbol defined in an LTO segment, we could
modify the underlying question do be:
is_defined(sym) {
if (LTO_SYM(sym) return false;
[ ... ]
|
which should be seamless, but, one then pays the price for this in less good
codegen. If one bundles all the code into the wpa file, one can preserve
_good_ codegen, which is the other way to fix this. machopic_symbol_defined_p
is the is_defined predicate above, if you want to go that path.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (34 preceding siblings ...)
2010-05-02 1:24 ` mrs at gcc dot gnu dot org
@ 2010-05-02 13:11 ` howarth at nitro dot med dot uc dot edu
2010-05-02 13:59 ` howarth at nitro dot med dot uc dot edu
` (19 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 13:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #34 from howarth at nitro dot med dot uc dot edu 2010-05-02 13:11 -------
Mike,
Can you flesh out the implementation of the second option of putting all
of the symbols in the wpa? Would this only require changes to darwin specific
files or a change to the LTO mechanism itself?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (35 preceding siblings ...)
2010-05-02 13:11 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 13:59 ` howarth at nitro dot med dot uc dot edu
2010-05-02 19:16 ` howarth at nitro dot med dot uc dot edu
` (18 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 13:59 UTC (permalink / raw)
To: gcc-bugs
------- Comment #35 from howarth at nitro dot med dot uc dot edu 2010-05-02 13:59 -------
Proposed patch for LTO support on Mach-O posted at
http://gcc.gnu.org/ml/gcc-patches/2010-05/msg00041.html.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (36 preceding siblings ...)
2010-05-02 13:59 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-02 19:16 ` howarth at nitro dot med dot uc dot edu
2010-05-03 21:40 ` mrs at gcc dot gnu dot org
` (17 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-02 19:16 UTC (permalink / raw)
To: gcc-bugs
------- Comment #36 from howarth at nitro dot med dot uc dot edu 2010-05-02 19:15 -------
Testresults on x86_64-apple-darwin10 at r158962 for proposed patch...
http://gcc.gnu.org/ml/gcc-testresults/2010-05/msg00185.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (37 preceding siblings ...)
2010-05-02 19:16 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-03 21:40 ` mrs at gcc dot gnu dot org
2010-05-03 22:01 ` howarth at nitro dot med dot uc dot edu
` (16 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-05-03 21:40 UTC (permalink / raw)
To: gcc-bugs
------- Comment #37 from mrs at gcc dot gnu dot org 2010-05-03 21:39 -------
First question to decide is what direction they want to go with it, that's an
LTO question. Once that is decided, if the direction to do is to change
darwin.c, I have given the 3 lines to do that, what remains undone with that
solution is testing, and the correct spelling of LTO_SYM, both of which are LTO
issues. I could create a patch with the addition of the three lines, but that
isn't any harder than just cutting and pasting the three lines given, I don't
think. Let me know the spelling and I can.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (38 preceding siblings ...)
2010-05-03 21:40 ` mrs at gcc dot gnu dot org
@ 2010-05-03 22:01 ` howarth at nitro dot med dot uc dot edu
2010-05-03 22:15 ` steven at gcc dot gnu dot org
` (15 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-03 22:01 UTC (permalink / raw)
To: gcc-bugs
------- Comment #38 from howarth at nitro dot med dot uc dot edu 2010-05-03 22:01 -------
Mike,
I was more interested about the second option since you seem to indicate
that the first option would pessimize the the LTO code generation on i386
darwin. Or did I misunderstand that comment?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (39 preceding siblings ...)
2010-05-03 22:01 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-03 22:15 ` steven at gcc dot gnu dot org
2010-05-03 22:47 ` mrs at gcc dot gnu dot org
` (14 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-05-03 22:15 UTC (permalink / raw)
To: gcc-bugs
------- Comment #39 from steven at gcc dot gnu dot org 2010-05-03 22:15 -------
I still don't understand the 32 bits problem.
Without LTO, there is this code in the for 20081111_0.i:
L_mumble$non_lazy_ptr:
.indirect_symbol _mumble
In the WPA code mumble is gone in the code for 20081111_1.i (and so is the
whole declaration for mumble) but the .indirect_symbol is also not in the WPA
asm for 20081111_0.i.
Something in the darwin backend appears to believe that _mumble has already
been written to the assembler files.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (40 preceding siblings ...)
2010-05-03 22:15 ` steven at gcc dot gnu dot org
@ 2010-05-03 22:47 ` mrs at gcc dot gnu dot org
2010-05-03 23:41 ` howarth at nitro dot med dot uc dot edu
` (13 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-05-03 22:47 UTC (permalink / raw)
To: gcc-bugs
------- Comment #40 from mrs at gcc dot gnu dot org 2010-05-03 22:47 -------
Jack, if I follow what you want, that's an LTO fix, I don't know the LTO code.
I don't know that that fix is even possible. I think one must do the LTO_SYM
fix, if I had to guess. I don't have the time to embark upon learning all the
LTO bits to that work.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (41 preceding siblings ...)
2010-05-03 22:47 ` mrs at gcc dot gnu dot org
@ 2010-05-03 23:41 ` howarth at nitro dot med dot uc dot edu
2010-05-04 8:22 ` mrs at gcc dot gnu dot org
` (12 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-03 23:41 UTC (permalink / raw)
To: gcc-bugs
------- Comment #41 from howarth at nitro dot med dot uc dot edu 2010-05-03 23:41 -------
I wonder if...
/* Given the decl DECL, return the prevailing decl with the same name. */
tree
lto_symtab_prevailing_decl (tree decl)
{
lto_symtab_entry_t ret;
/* Builtins and local symbols are their own prevailing decl. */
if (!TREE_PUBLIC (decl) || is_builtin_fn (decl))
return decl;
/* DECL_ABSTRACTs are their own prevailng decl. */
if (TREE_CODE (decl) == FUNCTION_DECL && DECL_ABSTRACT (decl))
return decl;
/* Ensure DECL_ASSEMBLER_NAME will not set assembler name. */
gcc_assert (DECL_ASSEMBLER_NAME_SET_P (decl));
/* Walk through the list of candidates and return the one we merged to. */
ret = lto_symtab_get (DECL_ASSEMBLER_NAME (decl));
if (!ret)
return NULL_TREE;
return ret->decl;
}
in lto-symtab.c is at all relevant to the problem. Otherwise, could we somehow
access the status of lto_mode_d from collect2.c from within darwin.c?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (42 preceding siblings ...)
2010-05-03 23:41 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-04 8:22 ` mrs at gcc dot gnu dot org
2010-05-07 22:23 ` steven at gcc dot gnu dot org
` (11 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-05-04 8:22 UTC (permalink / raw)
To: gcc-bugs
------- Comment #42 from mrs at gcc dot gnu dot org 2010-05-04 08:22 -------
Steve, machopic_symbol_defined_p I think is being asked if that symbol is being
defined. It is saying yes, but is isn't defined. Since it was not defined
before, but is with LTO, I was assuming it was a symbol added by LTO. Anyway,
machopic_indirection_name is the routine that creates the funny names.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (43 preceding siblings ...)
2010-05-04 8:22 ` mrs at gcc dot gnu dot org
@ 2010-05-07 22:23 ` steven at gcc dot gnu dot org
2010-05-08 14:37 ` howarth at nitro dot med dot uc dot edu
` (10 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-05-07 22:23 UTC (permalink / raw)
To: gcc-bugs
------- Comment #43 from steven at gcc dot gnu dot org 2010-05-07 22:23 -------
FIXED for x86_64-apple-darwin:
http://gcc.gnu.org/viewcvs?view=revision&revision=159173
ix86 and ppc* are still to be done.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (44 preceding siblings ...)
2010-05-07 22:23 ` steven at gcc dot gnu dot org
@ 2010-05-08 14:37 ` howarth at nitro dot med dot uc dot edu
2010-05-08 14:39 ` howarth at nitro dot med dot uc dot edu
` (9 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-08 14:37 UTC (permalink / raw)
To: gcc-bugs
------- Comment #44 from howarth at nitro dot med dot uc dot edu 2010-05-08 14:36 -------
Created an attachment (id=20604)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20604&action=view)
example failing test case on powerpc-apple-darwin9
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (45 preceding siblings ...)
2010-05-08 14:37 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-08 14:39 ` howarth at nitro dot med dot uc dot edu
2010-05-08 14:55 ` howarth at nitro dot med dot uc dot edu
` (8 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-08 14:39 UTC (permalink / raw)
To: gcc-bugs
------- Comment #45 from howarth at nitro dot med dot uc dot edu 2010-05-08 14:39 -------
Attached example failing testcase from lto.exp when using proposed patch from
http://gcc.gnu.org/ml/gcc-patches/2010-05/msg00577.html on
powerpc-apple-darwin9. In this testcase, the failure appears as...
/Users/howarth/darwin_objdir/gcc/xgcc -B/Users/howarth/darwin_objdir/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_0.o /
Users/howarth/gcc/gcc/testsuite/gcc.dg/lto/20081111_0.c
/Users/howarth/darwin_objdir/gcc/xgcc -B/Users/howarth/darwin_objdir/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_0.o /
Users/howarth/gcc/gcc/testsuite/gcc.dg/lto/20081111_0.c
/Users/howarth/darwin_objdir/gcc/xgcc -B/Users/howarth/darwin_objdir/gcc/
c_lto_20081111_0.o c_lto_20081111_1.o -v --save-te
mps -O0 -fwhopr -o gcc-dg-lto-20081111-01
Reading specs from /Users/howarth/darwin_objdir/gcc/specs
COLLECT_GCC=/Users/howarth/darwin_objdir/gcc/xgcc
COLLECT_LTO_WRAPPER=/Users/howarth/darwin_objdir/gcc/lto-wrapper
Target: powerpc-apple-darwin9.8.0
Configured with: ../gcc/configure --prefix=/Users/howarth/dist
--enable-languages=c --with-gmp=/sw --with-libiconv-prefix=/sw
--with-ppl=/sw --with-cloog=/sw --with-mpc=/sw --with-system-zlib
--x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/l
ib --enable-lto --disable-bootstrap --enable-checking
Thread model: posix
gcc version 4.6.0 20100508 (experimental) (GCC)
COMPILER_PATH=/Users/howarth/darwin_objdir/gcc/
LIBRARY_PATH=/Users/howarth/darwin_objdir/gcc/:/usr/lib/
COLLECT_GCC_OPTIONS='-mmacosx-version-min=10.5.8'
'-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-fwhopr' '-
o' 'gcc-dg-lto-20081111-01'
/Users/howarth/darwin_objdir/gcc/collect2 -dynamic -arch ppc
-macosx_version_min 10.5.8 -weak_reference_mismatches non-weak
-o gcc-dg-lto-20081111-01 -lcrt1.10.5.o -L/Users/howarth/darwin_objdir/gcc
c_lto_20081111_0.o c_lto_20081111_1.o -fwhopr -lgc
c_s.10.5 -lgcc_ext.10.5 -lgcc -lSystemStubs -lSystem
collect2 version 4.6.0 20100508 (experimental) (Darwin/PowerPC)
/Users/howarth/darwin_objdir/gcc/collect-ld -dynamic -arch ppc
-macosx_version_min 10.5.8 -weak_reference_mismatches non-weak
-o gcc-dg-lto-20081111-01 -lcrt1.10.5.o -L/Users/howarth/darwin_objdir/gcc
c_lto_20081111_0.o c_lto_20081111_1.o -lgcc_s.10.
5 -lgcc_ext.10.5 -lgcc -lSystemStubs -lSystem
/sw/bin/gnm -n c_lto_20081111_0.o
/sw/bin/gnm -n c_lto_20081111_1.o
/Users/howarth/darwin_objdir/gcc/lto-wrapper
/Users/howarth/darwin_objdir/gcc/xgcc -mmacosx-version-min=10.5.8
-B/Users/howar
th/darwin_objdir/gcc/ -v -save-temps -O0 -fwhopr -o gcc-dg-lto-20081111-01
c_lto_20081111_0.o c_lto_20081111_1.o
Reading specs from /Users/howarth/darwin_objdir/gcc/specs
COLLECT_GCC=/Users/howarth/darwin_objdir/gcc/xgcc
COLLECT_LTO_WRAPPER=/Users/howarth/darwin_objdir/gcc/lto-wrapper
Target: powerpc-apple-darwin9.8.0
Configured with: ../gcc/configure --prefix=/Users/howarth/dist
--enable-languages=c --with-gmp=/sw --with-libiconv-prefix=/sw
--with-ppl=/sw --with-cloog=/sw --with-mpc=/sw --with-system-zlib
--x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/l
ib --enable-lto --disable-bootstrap --enable-checking
Thread model: posix
gcc version 4.6.0 20100508 (experimental) (GCC)
COLLECT_GCC_OPTIONS='-combine' '-c'
'-fltrans-output-list=/var/tmp//ccebD29J.ltrans.out' '-fwpa'
'-mmacosx-version-min=10.5.8
' '-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-dumpbase'
'gcc-dg-lto-20081111-01' '-dumpdir' 'c_lto_20081
111_0.o'
/Users/howarth/darwin_objdir/gcc/lto1 -fPIC -quiet -dumpbase
gcc-dg-lto-20081111-01 -dumpdir c_lto_20081111_0.o -mmacosx-ver
sion-min=10.5.8 -auxbase c_lto_20081111_1 -O0 -version
-fltrans-output-list=/var/tmp//ccebD29J.ltrans.out -fwpa @/var/tmp//cc
LYFBxO
GNU GIMPLE (GCC) version 4.6.0 20100508 (experimental)
(powerpc-apple-darwin9.8.0)
compiled by GNU C version 4.0.1 (Apple Inc. build 5493), GMP version
4.3.1, MPFR version 2.4.1, MPC version 0.8
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
GNU GIMPLE (GCC) version 4.6.0 20100508 (experimental)
(powerpc-apple-darwin9.8.0)
compiled by GNU C version 4.0.1 (Apple Inc. build 5493), GMP version
4.3.1, MPFR version 2.4.1, MPC version 0.8
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
COMPILER_PATH=/Users/howarth/darwin_objdir/gcc/:/Users/howarth/darwin_objdir/gcc/
LIBRARY_PATH=/Users/howarth/darwin_objdir/gcc/:/Users/howarth/darwin_objdir/gcc/:/usr/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-combine' '-c'
'-fltrans-output-list=/var/tmp//ccebD29J.ltrans.out' '-fwpa'
'-mmacosx-version-min=10.5.8
' '-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-dumpbase'
'gcc-dg-lto-20081111-01' '-dumpdir' 'c_lto_20081
111_0.o'
COLLECT_GCC_OPTIONS='-combine' '-c'
'-fltrans-output-list=/var/tmp//ccebD29J.ltrans.out' '-fwpa'
'-mmacosx-version-min=10.5.8
' '-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-dumpbase'
'gcc-dg-lto-20081111-01' '-dumpdir' 'c_lto_20081
111_0.o'
Reading specs from /Users/howarth/darwin_objdir/gcc/specs
COLLECT_GCC=/Users/howarth/darwin_objdir/gcc/xgcc
COLLECT_LTO_WRAPPER=/Users/howarth/darwin_objdir/gcc/lto-wrapper
Target: powerpc-apple-darwin9.8.0
Configured with: ../gcc/configure --prefix=/Users/howarth/dist
--enable-languages=c --with-gmp=/sw --with-libiconv-prefix=/sw
--with-ppl=/sw --with-cloog=/sw --with-mpc=/sw --with-system-zlib
--x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/l
ib --enable-lto --disable-bootstrap --enable-checking
Thread model: posix
gcc version 4.6.0 20100508 (experimental) (GCC)
COLLECT_GCC_OPTIONS='-c' '-mmacosx-version-min=10.5.8'
'-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-fltra
ns' '-o' 'c_lto_20081111_1.wpa.ltrans.o'
/Users/howarth/darwin_objdir/gcc/lto1 -fPIC -quiet -dumpbase
c_lto_20081111_1.wpa.o -mmacosx-version-min=10.5.8 -auxbase-str
ip c_lto_20081111_1.wpa.ltrans.o -O0 -version -fltrans c_lto_20081111_1.wpa.o
-o c_lto_20081111_1.wpa.s
GNU GIMPLE (GCC) version 4.6.0 20100508 (experimental)
(powerpc-apple-darwin9.8.0)
compiled by GNU C version 4.0.1 (Apple Inc. build 5493), GMP version
4.3.1, MPFR version 2.4.1, MPC version 0.8
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
GNU GIMPLE (GCC) version 4.6.0 20100508 (experimental)
(powerpc-apple-darwin9.8.0)
compiled by GNU C version 4.0.1 (Apple Inc. build 5493), GMP version
4.3.1, MPFR version 2.4.1, MPC version 0.8
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
COLLECT_GCC_OPTIONS='-c' '-mmacosx-version-min=10.5.8'
'-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-fltra
ns' '-o' 'c_lto_20081111_1.wpa.ltrans.o'
/Users/howarth/darwin_objdir/gcc/as -arch ppc -o c_lto_20081111_1.wpa.ltrans.o
c_lto_20081111_1.wpa.s
COMPILER_PATH=/Users/howarth/darwin_objdir/gcc/:/Users/howarth/darwin_objdir/gcc/
LIBRARY_PATH=/Users/howarth/darwin_objdir/gcc/:/Users/howarth/darwin_objdir/gcc/:/usr/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-c' '-mmacosx-version-min=10.5.8'
'-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-fltra
ns' '-o' 'c_lto_20081111_1.wpa.ltrans.o'
COLLECT_GCC_OPTIONS='-c' '-mmacosx-version-min=10.5.8'
'-B/Users/howarth/darwin_objdir/gcc/' '-v' '-save-temps' '-O0' '-fltra
ns' '-o' 'c_lto_20081111_1.wpa.ltrans.o'
/Users/howarth/darwin_objdir/gcc/collect-ld -dynamic -arch ppc
-macosx_version_min 10.5.8 -weak_reference_mismatches non-weak
-o gcc-dg-lto-20081111-01 -lcrt1.10.5.o -L/Users/howarth/darwin_objdir/gcc
c_lto_20081111_1.wpa.ltrans.o -lgcc_s.10.5 -lgcc_
ext.10.5 -lgcc -lSystemStubs -lSystem
Undefined symbols:
"_main", referenced from:
start in crt1.10.5.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (46 preceding siblings ...)
2010-05-08 14:39 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-08 14:55 ` howarth at nitro dot med dot uc dot edu
2010-05-08 20:08 ` howarth at nitro dot med dot uc dot edu
` (7 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-08 14:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #46 from howarth at nitro dot med dot uc dot edu 2010-05-08 14:55 -------
Opps. The second compile in the failing example failing testcase was...
/Users/howarth/darwin_objdir/gcc/xgcc -B/Users/howarth/darwin_objdir/gcc/
--save-temps -O0 -fwhopr -c -o c_lto_20081111_1.o
/Users/howarth/gcc/gcc/testsuite/gcc.dg/lto/20081111_1.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (47 preceding siblings ...)
2010-05-08 14:55 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-08 20:08 ` howarth at nitro dot med dot uc dot edu
2010-05-08 20:14 ` howarth at nitro dot med dot uc dot edu
` (6 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-08 20:08 UTC (permalink / raw)
To: gcc-bugs
------- Comment #47 from howarth at nitro dot med dot uc dot edu 2010-05-08 20:08 -------
Trying...
make -k check-gcc RUNTESTFLAGS="lto.exp --target_board=unix'{-m64}'"
I get...
=== gcc Summary ===
# of expected passes 319
# of unexpected failures 73
# of unresolved testcases 155
# of unsupported tests 5
/Users/howarth/darwin_objdir/gcc/xgcc version 4.6.0 20100508 (experimental)
(GCC)
on powerpc-apple-darwin9. Interestingly most of these failures seem to be due
to 'main' getting optimized away...
/Users/howarth/darwin_objdir/gcc/collect-ld -dynamic -arch ppc
-macosx_version_min 10.5.8 -weak_reference_mismatches non-weak -o gcc-dg-lto-2
0081111-01 -lcrt1.10.5.o -L/Users/howarth/darwin_objdir/gcc
c_lto_20081111_1.wpa.ltrans.o -lgcc_s.10.5 -lgcc_ext.10.5 -lgcc -lSystemStubs
-lS
ystem
Undefined symbols:
"_main", referenced from:
start in crt1.10.5.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
I am uploading one of these failing test cases as no_main.tgz.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (48 preceding siblings ...)
2010-05-08 20:08 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-08 20:14 ` howarth at nitro dot med dot uc dot edu
2010-05-25 0:29 ` mrs at gcc dot gnu dot org
` (5 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-05-08 20:14 UTC (permalink / raw)
To: gcc-bugs
------- Comment #48 from howarth at nitro dot med dot uc dot edu 2010-05-08 20:14 -------
Created an attachment (id=20607)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20607&action=view)
example failing test case at -m64 on powerpc-apple-darwin9
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (49 preceding siblings ...)
2010-05-08 20:14 ` howarth at nitro dot med dot uc dot edu
@ 2010-05-25 0:29 ` mrs at gcc dot gnu dot org
2010-06-06 10:50 ` dominiq at lps dot ens dot fr
` (4 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: mrs at gcc dot gnu dot org @ 2010-05-25 0:29 UTC (permalink / raw)
To: gcc-bugs
------- Comment #49 from mrs at gcc dot gnu dot org 2010-05-25 00:29 -------
r159527 has yet more lto work in it.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (50 preceding siblings ...)
2010-05-25 0:29 ` mrs at gcc dot gnu dot org
@ 2010-06-06 10:50 ` dominiq at lps dot ens dot fr
2010-06-06 13:46 ` dominiq at lps dot ens dot fr
` (3 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-06-06 10:50 UTC (permalink / raw)
To: gcc-bugs
------- Comment #50 from dominiq at lps dot ens dot fr 2010-06-06 10:50 -------
On x86_64-apple-darwin10.3.0 between revisions 160235 and 160330 the failures
with -m32 went from
FAIL: gcc.c-torture/execute/builtins/abs-1.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/memcpy-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/memmove-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/mempcpy-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/memset-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/pr23484-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/snprintf-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/sprintf-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/stpcpy-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strcat-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strcpy-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strncat-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strncpy-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strstr-asm.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/vsnprintf-chk.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/vsprintf-chk.c compilation, -O2 -fwhopr
to
FAIL: gcc.c-torture/execute/builtins/abs-1.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strstr-asm.c compilation, -O2 -fwhopr
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (51 preceding siblings ...)
2010-06-06 10:50 ` dominiq at lps dot ens dot fr
@ 2010-06-06 13:46 ` dominiq at lps dot ens dot fr
2010-06-06 20:23 ` dominiq at lps dot ens dot fr
` (2 subsequent siblings)
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-06-06 13:46 UTC (permalink / raw)
To: gcc-bugs
------- Comment #51 from dominiq at lps dot ens dot fr 2010-06-06 13:46 -------
The 14 tests were fixed by revision 160258 (that has nothing to do with
darwin).
Also I see the following changes, 160257:
=== gcc tests ===
Schedule of variations:
unix/-m32
unix/-m64
Running target unix/-m32
Using /sw64/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw64/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/p_work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /opt/gcc/p_work/gcc/testsuite/gcc.dg/lto/lto.exp ...
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20081112 c_lto_20081112_0.o-c_lto_20081112_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20081112 c_lto_20081112_0.o-c_lto_20081112_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090213 c_lto_20090213_0.o-c_lto_20090213_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090218 c_lto_20090218_0.o-c_lto_20090218_3.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20100423-2 c_lto_20100423-2_0.o-c_lto_20100423-2_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20100423-2 c_lto_20100423-2_0.o-c_lto_20100423-2_1.o link, -O3
-fwhopr
FAIL: gcc.dg/lto/20100603-2 c_lto_20100603-2_0.o-c_lto_20100603-2_0.o link, -O0
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/20100603-2 c_lto_20100603-2_0.o-c_lto_20100603-2_0.o link, -O2
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/20100603-3 c_lto_20100603-3_0.o-c_lto_20100603-3_0.o link, -O0
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/20100603-3 c_lto_20100603-3_0.o-c_lto_20100603-3_0.o link, -O2
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/ipacp c_lto_ipacp_0.o-c_lto_ipacp_1.o link, -O1 -fwhopr
-fipa-cp -fipa-cp-clone
FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0.o-c_lto_ipareference2_1.o
link, -O1 -fwhopr -fwhole-program
FAIL: gcc.dg/lto/ipareference c_lto_ipareference_0.o-c_lto_ipareference_1.o
link, -O1 -fwhopr
FAIL: gcc.dg/lto/materialize-1 c_lto_materialize-1_0.o-c_lto_materialize-1_1.o
link, -O3 -fwhopr
=== gcc Summary for unix/-m32 ===
# of expected passes 520
# of unexpected failures 20
# of unresolved testcases 20
# of unsupported tests 4
Running target unix/-m64
Using /sw64/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw64/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/p_work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /opt/gcc/p_work/gcc/testsuite/gcc.dg/lto/lto.exp ...
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20100603-2 c_lto_20100603-2_0.o-c_lto_20100603-2_0.o link, -O0
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/20100603-2 c_lto_20100603-2_0.o-c_lto_20100603-2_0.o link, -O2
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/20100603-3 c_lto_20100603-3_0.o-c_lto_20100603-3_0.o link, -O0
-fwhopr (internal compiler error)
FAIL: gcc.dg/lto/20100603-3 c_lto_20100603-3_0.o-c_lto_20100603-3_0.o link, -O2
-fwhopr (internal compiler error)
=== gcc Summary for unix/-m64 ===
# of expected passes 544
# of unexpected failures 6
# of unresolved testcases 6
# of unsupported tests 4
=== gcc Summary ===
# of expected passes 1064
# of unexpected failures 26
# of unresolved testcases 26
# of unsupported tests 8
r160258:
=== gcc tests ===
Schedule of variations:
unix/-m32
unix/-m64
Running target unix/-m32
Using /sw64/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw64/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/p_work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /opt/gcc/p_work/gcc/testsuite/gcc.dg/lto/lto.exp ...
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20081112 c_lto_20081112_0.o-c_lto_20081112_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090213 c_lto_20090213_0.o-c_lto_20090213_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090218 c_lto_20090218_0.o-c_lto_20090218_3.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090717 c_lto_20090717_0.o-c_lto_20090717_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20090717 c_lto_20090717_0.o-c_lto_20090717_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20091005-1 c_lto_20091005-1_0.o-c_lto_20091005-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/ipacp c_lto_ipacp_0.o-c_lto_ipacp_1.o link, -O1 -fwhopr
-fipa-cp -fipa-cp-clone
FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0.o-c_lto_ipareference2_1.o
link, -O1 -fwhopr -fwhole-program
FAIL: gcc.dg/lto/materialize-1 c_lto_materialize-1_0.o-c_lto_materialize-1_1.o
link, -O3 -fwhopr
=== gcc Summary for unix/-m32 ===
# of expected passes 528
# of unexpected failures 13
# of unresolved testcases 13
# of unsupported tests 4
Running target unix/-m64
Using /sw64/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw64/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/p_work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /opt/gcc/p_work/gcc/testsuite/gcc.dg/lto/lto.exp ...
=== gcc Summary for unix/-m64 ===
# of expected passes 552
# of unsupported tests 4
=== gcc Summary ===
# of expected passes 1080
# of unexpected failures 13
# of unresolved testcases 13
# of unsupported tests 8
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (52 preceding siblings ...)
2010-06-06 13:46 ` dominiq at lps dot ens dot fr
@ 2010-06-06 20:23 ` dominiq at lps dot ens dot fr
2010-06-14 13:14 ` howarth at nitro dot med dot uc dot edu
2010-07-17 22:55 ` steven at gcc dot gnu dot org
55 siblings, 0 replies; 57+ messages in thread
From: dominiq at lps dot ens dot fr @ 2010-06-06 20:23 UTC (permalink / raw)
To: gcc-bugs
------- Comment #52 from dominiq at lps dot ens dot fr 2010-06-06 20:23 -------
On powerpc-apple-darwin9 I see a similar improvement at revision 160335:
=== gcc tests ===
Schedule of variations:
unix/-m32
unix/-m64
Running target unix/-m32
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/gcc-4.6-work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running
/opt/gcc/gcc-4.6-work/gcc/testsuite/gcc.c-torture/execute/builtins/builtins.exp
...
FAIL: gcc.c-torture/execute/builtins/abs-1.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strstr-asm.c compilation, -O2 -fwhopr
=== gcc Summary for unix/-m32 ===
# of expected passes 900
# of unexpected failures 2
# of unresolved testcases 2
Running target unix/-m64
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/gcc-4.6-work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running
/opt/gcc/gcc-4.6-work/gcc/testsuite/gcc.c-torture/execute/builtins/builtins.exp
...
FAIL: gcc.c-torture/execute/builtins/abs-1.c compilation, -O2 -fwhopr
FAIL: gcc.c-torture/execute/builtins/strstr-asm.c compilation, -O2 -fwhopr
=== gcc Summary for unix/-m64 ===
# of expected passes 900
# of unexpected failures 2
# of unresolved testcases 2
=== gcc Summary ===
# of expected passes 1800
# of unexpected failures 4
# of unresolved testcases 4
=== gcc tests ===
Schedule of variations:
unix/-m32
unix/-m64
Running target unix/-m32
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/gcc-4.6-work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /opt/gcc/gcc-4.6-work/gcc/testsuite/gcc.dg/lto/lto.exp ...
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20081112 c_lto_20081112_0.o-c_lto_20081112_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090213 c_lto_20090213_0.o-c_lto_20090213_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090218 c_lto_20090218_0.o-c_lto_20090218_3.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090717 c_lto_20090717_0.o-c_lto_20090717_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20090717 c_lto_20090717_0.o-c_lto_20090717_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20091005-1 c_lto_20091005-1_0.o-c_lto_20091005-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O0 -fwhopr
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O2 -fwhopr
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O0 -flto
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O2 -flto
FAIL: gcc.dg/lto/ipacp c_lto_ipacp_0.o-c_lto_ipacp_1.o link, -O1 -fwhopr
-fipa-cp -fipa-cp-clone
FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0.o-c_lto_ipareference2_1.o
link, -O1 -fwhopr -fwhole-program
FAIL: gcc.dg/lto/materialize-1 c_lto_materialize-1_0.o-c_lto_materialize-1_1.o
link, -O3 -fwhopr
=== gcc Summary for unix/-m32 ===
# of expected passes 516
# of unexpected failures 17
# of unresolved testcases 21
# of unsupported tests 6
Running target unix/-m64
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for
target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /opt/gcc/gcc-4.6-work/gcc/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /opt/gcc/gcc-4.6-work/gcc/testsuite/gcc.dg/lto/lto.exp ...
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20081111 c_lto_20081111_0.o-c_lto_20081111_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20081112 c_lto_20081112_0.o-c_lto_20081112_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090116 c_lto_20090116_0.o-c_lto_20090116_0.o link, -O1
-fwhopr -fPIC (internal compiler error)
FAIL: gcc.dg/lto/20090213 c_lto_20090213_0.o-c_lto_20090213_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090218 c_lto_20090218_0.o-c_lto_20090218_3.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20090717 c_lto_20090717_0.o-c_lto_20090717_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20090717 c_lto_20090717_0.o-c_lto_20090717_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20091005-1 c_lto_20091005-1_0.o-c_lto_20091005-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O0
-fwhopr
FAIL: gcc.dg/lto/20100227-1 c_lto_20100227-1_0.o-c_lto_20100227-1_1.o link, -O2
-fwhopr
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O0 -fwhopr
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O2 -fwhopr
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O0 -flto
FAIL: gcc.dg/lto/20100518 c_lto_20100518_0.o assemble, -O2 -flto
FAIL: gcc.dg/lto/ipacp c_lto_ipacp_0.o-c_lto_ipacp_1.o link, -O1 -fwhopr
-fipa-cp -fipa-cp-clone
FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0.o-c_lto_ipareference2_1.o
link, -O1 -fwhopr -fwhole-program
FAIL: gcc.dg/lto/materialize-1 c_lto_materialize-1_0.o-c_lto_materialize-1_1.o
link, -O3 -fwhopr
=== gcc Summary for unix/-m64 ===
# of expected passes 515
# of unexpected failures 18
# of unresolved testcases 22
# of unsupported tests 6
=== gcc Summary ===
# of expected passes 1031
# of unexpected failures 35
# of unresolved testcases 43
# of unsupported tests 12
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (53 preceding siblings ...)
2010-06-06 20:23 ` dominiq at lps dot ens dot fr
@ 2010-06-14 13:14 ` howarth at nitro dot med dot uc dot edu
2010-07-17 22:55 ` steven at gcc dot gnu dot org
55 siblings, 0 replies; 57+ messages in thread
From: howarth at nitro dot med dot uc dot edu @ 2010-06-14 13:14 UTC (permalink / raw)
To: gcc-bugs
------- Comment #53 from howarth at nitro dot med dot uc dot edu 2010-06-14 13:14 -------
Now that r160722, the COFF lto patches, are committed to gcc 4.5 branch, we are
clear to backport r159173 as well for the mach-o patches. I've done this
locally and posted the testsuite results at
http://gcc.gnu.org/ml/gcc-testresults/2010-06/msg01280.html. These can be
improved by backporting the testsuite changes from r159700, r159924 and r159837
to gcc 4.5 branch as well.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
* [Bug target/43729] Mach-O LTO support needed for darwin
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
` (54 preceding siblings ...)
2010-06-14 13:14 ` howarth at nitro dot med dot uc dot edu
@ 2010-07-17 22:55 ` steven at gcc dot gnu dot org
55 siblings, 0 replies; 57+ messages in thread
From: steven at gcc dot gnu dot org @ 2010-07-17 22:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #54 from steven at gcc dot gnu dot org 2010-07-17 22:55 -------
FIXED in r162047.
--
steven at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43729
^ permalink raw reply [flat|nested] 57+ messages in thread
end of thread, other threads:[~2010-07-17 22:55 UTC | newest]
Thread overview: 57+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-04-12 15:51 [Bug target/43729] New: MachO LTO support needed for darwin howarth at nitro dot med dot uc dot edu
2010-04-12 15:55 ` [Bug target/43729] " steven at gcc dot gnu dot org
2010-04-12 16:00 ` steven at gcc dot gnu dot org
2010-04-12 16:16 ` steven at gcc dot gnu dot org
2010-04-12 17:12 ` howarth at nitro dot med dot uc dot edu
2010-04-12 21:39 ` fang at csl dot cornell dot edu
2010-04-14 22:10 ` [Bug target/43729] Mach-O " steven at gcc dot gnu dot org
2010-04-15 13:49 ` howarth at nitro dot med dot uc dot edu
2010-04-15 14:04 ` stevenb dot gcc at gmail dot com
2010-04-19 7:40 ` steven at gcc dot gnu dot org
2010-04-26 14:49 ` mrs at gcc dot gnu dot org
2010-04-26 16:07 ` stevenb dot gcc at gmail dot com
2010-04-26 18:40 ` davek at gcc dot gnu dot org
2010-04-27 2:35 ` davek at gcc dot gnu dot org
2010-04-27 20:25 ` steven at gcc dot gnu dot org
2010-04-28 12:20 ` dominiq at lps dot ens dot fr
2010-04-28 13:04 ` dominiq at lps dot ens dot fr
2010-04-28 19:50 ` steven at gcc dot gnu dot org
2010-04-29 10:48 ` steven at gcc dot gnu dot org
2010-04-29 11:39 ` steven at gcc dot gnu dot org
2010-04-29 13:20 ` howarth at nitro dot med dot uc dot edu
2010-05-01 14:40 ` steven at gcc dot gnu dot org
2010-05-01 14:43 ` steven at gcc dot gnu dot org
2010-05-01 14:53 ` rguenth at gcc dot gnu dot org
2010-05-01 15:26 ` dominiq at lps dot ens dot fr
2010-05-01 21:40 ` dominiq at lps dot ens dot fr
2010-05-01 21:51 ` steven at gcc dot gnu dot org
2010-05-01 22:19 ` howarth at nitro dot med dot uc dot edu
2010-05-01 22:31 ` stevenb dot gcc at gmail dot com
2010-05-01 23:22 ` mrs at gcc dot gnu dot org
2010-05-01 23:59 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:01 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:07 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:10 ` howarth at nitro dot med dot uc dot edu
2010-05-02 0:48 ` howarth at nitro dot med dot uc dot edu
2010-05-02 1:24 ` mrs at gcc dot gnu dot org
2010-05-02 13:11 ` howarth at nitro dot med dot uc dot edu
2010-05-02 13:59 ` howarth at nitro dot med dot uc dot edu
2010-05-02 19:16 ` howarth at nitro dot med dot uc dot edu
2010-05-03 21:40 ` mrs at gcc dot gnu dot org
2010-05-03 22:01 ` howarth at nitro dot med dot uc dot edu
2010-05-03 22:15 ` steven at gcc dot gnu dot org
2010-05-03 22:47 ` mrs at gcc dot gnu dot org
2010-05-03 23:41 ` howarth at nitro dot med dot uc dot edu
2010-05-04 8:22 ` mrs at gcc dot gnu dot org
2010-05-07 22:23 ` steven at gcc dot gnu dot org
2010-05-08 14:37 ` howarth at nitro dot med dot uc dot edu
2010-05-08 14:39 ` howarth at nitro dot med dot uc dot edu
2010-05-08 14:55 ` howarth at nitro dot med dot uc dot edu
2010-05-08 20:08 ` howarth at nitro dot med dot uc dot edu
2010-05-08 20:14 ` howarth at nitro dot med dot uc dot edu
2010-05-25 0:29 ` mrs at gcc dot gnu dot org
2010-06-06 10:50 ` dominiq at lps dot ens dot fr
2010-06-06 13:46 ` dominiq at lps dot ens dot fr
2010-06-06 20:23 ` dominiq at lps dot ens dot fr
2010-06-14 13:14 ` howarth at nitro dot med dot uc dot edu
2010-07-17 22:55 ` steven 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).