public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] enable omit-frame-pointer on darwin with dwarf2
@ 2010-08-13 10:02 Jack Howarth
  2010-08-13 12:33 ` Mike Stump
  2010-08-13 16:02 ` H.J. Lu
  0 siblings, 2 replies; 6+ messages in thread
From: Jack Howarth @ 2010-08-13 10:02 UTC (permalink / raw)
  To: gcc-patches; +Cc: mikestump, iains

The attached patch enables -fomit-frame-pointer for those darwin
releases which support dwarf2. Bootstrapped and regression tested
on x86_64-apple-darwin10. Okay for gcc trunk?
                 Jack

2010-08-12  Jack Howarth <howarth@bromo.med.uc.edu>

	* gcc/configure.ac: Enable -fomit-frame-pointer on darwin
	which support dwarf2.
	* config/i386/i386.c (override_options): Same.


Index: gcc/configure.ac
===================================================================
--- gcc/configure.ac	(revision 163214)
+++ gcc/configure.ac	(working copy)
@@ -1584,7 +1584,7 @@
 [  --enable-frame-pointer  enable -fno-omit-frame-pointer by default for 32bit x86], [],
 [
 case $target_os in
-linux*)
+linux* | darwin[[8912]]*)
   # Enable -fomit-frame-pointer by default for Linux.
   enable_frame_pointer=no
   ;;
Index: gcc/config/i386/i386.c
===================================================================
--- gcc/config/i386/i386.c	(revision 163214)
+++ gcc/config/i386/i386.c	(working copy)
@@ -3276,9 +3276,8 @@
     {
       if (flag_zee == 2)
         flag_zee = 1;
-      /* Mach-O doesn't support omitting the frame pointer for now.  */
       if (flag_omit_frame_pointer == 2)
-	flag_omit_frame_pointer = (TARGET_MACHO ? 0 : 1);
+	flag_omit_frame_pointer = 1;
       if (flag_asynchronous_unwind_tables == 2)
 	flag_asynchronous_unwind_tables = 1;
       if (flag_pcc_struct_return == 2)
@@ -3288,10 +3287,8 @@
     {
       if (flag_zee == 2)
         flag_zee = 0;
-      /* Mach-O doesn't support omitting the frame pointer for now.  */
       if (flag_omit_frame_pointer == 2)
-	flag_omit_frame_pointer =
-	  (TARGET_MACHO ? 0 : !(USE_IX86_FRAME_POINTER || optimize_size));
+	flag_omit_frame_pointer = !(USE_IX86_FRAME_POINTER || optimize_size);
       if (flag_asynchronous_unwind_tables == 2)
 	flag_asynchronous_unwind_tables = !USE_IX86_FRAME_POINTER;
       if (flag_pcc_struct_return == 2)

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] enable omit-frame-pointer on darwin with dwarf2
  2010-08-13 10:02 [PATCH] enable omit-frame-pointer on darwin with dwarf2 Jack Howarth
@ 2010-08-13 12:33 ` Mike Stump
  2010-08-13 16:02 ` H.J. Lu
  1 sibling, 0 replies; 6+ messages in thread
From: Mike Stump @ 2010-08-13 12:33 UTC (permalink / raw)
  To: Jack Howarth; +Cc: gcc-patches, iains

On Aug 13, 2010, at 2:56 AM, Jack Howarth wrote:
> Okay for gcc trunk?

Ok.  Be on the lookout for anyone that spots hardships we didn't cover.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] enable omit-frame-pointer on darwin with dwarf2
  2010-08-13 10:02 [PATCH] enable omit-frame-pointer on darwin with dwarf2 Jack Howarth
  2010-08-13 12:33 ` Mike Stump
@ 2010-08-13 16:02 ` H.J. Lu
  2010-08-13 16:09   ` Jack Howarth
  2010-08-13 18:55   ` Mike Stump
  1 sibling, 2 replies; 6+ messages in thread
From: H.J. Lu @ 2010-08-13 16:02 UTC (permalink / raw)
  To: Jack Howarth; +Cc: gcc-patches, mikestump, iains

On Fri, Aug 13, 2010 at 2:56 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
> The attached patch enables -fomit-frame-pointer for those darwin
> releases which support dwarf2. Bootstrapped and regression tested
> on x86_64-apple-darwin10. Okay for gcc trunk?
>                 Jack
>
> 2010-08-12  Jack Howarth <howarth@bromo.med.uc.edu>
>
>        * gcc/configure.ac: Enable -fomit-frame-pointer on darwin
>        which support dwarf2.
>        * config/i386/i386.c (override_options): Same.
>
>
> Index: gcc/configure.ac
> ===================================================================
> --- gcc/configure.ac    (revision 163214)
> +++ gcc/configure.ac    (working copy)
> @@ -1584,7 +1584,7 @@
>  [  --enable-frame-pointer  enable -fno-omit-frame-pointer by default for 32bit x86], [],
>  [
>  case $target_os in
> -linux*)
> +linux* | darwin[[8912]]*)

This will match darwin8*, darwin9*, darwin1*, darwin2*. Is this what you want?

>   # Enable -fomit-frame-pointer by default for Linux.

You should mention Darwin here.

>   enable_frame_pointer=no
>   ;;


H.J.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] enable omit-frame-pointer on darwin with dwarf2
  2010-08-13 16:02 ` H.J. Lu
@ 2010-08-13 16:09   ` Jack Howarth
  2010-08-13 17:22     ` H.J. Lu
  2010-08-13 18:55   ` Mike Stump
  1 sibling, 1 reply; 6+ messages in thread
