Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-04-02 Thread Gerald Pfeifer
On Mon, 14 Mar 2011, Jack Howarth wrote: >Would someone please correct http://gcc.gnu.org/gcc-4.6/changes.html by > deleting > the reference to darwin LTO support. Specifically we should just kill the > line... Done thusly. Gerald Index: changes.html ===

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-14 Thread Jack Howarth
On Mon, Mar 14, 2011 at 02:08:47PM -0700, Ian Lance Taylor wrote: > > I think you are overthinking this. What LTO needs to do is really > simple: store byte sequences with names. Anything which lets you do > that will work. You need to write it out in a way that the assembler > will accept; sim

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-14 Thread Ian Lance Taylor
Jack Howarth writes: > On Sun, Mar 13, 2011 at 11:53:59AM -0700, Ian Lance Taylor wrote: >> Jack Howarth writes: >> >> > So lto-object.c needs a rewrite to use only a single section for GNU_LTO >> > with subsections. >> > Unfortunately I can't find any documentation for using subsections in >

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-14 Thread Jack Howarth
On Sun, Mar 13, 2011 at 11:53:59AM -0700, Ian Lance Taylor wrote: > Jack Howarth writes: > > > So lto-object.c needs a rewrite to use only a single section for GNU_LTO > > with subsections. > > Unfortunately I can't find any documentation for using subsections in > > mach-o which may imply we w

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-14 Thread Jack Howarth
Would someone please correct http://gcc.gnu.org/gcc-4.6/changes.html by deleting the reference to darwin LTO support. Specifically we should just kill the line... LTO-support. Darwin has benefited from ongoing work on LTO; support for this is now stable and enabled by default. It doesn't me

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 09:38:06PM +0100, Steven Bosscher wrote: > > I agree it is probably better to re-code things, but that will be > impossible do before GCC 4.6 goes out. > > We have to make a decision: keep the LTO support for Mach-O in for now > and recommend a non-recent Xcode, disable it

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
For clarity, the radar that I filed over which Apple has inflicted this pain on us was... -- Problem ID: 7920267possible linker bug exposed by LTO 28-Apr-2010 07:18 PM Jack Howarth: The FSF gcc developers

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
Heh, so I guess it's my fault... > I dug through radar and found the bug that triggered the change to as(1): > > possible assembler bug exposed by LTO > > The bug was written (ironically) by Jack Howarth! At the time 4/28/10), > gcc's LTO was putting some LTO section first in the file and t

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 09:43:07PM +0100, Steven Bosscher wrote: > On Sun, Mar 13, 2011 at 9:41 PM, Jack Howarth > wrote: > > On Sun, Mar 13, 2011 at 09:38:06PM +0100, Steven Bosscher wrote: > >> I agree it is probably better to re-code things, but that will be > >> impossible do before GCC 4.6 g

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
Chris, Could you clarify the following question from PR48086? (In reply to comment #11) > (In reply to comment #10) > > The easiest way to fix this is maybe to just have more than one GNU_LTO > > segment. AFAIU the limit of 255 sections is a limit per segment. It is not > > difficult to have mu

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Steven Bosscher
On Sun, Mar 13, 2011 at 9:41 PM, Jack Howarth wrote: > On Sun, Mar 13, 2011 at 09:38:06PM +0100, Steven Bosscher wrote: >> I agree it is probably better to re-code things, but that will be >> impossible do before GCC 4.6 goes out. >> >> We have to make a decision: keep the LTO support for Mach-O i

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 09:38:06PM +0100, Steven Bosscher wrote: > On Sun, Mar 13, 2011 at 9:03 PM, Jack Howarth > wrote: > > On Sun, Mar 13, 2011 at 08:42:58PM +0100, Steven Bosscher wrote: > >> (sorry Chris, I forgot the list) > >> > >> On Mar 13, 2011,@11:59 AM, Chris Lattner wrote: > >> > >>

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Steven Bosscher
On Sun, Mar 13, 2011 at 9:03 PM, Jack Howarth wrote: > On Sun, Mar 13, 2011 at 08:42:58PM +0100, Steven Bosscher wrote: >> (sorry Chris, I forgot the list) >> >> On Mar 13, 2011,@11:59 AM, Chris Lattner wrote: >> >> > Sorry, I actually mean 255 of course, because of the NO_SECT >> > sentinel.  Her

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 08:42:58PM +0100, Steven Bosscher wrote: > (sorry Chris, I forgot the list) > > On Mar 13, 2011,@11:59 AM, Chris Lattner wrote: > > > Sorry, I actually mean 255 of course, because of the NO_SECT > > sentinel. Here are the relevant bits from nlist.h. I'm not > > sure how

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 12:47:22PM -0700, Chris Lattner wrote: > > On Mar 13, 2011, at 12:05 PM, Jack Howarth wrote: > > > On Sun, Mar 13, 2011 at 11:55:02AM -0700, Chris Lattner wrote: > >> > >> On Mar 13, 2011, at 11:26 AM, Jack Howarth wrote: > >> > Yes, I agree that this is a better so

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Chris Lattner
On Mar 13, 2011, at 12:42 PM, Steven Bosscher wrote: > (sorry Chris, I forgot the list) > > On Mar 13, 2011, at 11:59 AM, Chris Lattner wrote: > >> Sorry, I actually mean 255 of course, because of the NO_SECT >> sentinel. Here are the relevant bits from nlist.h. I'm not >> sure how you expect

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Chris Lattner
On Mar 13, 2011, at 12:05 PM, Jack Howarth wrote: > On Sun, Mar 13, 2011 at 11:55:02AM -0700, Chris Lattner wrote: >> >> On Mar 13, 2011, at 11:26 AM, Jack Howarth wrote: >> Yes, I agree that this is a better solution. This error was put into the linker to detect some overflow condi

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Chris Lattner
On Mar 13, 2011, at 12:07 PM, Jan Hubicka wrote: >> >> Yes, I agree that this is a better solution. This error was put into the >> linker to detect some overflow conditions for part of the code that expected >> the section number to only be a byte. It is likely that "things worked" >> only

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Steven Bosscher
(sorry Chris, I forgot the list) On Mar 13, 2011, at 11:59 AM, Chris Lattner wrote: > Sorry, I actually mean 255 of course, because of the NO_SECT > sentinel. Here are the relevant bits from nlist.h. I'm not > sure how you expect the toolchain to store more than 256 > sections in a uint8_t. Ho

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 11:59:33AM -0700, Chris Lattner wrote: > On Mar 13, 2011, at 11:55 AM, Chris Lattner wrote: > > On Mar 13, 2011, at 11:26 AM, Jack Howarth wrote: > > > >>> Yes, I agree that this is a better solution. This error was put into the > >>> linker to detect some overflow condit

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jan Hubicka
> > On Mar 13, 2011, at 8:38 AM, Jack Howarth wrote: > > > On Sun, Mar 13, 2011 at 12:39:26PM +0100, Jan Hubicka wrote: > >>> With release of Xcode 3.2.6/4.0 this week, an unfortunate change was > >>> made to > >>> the darwin assembler which effectively breaks LTO support for darwin. The > >>

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 11:55:02AM -0700, Chris Lattner wrote: > > On Mar 13, 2011, at 11:26 AM, Jack Howarth wrote: > > >> Yes, I agree that this is a better solution. This error was put into the > >> linker to detect some overflow conditions for part of the code that > >> expected the sectio

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Chris Lattner
On Mar 13, 2011, at 11:55 AM, Chris Lattner wrote: > On Mar 13, 2011, at 11:26 AM, Jack Howarth wrote: > >>> Yes, I agree that this is a better solution. This error was put into the >>> linker to detect some overflow conditions for part of the code that >>> expected the section number to only b

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Chris Lattner
On Mar 13, 2011, at 11:26 AM, Jack Howarth wrote: >> Yes, I agree that this is a better solution. This error was put into the >> linker to detect some overflow conditions for part of the code that expected >> the section number to only be a byte. It is likely that "things worked" >> only out

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Ian Lance Taylor
Jack Howarth writes: > So lto-object.c needs a rewrite to use only a single section for GNU_LTO with > subsections. > Unfortunately I can't find any documentation for using subsections in mach-o > which may imply we will > be forced to use an elf container to obtain those, no? We can format th

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 12:39:26PM +0100, Jan Hubicka wrote: > >With release of Xcode 3.2.6/4.0 this week, an unfortunate change was > > made to > > the darwin assembler which effectively breaks LTO support for darwin. The > > design > > of LTO on darwin was based on the fact that mach-o obje

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 11:19:13AM -0700, Chris Lattner wrote: > > On Mar 13, 2011, at 8:38 AM, Jack Howarth wrote: > > > On Sun, Mar 13, 2011 at 12:39:26PM +0100, Jan Hubicka wrote: > >>> With release of Xcode 3.2.6/4.0 this week, an unfortunate change was > >>> made to > >>> the darwin assem

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Chris Lattner
On Mar 13, 2011, at 8:38 AM, Jack Howarth wrote: > On Sun, Mar 13, 2011 at 12:39:26PM +0100, Jan Hubicka wrote: >>> With release of Xcode 3.2.6/4.0 this week, an unfortunate change was made >>> to >>> the darwin assembler which effectively breaks LTO support for darwin. The >>> design >>> of

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jack Howarth
On Sun, Mar 13, 2011 at 12:39:26PM +0100, Jan Hubicka wrote: > >With release of Xcode 3.2.6/4.0 this week, an unfortunate change was > > made to > > the darwin assembler which effectively breaks LTO support for darwin. The > > design > > of LTO on darwin was based on the fact that mach-o obje

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-13 Thread Jan Hubicka
>With release of Xcode 3.2.6/4.0 this week, an unfortunate change was made > to > the darwin assembler which effectively breaks LTO support for darwin. The > design > of LTO on darwin was based on the fact that mach-o object files tolerated > additional > sections as long as they didin't con

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-12 Thread Jack Howarth
On Sat, Mar 12, 2011 at 09:34:01PM -0800, Chris Lattner wrote: > > On Mar 12, 2011, at 8:17 PM, Jack Howarth wrote: > > > With release of Xcode 3.2.6/4.0 this week, an unfortunate change was made > > to > > the darwin assembler which effectively breaks LTO support for darwin. The > > design >

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-12 Thread Chris Lattner
On Mar 12, 2011, at 8:17 PM, Jack Howarth wrote: > With release of Xcode 3.2.6/4.0 this week, an unfortunate change was made to > the darwin assembler which effectively breaks LTO support for darwin. The > design > of LTO on darwin was based on the fact that mach-o object files tolerated > ad

Re: darwin LTO broken under Xcode 3.2.6/4.0

2011-03-12 Thread Ian Lance Taylor
Jack Howarth writes: >With release of Xcode 3.2.6/4.0 this week, an unfortunate change was made > to > the darwin assembler which effectively breaks LTO support for darwin. The > design > of LTO on darwin was based on the fact that mach-o object files tolerated > additional > sections as l

darwin LTO broken under Xcode 3.2.6/4.0

2011-03-12 Thread Jack Howarth
With release of Xcode 3.2.6/4.0 this week, an unfortunate change was made to the darwin assembler which effectively breaks LTO support for darwin. The design of LTO on darwin was based on the fact that mach-o object files tolerated additional sections as long as they didin't contain symbols. Wi