From: Jack Howarth @ 2010-08-13 16:09 UTC (permalink / raw)
  To: H.J. Lu; +Cc: gcc-patches, mikestump, iains

On Fri, Aug 13, 2010 at 08:59:50AM -0700, H.J. Lu wrote:
> On Fri, Aug 13, 2010 at 2:56 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
> > The attached patch enables -fomit-frame-pointer for those darwin
> > releases which support dwarf2. Bootstrapped and regression tested
> > on x86_64-apple-darwin10. Okay for gcc trunk?
> >                 Jack
> >
> > 2010-08-12  Jack Howarth <howarth@bromo.med.uc.edu>
> >
> >        * gcc/configure.ac: Enable -fomit-frame-pointer on darwin
> >        which support dwarf2.
> >        * config/i386/i386.c (override_options): Same.
> >
> >
> > Index: gcc/configure.ac
> > ===================================================================
> > --- gcc/configure.ac    (revision 163214)
> > +++ gcc/configure.ac    (working copy)
> > @@ -1584,7 +1584,7 @@
> >  [  --enable-frame-pointer  enable -fno-omit-frame-pointer by default for 32bit x86], [],
> >  [
> >  case $target_os in
> > -linux*)
> > +linux* | darwin[[8912]]*)
> 
> This will match darwin8*, darwin9*, darwin1*, darwin2*. Is this what you want?

Yes. The idea is to enable -fomit-frame-pointer on all darwin releases
which support dwarf2. It could have been simplier if we had already
depreciated out support for darwin7 (which only supports stabs) but
I haven't gotten around to that yet.

> 
> >   # Enable -fomit-frame-pointer by default for Linux.

Can you just change that to 

   # Enable -fomit-frame-pointer by default for Linux and Darwin with dwarf2.

or do I need to recreate the patch?

> 
> You should mention Darwin here.
> 
> >   enable_frame_pointer=no
> >   ;;
> 
> 
> H.J.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] enable omit-frame-pointer on darwin with dwarf2
  2010-08-13 16:09   ` Jack Howarth
@ 2010-08-13 17:22     ` H.J. Lu
  0 siblings, 0 replies; 6+ messages in thread
From: H.J. Lu @ 2010-08-13 17:22 UTC (permalink / raw)
  To: Jack Howarth; +Cc: gcc-patches, mikestump, iains

On Fri, Aug 13, 2010 at 9:09 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
> On Fri, Aug 13, 2010 at 08:59:50AM -0700, H.J. Lu wrote:
>> On Fri, Aug 13, 2010 at 2:56 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
>> > The attached patch enables -fomit-frame-pointer for those darwin
>> > releases which support dwarf2. Bootstrapped and regression tested
>> > on x86_64-apple-darwin10. Okay for gcc trunk?
>> >                 Jack
>> >
>> > 2010-08-12  Jack Howarth <howarth@bromo.med.uc.edu>
>> >
>> >        * gcc/configure.ac: Enable -fomit-frame-pointer on darwin
>> >        which support dwarf2.
>> >        * config/i386/i386.c (override_options): Same.
>> >
>> >
>> > Index: gcc/configure.ac
>> > ===================================================================
>> > --- gcc/configure.ac    (revision 163214)
>> > +++ gcc/configure.ac    (working copy)
>> > @@ -1584,7 +1584,7 @@
>> >  [  --enable-frame-pointer  enable -fno-omit-frame-pointer by default for 32bit x86], [],
>> >  [
>> >  case $target_os in
>> > -linux*)
>> > +linux* | darwin[[8912]]*)
>>
>> This will match darwin8*, darwin9*, darwin1*, darwin2*. Is this what you want?
>
> Yes. The idea is to enable -fomit-frame-pointer on all darwin releases
> which support dwarf2. It could have been simplier if we had already
> depreciated out support for darwin7 (which only supports stabs) but
> I haven't gotten around to that yet.
>
>>
>> >   # Enable -fomit-frame-pointer by default for Linux.
>
> Can you just change that to
>
>    # Enable -fomit-frame-pointer by default for Linux and Darwin with dwarf2.
>
> or do I need to recreate the patch?
>

I will take care of it.


-- 
H.J.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] enable omit-frame-pointer on darwin with dwarf2
  2010-08-13 16:02 ` H.J. Lu
  2010-08-13 16:09   ` Jack Howarth
@ 2010-08-13 18:55   ` Mike Stump
  1 sibling, 0 replies; 6+ messages in thread
From: Mike Stump @ 2010-08-13 18:55 UTC (permalink / raw)
  To: H.J. Lu; +Cc: Jack Howarth, gcc-patches, iains

On Aug 13, 2010, at 8:59 AM, H.J. Lu wrote:
> This will match darwin8*, darwin9*, darwin1*, darwin2*. Is this what you want?

Yes...  We want darwin10, darwin11... darwin29... by the time we hit darwin30, this code will break, and we'll have to maintain it, if it still exists.  This form allows a grep to find all the places that are like this.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-08-13 17:49 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-13 10:02 [PATCH] enable omit-frame-pointer on darwin with dwarf2 Jack Howarth
2010-08-13 12:33 ` Mike Stump
2010-08-13 16:02 ` H.J. Lu
2010-08-13 16:09   ` Jack Howarth
2010-08-13 17:22     ` H.J. Lu
2010-08-13 18:55   ` Mike Stump

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).