* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
@ 2008-11-05 16:52 Uros Bizjak
2008-11-05 18:18 ` H.J. Lu
0 siblings, 1 reply; 15+ messages in thread
From: Uros Bizjak @ 2008-11-05 16:52 UTC (permalink / raw)
To: GCC Patches; +Cc: H.J. Lu
Hello!
> Here is the updated version. When we update stack boundary before
> expanding a function, we don't need to check parm_stack_boundary
> in expand_stack_alignment. Tested on Linux/ia32, Linux/Intel64 and
> Linux/ia64. OK for trunk?
>
> Thanks.
>
>
> --
> H.J.
> ----
> gcc/
>
> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
> Joey Ye <joey.ye@intel.com>
>
> PR middle-end/37843
> * cfgexpand.c (expand_stack_alignment): Don't update stack
> boundary nor check incoming stack boundary here.
> (gimple_expand_cfg): Update stack boundary and check incoming
> stack boundary here.
>
> * config/i386/i386.c (ix86_function_ok_for_sibcall): Return
> false if we need to align the outgoing stack.
> (ix86_update_stack_boundary): Check parm_stack_boundary.
>
> gcc/testsuite/
>
> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>
> PR middle-end/37843
> * gcc.target/i386/align-main-3.c: New.
> * gcc.target/i386/pr37843-1.c: Likewise.
> * gcc.target/i386/pr37843-2.c: Likewise.
> * gcc.target/i386/pr37843-3.c: Likewise.
>
> --- gcc/testsuite/gcc.target/i386/align-main-3.c.sibcall 2008-11-04 08:33:41.000000000 -0800
> +++ gcc/testsuite/gcc.target/i386/align-main-3.c 2008-11-04 08:33:41.000000000 -0800
> @@ -0,0 +1,14 @@
> +/* Test for stack alignment with sibcall optimization. */
> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32 } } } */
>
It is enough to check for "target { *-*-linux* && ilp32 }", since we
execute gcc.target/i386 for i?86 and x86_64 targets only.
> --- gcc/testsuite/gcc.target/i386/pr37843-3.c.sibcall 2008-11-04 08:33:41.000000000 -0800
> +++ gcc/testsuite/gcc.target/i386/pr37843-3.c 2008-11-04 08:33:41.000000000 -0800
> @@ -0,0 +1,13 @@
> +/* Test for stack alignment with sibcall optimization. */
> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32 } } } */
>
Same here.
Thanks,
Uros.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-05 16:52 PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP Uros Bizjak
@ 2008-11-05 18:18 ` H.J. Lu
2008-11-11 12:19 ` H.J. Lu
2008-11-26 15:57 ` H.J. Lu
0 siblings, 2 replies; 15+ messages in thread
From: H.J. Lu @ 2008-11-05 18:18 UTC (permalink / raw)
To: Uros Bizjak, Ye, Joey, Guo, Xuepeng; +Cc: GCC Patches
[-- Attachment #1: Type: text/plain, Size: 2247 bytes --]
On Wed, Nov 5, 2008 at 8:49 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
> Hello!
>
>> Here is the updated version. When we update stack boundary before
>> expanding a function, we don't need to check parm_stack_boundary
>> in expand_stack_alignment. Tested on Linux/ia32, Linux/Intel64 and
>> Linux/ia64. OK for trunk?
>>
>> Thanks.
>>
>>
>> --
>> H.J.
>> ----
>> gcc/
>>
>> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>> Joey Ye <joey.ye@intel.com>
>>
>> PR middle-end/37843
>> * cfgexpand.c (expand_stack_alignment): Don't update stack
>> boundary nor check incoming stack boundary here.
>> (gimple_expand_cfg): Update stack boundary and check incoming
>> stack boundary here.
>>
>> * config/i386/i386.c (ix86_function_ok_for_sibcall): Return
>> false if we need to align the outgoing stack.
>> (ix86_update_stack_boundary): Check parm_stack_boundary.
>>
>> gcc/testsuite/
>>
>> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>>
>> PR middle-end/37843
>> * gcc.target/i386/align-main-3.c: New.
>> * gcc.target/i386/pr37843-1.c: Likewise.
>> * gcc.target/i386/pr37843-2.c: Likewise.
>> * gcc.target/i386/pr37843-3.c: Likewise.
>>
>
>> --- gcc/testsuite/gcc.target/i386/align-main-3.c.sibcall 2008-11-04
>> 08:33:41.000000000 -0800
>> +++ gcc/testsuite/gcc.target/i386/align-main-3.c 2008-11-04
>> 08:33:41.000000000 -0800
>> @@ -0,0 +1,14 @@
>> +/* Test for stack alignment with sibcall optimization. */
>> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
>> } } } */
>>
>
>
> It is enough to check for "target { *-*-linux* && ilp32 }", since we
> execute gcc.target/i386 for i?86 and x86_64 targets only.
>
>> --- gcc/testsuite/gcc.target/i386/pr37843-3.c.sibcall 2008-11-04
>> 08:33:41.000000000 -0800
>> +++ gcc/testsuite/gcc.target/i386/pr37843-3.c 2008-11-04
>> 08:33:41.000000000 -0800
>> @@ -0,0 +1,13 @@
>> +/* Test for stack alignment with sibcall optimization. */
>> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
>> } } } */
>>
>
> Same here.
>
Here is the updated patch. Tested on Linux/ia32, Linux/Intel64 and
Linux/ia64. OK for trunk?
Thanks.
--
H.J.
[-- Attachment #2: gcc-sibcall-4.patch --]
[-- Type: application/octet-stream, Size: 6604 bytes --]
gcc/
2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
Joey Ye <joey.ye@intel.com>
PR middle-end/37843
* cfgexpand.c (expand_stack_alignment): Don't update stack
boundary nor check incoming stack boundary here.
(gimple_expand_cfg): Update stack boundary and check incoming
stack boundary here.
* config/i386/i386.c (ix86_function_ok_for_sibcall): Return
false if we need to align the outgoing stack.
(ix86_update_stack_boundary): Check parm_stack_boundary.
gcc/testsuite/
2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/37843
* gcc.target/i386/align-main-3.c: New.
* gcc.target/i386/pr37843-1.c: Likewise.
* gcc.target/i386/pr37843-2.c: Likewise.
* gcc.target/i386/pr37843-3.c: Likewise.
--- gcc/cfgexpand.c.sibcall 2008-10-09 07:05:53.000000000 -0700
+++ gcc/cfgexpand.c 2008-11-04 21:44:12.000000000 -0800
@@ -2218,7 +2218,7 @@ static void
expand_stack_alignment (void)
{
rtx drap_rtx;
- unsigned int preferred_stack_boundary, incoming_stack_boundary;
+ unsigned int preferred_stack_boundary;
if (! SUPPORTS_STACK_ALIGNMENT)
return;
@@ -2231,10 +2231,6 @@ expand_stack_alignment (void)
gcc_assert (crtl->stack_alignment_needed
<= crtl->stack_alignment_estimated);
- /* Update stack boundary if needed. */
- if (targetm.calls.update_stack_boundary)
- targetm.calls.update_stack_boundary ();
-
/* Update crtl->stack_alignment_estimated and use it later to align
stack. We check PREFERRED_STACK_BOUNDARY if there may be non-call
exceptions since callgraph doesn't collect incoming stack alignment
@@ -2249,15 +2245,8 @@ expand_stack_alignment (void)
if (preferred_stack_boundary > crtl->stack_alignment_needed)
crtl->stack_alignment_needed = preferred_stack_boundary;
- /* The incoming stack frame has to be aligned at least at
- parm_stack_boundary. */
- if (crtl->parm_stack_boundary > INCOMING_STACK_BOUNDARY)
- incoming_stack_boundary = crtl->parm_stack_boundary;
- else
- incoming_stack_boundary = INCOMING_STACK_BOUNDARY;
-
crtl->stack_realign_needed
- = incoming_stack_boundary < crtl->stack_alignment_estimated;
+ = INCOMING_STACK_BOUNDARY < crtl->stack_alignment_estimated;
crtl->stack_realign_tried = crtl->stack_realign_needed;
crtl->stack_realign_processed = true;
@@ -2362,6 +2351,17 @@ gimple_expand_cfg (void)
if (crtl->stack_protect_guard)
stack_protect_prologue ();
+ /* Update stack boundary if needed. */
+ if (SUPPORTS_STACK_ALIGNMENT)
+ {
+ if (targetm.calls.update_stack_boundary)
+ targetm.calls.update_stack_boundary ();
+
+ /* The incoming stack frame has to be aligned at least at
+ parm_stack_boundary. */
+ gcc_assert (crtl->parm_stack_boundary <= INCOMING_STACK_BOUNDARY);
+ }
+
/* Register rtl specific functions for cfg. */
rtl_register_cfg_hooks ();
--- gcc/config/i386/i386.c.sibcall 2008-11-04 21:44:12.000000000 -0800
+++ gcc/config/i386/i386.c 2008-11-04 21:44:12.000000000 -0800
@@ -4116,6 +4116,11 @@ ix86_function_ok_for_sibcall (tree decl,
&& ix86_function_regparm (TREE_TYPE (decl), NULL) >= 3)
return false;
+ /* If we need to align the outgoing stack, then sibcalling would
+ unalign the stack, which may break the called function. */
+ if (ix86_incoming_stack_boundary < PREFERRED_STACK_BOUNDARY)
+ return false;
+
/* Otherwise okay. That also includes certain types of indirect calls. */
return true;
}
@@ -7765,6 +7770,11 @@ ix86_update_stack_boundary (void)
TYPE_ATTRIBUTES (TREE_TYPE (current_function_decl))))
ix86_incoming_stack_boundary = MIN_STACK_BOUNDARY;
+ /* The incoming stack frame has to be aligned at least at
+ parm_stack_boundary. */
+ if (ix86_incoming_stack_boundary < crtl->parm_stack_boundary)
+ ix86_incoming_stack_boundary = crtl->parm_stack_boundary;
+
/* Stack at entrance of main is aligned by runtime. We use the
smallest incoming stack boundary. */
if (ix86_incoming_stack_boundary > MAIN_STACK_BOUNDARY
--- gcc/testsuite/gcc.target/i386/align-main-3.c.sibcall 2008-11-04 21:44:12.000000000 -0800
+++ gcc/testsuite/gcc.target/i386/align-main-3.c 2008-11-05 09:58:01.000000000 -0800
@@ -0,0 +1,14 @@
+/* Test for stack alignment with sibcall optimization. */
+/* { dg-do compile { target { *-*-linux* && ilp32 } } } */
+/* { dg-options "-O2 -mpreferred-stack-boundary=4 -mincoming-stack-boundary=2" } */
+/* { dg-final { scan-assembler "andl\[\\t \]*\\$-16,\[\\t \]*%\[re\]?sp" } } */
+/* { dg-final { scan-assembler "call\[\\t \]*foo" } } */
+/* { dg-final { scan-assembler-not "jmp\[\\t \]*foo" } } */
+
+extern int foo (void);
+
+int
+main ()
+{
+ return foo ();
+}
--- gcc/testsuite/gcc.target/i386/pr37843-1.c.sibcall 2008-11-04 21:44:12.000000000 -0800
+++ gcc/testsuite/gcc.target/i386/pr37843-1.c 2008-11-04 21:44:12.000000000 -0800
@@ -0,0 +1,12 @@
+/* Test for stack alignment with sibcall optimization. */
+/* { dg-options "-O2 -mpreferred-stack-boundary=6 -mincoming-stack-boundary=5" } */
+/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-64,\[\\t \]*%\[re\]?sp" } } */
+/* { dg-final { scan-assembler "call\[\\t \]*foo" } } */
+/* { dg-final { scan-assembler-not "jmp\[\\t \]*foo" } } */
+
+extern int foo (void);
+
+int bar (void)
+{
+ return foo();
+}
--- gcc/testsuite/gcc.target/i386/pr37843-2.c.sibcall 2008-11-04 21:44:12.000000000 -0800
+++ gcc/testsuite/gcc.target/i386/pr37843-2.c 2008-11-04 21:44:12.000000000 -0800
@@ -0,0 +1,12 @@
+/* Test for stack alignment with sibcall optimization. */
+/* { dg-options "-O2 -mpreferred-stack-boundary=6 -mincoming-stack-boundary=6" } */
+/* { dg-final { scan-assembler-not "and\[lq\]?\[\\t \]*\\$-64,\[\\t \]*%\[re\]?sp" } } */
+/* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
+/* { dg-final { scan-assembler "jmp\[\\t \]*foo" } } */
+
+extern int foo (void);
+
+int bar (void)
+{
+ return foo();
+}
--- gcc/testsuite/gcc.target/i386/pr37843-3.c.sibcall 2008-11-04 21:44:12.000000000 -0800
+++ gcc/testsuite/gcc.target/i386/pr37843-3.c 2008-11-05 09:58:13.000000000 -0800
@@ -0,0 +1,13 @@
+/* Test for stack alignment with sibcall optimization. */
+/* { dg-do compile { target { *-*-linux* && ilp32 } } } */
+/* { dg-options "-O2 -std=gnu99 -mpreferred-stack-boundary=4 -mincoming-stack-boundary=2" } */
+/* { dg-final { scan-assembler-not "andl\[\\t \]*\\$-16,\[\\t \]*%\[re\]?sp" } } */
+/* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
+/* { dg-final { scan-assembler "jmp\[\\t \]*foo" } } */
+
+extern int foo (_Decimal128);
+
+int bar (_Decimal128 x)
+{
+ return foo(x);
+}
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-05 18:18 ` H.J. Lu
@ 2008-11-11 12:19 ` H.J. Lu
2008-11-19 18:27 ` H.J. Lu
2008-11-26 15:57 ` H.J. Lu
1 sibling, 1 reply; 15+ messages in thread
From: H.J. Lu @ 2008-11-11 12:19 UTC (permalink / raw)
To: Uros Bizjak, Ye, Joey, Guo, Xuepeng; +Cc: GCC Patches
On Wed, Nov 5, 2008 at 10:06 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Wed, Nov 5, 2008 at 8:49 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
>> Hello!
>>
>>> Here is the updated version. When we update stack boundary before
>>> expanding a function, we don't need to check parm_stack_boundary
>>> in expand_stack_alignment. Tested on Linux/ia32, Linux/Intel64 and
>>> Linux/ia64. OK for trunk?
>>>
>>> Thanks.
>>>
>>>
>>> --
>>> H.J.
>>> ----
>>> gcc/
>>>
>>> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>>> Joey Ye <joey.ye@intel.com>
>>>
>>> PR middle-end/37843
>>> * cfgexpand.c (expand_stack_alignment): Don't update stack
>>> boundary nor check incoming stack boundary here.
>>> (gimple_expand_cfg): Update stack boundary and check incoming
>>> stack boundary here.
>>>
>>> * config/i386/i386.c (ix86_function_ok_for_sibcall): Return
>>> false if we need to align the outgoing stack.
>>> (ix86_update_stack_boundary): Check parm_stack_boundary.
>>>
>>> gcc/testsuite/
>>>
>>> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>>>
>>> PR middle-end/37843
>>> * gcc.target/i386/align-main-3.c: New.
>>> * gcc.target/i386/pr37843-1.c: Likewise.
>>> * gcc.target/i386/pr37843-2.c: Likewise.
>>> * gcc.target/i386/pr37843-3.c: Likewise.
>>>
>>
>>> --- gcc/testsuite/gcc.target/i386/align-main-3.c.sibcall 2008-11-04
>>> 08:33:41.000000000 -0800
>>> +++ gcc/testsuite/gcc.target/i386/align-main-3.c 2008-11-04
>>> 08:33:41.000000000 -0800
>>> @@ -0,0 +1,14 @@
>>> +/* Test for stack alignment with sibcall optimization. */
>>> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
>>> } } } */
>>>
>>
>>
>> It is enough to check for "target { *-*-linux* && ilp32 }", since we
>> execute gcc.target/i386 for i?86 and x86_64 targets only.
>>
>>> --- gcc/testsuite/gcc.target/i386/pr37843-3.c.sibcall 2008-11-04
>>> 08:33:41.000000000 -0800
>>> +++ gcc/testsuite/gcc.target/i386/pr37843-3.c 2008-11-04
>>> 08:33:41.000000000 -0800
>>> @@ -0,0 +1,13 @@
>>> +/* Test for stack alignment with sibcall optimization. */
>>> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
>>> } } } */
>>>
>>
>> Same here.
>>
>
> Here is the updated patch. Tested on Linux/ia32, Linux/Intel64 and
> Linux/ia64. OK for trunk?
>
> Thanks.
>
Ping.
--
H.J.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-11 12:19 ` H.J. Lu
@ 2008-11-19 18:27 ` H.J. Lu
0 siblings, 0 replies; 15+ messages in thread
From: H.J. Lu @ 2008-11-19 18:27 UTC (permalink / raw)
To: Uros Bizjak, Ye, Joey, Guo, Xuepeng; +Cc: GCC Patches
On Mon, Nov 10, 2008 at 10:50 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Wed, Nov 5, 2008 at 10:06 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Wed, Nov 5, 2008 at 8:49 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
>>> Hello!
>>>
>>>> Here is the updated version. When we update stack boundary before
>>>> expanding a function, we don't need to check parm_stack_boundary
>>>> in expand_stack_alignment. Tested on Linux/ia32, Linux/Intel64 and
>>>> Linux/ia64. OK for trunk?
>>>>
>>>> Thanks.
>>>>
>>>>
>>>> --
>>>> H.J.
>>>> ----
>>>> gcc/
>>>>
>>>> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>>>> Joey Ye <joey.ye@intel.com>
>>>>
>>>> PR middle-end/37843
>>>> * cfgexpand.c (expand_stack_alignment): Don't update stack
>>>> boundary nor check incoming stack boundary here.
>>>> (gimple_expand_cfg): Update stack boundary and check incoming
>>>> stack boundary here.
>>>>
>>>> * config/i386/i386.c (ix86_function_ok_for_sibcall): Return
>>>> false if we need to align the outgoing stack.
>>>> (ix86_update_stack_boundary): Check parm_stack_boundary.
>>>>
>>>> gcc/testsuite/
>>>>
>>>> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
>>>>
>>>> PR middle-end/37843
>>>> * gcc.target/i386/align-main-3.c: New.
>>>> * gcc.target/i386/pr37843-1.c: Likewise.
>>>> * gcc.target/i386/pr37843-2.c: Likewise.
>>>> * gcc.target/i386/pr37843-3.c: Likewise.
>>>>
>>>
>>>> --- gcc/testsuite/gcc.target/i386/align-main-3.c.sibcall 2008-11-04
>>>> 08:33:41.000000000 -0800
>>>> +++ gcc/testsuite/gcc.target/i386/align-main-3.c 2008-11-04
>>>> 08:33:41.000000000 -0800
>>>> @@ -0,0 +1,14 @@
>>>> +/* Test for stack alignment with sibcall optimization. */
>>>> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
>>>> } } } */
>>>>
>>>
>>>
>>> It is enough to check for "target { *-*-linux* && ilp32 }", since we
>>> execute gcc.target/i386 for i?86 and x86_64 targets only.
>>>
>>>> --- gcc/testsuite/gcc.target/i386/pr37843-3.c.sibcall 2008-11-04
>>>> 08:33:41.000000000 -0800
>>>> +++ gcc/testsuite/gcc.target/i386/pr37843-3.c 2008-11-04
>>>> 08:33:41.000000000 -0800
>>>> @@ -0,0 +1,13 @@
>>>> +/* Test for stack alignment with sibcall optimization. */
>>>> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
>>>> } } } */
>>>>
>>>
>>> Same here.
>>>
>>
>> Here is the updated patch. Tested on Linux/ia32, Linux/Intel64 and
>> Linux/ia64. OK for trunk?
>>
>> Thanks.
>>
>
> Ping.
>
PING.
--
H.J.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-05 18:18 ` H.J. Lu
2008-11-11 12:19 ` H.J. Lu
@ 2008-11-26 15:57 ` H.J. Lu
2008-11-26 19:08 ` Jack Howarth
1 sibling, 1 reply; 15+ messages in thread
From: H.J. Lu @ 2008-11-26 15:57 UTC (permalink / raw)
To: Uros Bizjak, Ye, Joey, Guo, Xuepeng; +Cc: GCC Patches
On Wed, Nov 05, 2008 at 10:06:57AM -0800, H.J. Lu wrote:
> On Wed, Nov 5, 2008 at 8:49 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
> > Hello!
> >
> >> Here is the updated version. When we update stack boundary before
> >> expanding a function, we don't need to check parm_stack_boundary
> >> in expand_stack_alignment. Tested on Linux/ia32, Linux/Intel64 and
> >> Linux/ia64. OK for trunk?
> >>
> >> Thanks.
> >>
> >>
> >> --
> >> H.J.
> >> ----
> >> gcc/
> >>
> >> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
> >> Joey Ye <joey.ye@intel.com>
> >>
> >> PR middle-end/37843
> >> * cfgexpand.c (expand_stack_alignment): Don't update stack
> >> boundary nor check incoming stack boundary here.
> >> (gimple_expand_cfg): Update stack boundary and check incoming
> >> stack boundary here.
> >>
> >> * config/i386/i386.c (ix86_function_ok_for_sibcall): Return
> >> false if we need to align the outgoing stack.
> >> (ix86_update_stack_boundary): Check parm_stack_boundary.
> >>
> >> gcc/testsuite/
> >>
> >> 2008-11-04 H.J. Lu <hongjiu.lu@intel.com>
> >>
> >> PR middle-end/37843
> >> * gcc.target/i386/align-main-3.c: New.
> >> * gcc.target/i386/pr37843-1.c: Likewise.
> >> * gcc.target/i386/pr37843-2.c: Likewise.
> >> * gcc.target/i386/pr37843-3.c: Likewise.
> >>
> >
> >> --- gcc/testsuite/gcc.target/i386/align-main-3.c.sibcall 2008-11-04
> >> 08:33:41.000000000 -0800
> >> +++ gcc/testsuite/gcc.target/i386/align-main-3.c 2008-11-04
> >> 08:33:41.000000000 -0800
> >> @@ -0,0 +1,14 @@
> >> +/* Test for stack alignment with sibcall optimization. */
> >> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
> >> } } } */
> >>
> >
> >
> > It is enough to check for "target { *-*-linux* && ilp32 }", since we
> > execute gcc.target/i386 for i?86 and x86_64 targets only.
> >
> >> --- gcc/testsuite/gcc.target/i386/pr37843-3.c.sibcall 2008-11-04
> >> 08:33:41.000000000 -0800
> >> +++ gcc/testsuite/gcc.target/i386/pr37843-3.c 2008-11-04
> >> 08:33:41.000000000 -0800
> >> @@ -0,0 +1,13 @@
> >> +/* Test for stack alignment with sibcall optimization. */
> >> +/* { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && ilp32
> >> } } } */
> >>
> >
> > Same here.
> >
>
> Here is the updated patch. Tested on Linux/ia32, Linux/Intel64 and
> Linux/ia64. OK for trunk?
>
Darwin doesn't support sibcall. I am checking it to mark them Linux
only.
H.J.
---
Index: gcc.target/i386/pr37843-2.c
===================================================================
--- gcc.target/i386/pr37843-2.c (revision 142193)
+++ gcc.target/i386/pr37843-2.c (working copy)
@@ -1,4 +1,5 @@
/* Test for stack alignment with sibcall optimization. */
+/* { dg-do compile { target *-*-linux* } } */
/* { dg-options "-O2 -mpreferred-stack-boundary=6 -mincoming-stack-boundary=6" } */
/* { dg-final { scan-assembler-not "and\[lq\]?\[\\t \]*\\$-64,\[\\t \]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
Index: gcc.target/i386/pr37843-1.c
===================================================================
--- gcc.target/i386/pr37843-1.c (revision 142193)
+++ gcc.target/i386/pr37843-1.c (working copy)
@@ -1,4 +1,5 @@
/* Test for stack alignment with sibcall optimization. */
+/* { dg-do compile { target *-*-linux* } } */
/* { dg-options "-O2 -mpreferred-stack-boundary=6 -mincoming-stack-boundary=5" } */
/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-64,\[\\t \]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler "call\[\\t \]*foo" } } */
Index: ChangeLog
===================================================================
--- ChangeLog (revision 142193)
+++ ChangeLog (working copy)
@@ -1,3 +1,8 @@
+2008-11-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc.target/i386/pr37843-1.c: Make it Linux only.
+ * gcc.target/i386/pr37843-2.c: Likewise.
+
2008-11-25 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/37843
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-26 15:57 ` H.J. Lu
@ 2008-11-26 19:08 ` Jack Howarth
2008-11-26 19:42 ` H.J. Lu
0 siblings, 1 reply; 15+ messages in thread
From: Jack Howarth @ 2008-11-26 19:08 UTC (permalink / raw)
To: H.J. Lu; +Cc: Uros Bizjak, Ye, Joey, Guo, Xuepeng, GCC Patches
On Wed, Nov 26, 2008 at 06:50:08AM -0800, H.J. Lu wrote:
>
> Darwin doesn't support sibcall. I am checking it to mark them Linux
> only.
>
>
> H.J.
H.J.,
Could you expand on that comment? Is the problem with sibcall on
Darwin that FSF gcc doesn't have the proper darwin specific changes
to implement sibcall or is the problem that the darwin assembler or
linker from Xcode doesn't properly support sibcall? If the problem is
the latter, we could submit a radar bug report asking for sibcall
support to be implemented in the cctools of Snow Leopard.
Jack
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-26 19:08 ` Jack Howarth
@ 2008-11-26 19:42 ` H.J. Lu
2008-11-26 20:07 ` Andrew Pinski
0 siblings, 1 reply; 15+ messages in thread
From: H.J. Lu @ 2008-11-26 19:42 UTC (permalink / raw)
To: Jack Howarth; +Cc: Uros Bizjak, Ye, Joey, Guo, Xuepeng, GCC Patches
On Wed, Nov 26, 2008 at 9:34 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
> On Wed, Nov 26, 2008 at 06:50:08AM -0800, H.J. Lu wrote:
>>
>> Darwin doesn't support sibcall. I am checking it to mark them Linux
>> only.
>>
>>
>> H.J.
>
> H.J.,
> Could you expand on that comment? Is the problem with sibcall on
> Darwin that FSF gcc doesn't have the proper darwin specific changes
> to implement sibcall or is the problem that the darwin assembler or
> linker from Xcode doesn't properly support sibcall? If the problem is
> the latter, we could submit a radar bug report asking for sibcall
> support to be implemented in the cctools of Snow Leopard.
> Jack
static bool
ix86_function_ok_for_sibcall (tree decl, tree exp)
{
tree func;
rtx a, b;
/* If we are generating position-independent code, we cannot sibcall
optimize any indirect call, or a direct call to a global function,
as the PLT requires %ebx be live. */
if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
return false;
Darwin returns false.
--
H.J.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-26 19:42 ` H.J. Lu
@ 2008-11-26 20:07 ` Andrew Pinski
2008-11-26 20:35 ` Jack Howarth
2008-11-28 16:03 ` Kaveh R. GHAZI
0 siblings, 2 replies; 15+ messages in thread
From: Andrew Pinski @ 2008-11-26 20:07 UTC (permalink / raw)
To: H.J. Lu; +Cc: Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng, GCC Patches
On Wed, Nov 26, 2008 at 10:02 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Wed, Nov 26, 2008 at 9:34 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
>> On Wed, Nov 26, 2008 at 06:50:08AM -0800, H.J. Lu wrote:
>>>
>>> Darwin doesn't support sibcall. I am checking it to mark them Linux
>>> only.
>>>
>>>
>>> H.J.
>>
>> H.J.,
>> Could you expand on that comment? Is the problem with sibcall on
>> Darwin that FSF gcc doesn't have the proper darwin specific changes
>> to implement sibcall or is the problem that the darwin assembler or
>> linker from Xcode doesn't properly support sibcall? If the problem is
>> the latter, we could submit a radar bug report asking for sibcall
>> support to be implemented in the cctools of Snow Leopard.
>> Jack
>
> static bool
> ix86_function_ok_for_sibcall (tree decl, tree exp)
> {
> tree func;
> rtx a, b;
>
> /* If we are generating position-independent code, we cannot sibcall
> optimize any indirect call, or a direct call to a global function,
> as the PLT requires %ebx be live. */
> if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
> return false;
>
> Darwin returns false.
>
Because darwin is always pic though binds_local_p should return true ...
-- Pinski
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-26 20:07 ` Andrew Pinski
@ 2008-11-26 20:35 ` Jack Howarth
2008-11-28 16:03 ` Kaveh R. GHAZI
1 sibling, 0 replies; 15+ messages in thread
From: Jack Howarth @ 2008-11-26 20:35 UTC (permalink / raw)
To: Andrew Pinski; +Cc: H.J. Lu, Uros Bizjak, Ye, Joey, Guo, Xuepeng, GCC Patches
On Wed, Nov 26, 2008 at 10:14:25AM -0800, Andrew Pinski wrote:
> On Wed, Nov 26, 2008 at 10:02 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> > On Wed, Nov 26, 2008 at 9:34 AM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
> >> On Wed, Nov 26, 2008 at 06:50:08AM -0800, H.J. Lu wrote:
> >>>
> >>> Darwin doesn't support sibcall. I am checking it to mark them Linux
> >>> only.
> >>>
> >>>
> >>> H.J.
> >>
> >> H.J.,
> >> Could you expand on that comment? Is the problem with sibcall on
> >> Darwin that FSF gcc doesn't have the proper darwin specific changes
> >> to implement sibcall or is the problem that the darwin assembler or
> >> linker from Xcode doesn't properly support sibcall? If the problem is
> >> the latter, we could submit a radar bug report asking for sibcall
> >> support to be implemented in the cctools of Snow Leopard.
> >> Jack
> >
> > static bool
> > ix86_function_ok_for_sibcall (tree decl, tree exp)
> > {
> > tree func;
> > rtx a, b;
> >
> > /* If we are generating position-independent code, we cannot sibcall
> > optimize any indirect call, or a direct call to a global function,
> > as the PLT requires %ebx be live. */
> > if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
> > return false;
> >
> > Darwin returns false.
> >
>
> Because darwin is always pic though binds_local_p should return true ...
>
> -- Pinski
Andrew,
Is that true even if the code were compiled with -fno-PIC on darwin?
Jack
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-26 20:07 ` Andrew Pinski
2008-11-26 20:35 ` Jack Howarth
@ 2008-11-28 16:03 ` Kaveh R. GHAZI
2008-11-28 17:58 ` H.J. Lu
1 sibling, 1 reply; 15+ messages in thread
From: Kaveh R. GHAZI @ 2008-11-28 16:03 UTC (permalink / raw)
To: Andrew Pinski
Cc: H.J. Lu, Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng, GCC Patches
On Wed, 26 Nov 2008, Andrew Pinski wrote:
> On Wed, Nov 26, 2008 at 10:02 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> >>>
> >>> Darwin doesn't support sibcall. I am checking it to mark them Linux
> >>> only.
> >>> H.J.
> >>
> > static bool
> > ix86_function_ok_for_sibcall (tree decl, tree exp)
> > {
> > tree func;
> > rtx a, b;
> >
> > /* If we are generating position-independent code, we cannot sibcall
> > optimize any indirect call, or a direct call to a global function,
> > as the PLT requires %ebx be live. */
> > if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
> > return false;
> >
> > Darwin returns false.
> >
>
> Because darwin is always pic though binds_local_p should return true ...
> -- Pinski
HJ,
You should change the target selector from "*-*-linux*" to "nonpic" since
you'll get a failure on linux with "-m32 -fpic", e.g:
http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02492.html
Note: pr37843-3.c is failing on the nonpic case as well. Even in your own
testsuite results. E.g:
http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02491.html
--Kaveh
--
Kaveh R. Ghazi ghazi@caip.rutgers.edu
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-28 16:03 ` Kaveh R. GHAZI
@ 2008-11-28 17:58 ` H.J. Lu
2008-11-29 17:59 ` H.J. Lu
0 siblings, 1 reply; 15+ messages in thread
From: H.J. Lu @ 2008-11-28 17:58 UTC (permalink / raw)
To: Kaveh R. GHAZI
Cc: Andrew Pinski, Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng,
GCC Patches
On Fri, Nov 28, 2008 at 10:49:16AM -0500, Kaveh R. GHAZI wrote:
> On Wed, 26 Nov 2008, Andrew Pinski wrote:
>
> > On Wed, Nov 26, 2008 at 10:02 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> > >>>
> > >>> Darwin doesn't support sibcall. I am checking it to mark them Linux
> > >>> only.
> > >>> H.J.
> > >>
> > > static bool
> > > ix86_function_ok_for_sibcall (tree decl, tree exp)
> > > {
> > > tree func;
> > > rtx a, b;
> > >
> > > /* If we are generating position-independent code, we cannot sibcall
> > > optimize any indirect call, or a direct call to a global function,
> > > as the PLT requires %ebx be live. */
> > > if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
> > > return false;
> > >
> > > Darwin returns false.
> > >
> >
> > Because darwin is always pic though binds_local_p should return true ...
> > -- Pinski
>
> HJ,
>
> You should change the target selector from "*-*-linux*" to "nonpic" since
> you'll get a failure on linux with "-m32 -fpic", e.g:
>
> http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02492.html
I am checking in this patch to make them for nonpic only.
>
> Note: pr37843-3.c is failing on the nonpic case as well. Even in your own
> testsuite results. E.g:
>
> http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02491.html
>
See:
http://gcc.gnu.org/ml/gcc-patches/2008-11/msg01309.html
Thanks.
H.J.
---
Index: gcc.target/i386/pr37843-2.c
===================================================================
--- gcc.target/i386/pr37843-2.c (revision 142258)
+++ gcc.target/i386/pr37843-2.c (working copy)
@@ -1,5 +1,5 @@
/* Test for stack alignment with sibcall optimization. */
-/* { dg-do compile { target *-*-linux* } } */
+/* { dg-do compile { target nonpic } } */
/* { dg-options "-O2 -mpreferred-stack-boundary=6 -mincoming-stack-boundary=6" } */
/* { dg-final { scan-assembler-not "and\[lq\]?\[\\t \]*\\$-64,\[\\t \]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
Index: gcc.target/i386/pr37843-1.c
===================================================================
--- gcc.target/i386/pr37843-1.c (revision 142258)
+++ gcc.target/i386/pr37843-1.c (working copy)
@@ -1,5 +1,5 @@
/* Test for stack alignment with sibcall optimization. */
-/* { dg-do compile { target *-*-linux* } } */
+/* { dg-do compile { target nonpic } } */
/* { dg-options "-O2 -mpreferred-stack-boundary=6 -mincoming-stack-boundary=5" } */
/* { dg-final { scan-assembler "and\[lq\]?\[\\t \]*\\$-64,\[\\t \]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler "call\[\\t \]*foo" } } */
Index: ChangeLog
===================================================================
--- ChangeLog (revision 142258)
+++ ChangeLog (working copy)
@@ -1,3 +1,9 @@
+2008-11-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/37843
+ * gcc.target/i386/pr37843-1.c: Make it nonpic targets only.
+ * gcc.target/i386/pr37843-2.c: Likewise.
+
2008-11-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37955
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP
2008-11-28 17:58 ` H.J. Lu
@ 2008-11-29 17:59 ` H.J. Lu
2008-11-30 5:18 ` PING: PATCH: PR middle-end/37843:[4.4 Regression] unalignedstack " Kaveh R. Ghazi
0 siblings, 1 reply; 15+ messages in thread
From: H.J. Lu @ 2008-11-29 17:59 UTC (permalink / raw)
To: Kaveh R. GHAZI
Cc: Andrew Pinski, Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng,
GCC Patches
On Fri, Nov 28, 2008 at 08:30:35AM -0800, H.J. Lu wrote:
> On Fri, Nov 28, 2008 at 10:49:16AM -0500, Kaveh R. GHAZI wrote:
> > On Wed, 26 Nov 2008, Andrew Pinski wrote:
> >
> > > On Wed, Nov 26, 2008 at 10:02 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> > > >>>
> > > >>> Darwin doesn't support sibcall. I am checking it to mark them Linux
> > > >>> only.
> > > >>> H.J.
> > > >>
> > > > static bool
> > > > ix86_function_ok_for_sibcall (tree decl, tree exp)
> > > > {
> > > > tree func;
> > > > rtx a, b;
> > > >
> > > > /* If we are generating position-independent code, we cannot sibcall
> > > > optimize any indirect call, or a direct call to a global function,
> > > > as the PLT requires %ebx be live. */
> > > > if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
> > > > return false;
> > > >
> > > > Darwin returns false.
> > > >
> > >
> > > Because darwin is always pic though binds_local_p should return true ...
> > > -- Pinski
> >
> > HJ,
> >
> > You should change the target selector from "*-*-linux*" to "nonpic" since
> > you'll get a failure on linux with "-m32 -fpic", e.g:
> >
> > http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02492.html
>
> I am checking in this patch to make them for nonpic only.
>
> >
> > Note: pr37843-3.c is failing on the nonpic case as well. Even in your own
> > testsuite results. E.g:
> >
> > http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02491.html
> >
>
> See:
>
> http://gcc.gnu.org/ml/gcc-patches/2008-11/msg01309.html
>
Even after middle-end patch is applied, pr37843-3.c only works with
non-PIC. I am applying this patch.
H.J.
---
Index: gcc.target/i386/pr37843-3.c
===================================================================
--- gcc.target/i386/pr37843-3.c (revision 142277)
+++ gcc.target/i386/pr37843-3.c (working copy)
@@ -1,5 +1,5 @@
/* Test for stack alignment with sibcall optimization. */
-/* { dg-do compile { target { *-*-linux* && ilp32 } } } */
+/* { dg-do compile { target { *-*-linux* && { ilp32 && nonpic } } } } */
/* { dg-options "-O2 -std=gnu99 -mpreferred-stack-boundary=4 -mincoming-stack-boundary=2" } */
/* { dg-final { scan-assembler-not "andl\[\\t \]*\\$-16,\[\\t \]*%\[re\]?sp" } } */
/* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
Index: ChangeLog
===================================================================
--- ChangeLog (revision 142277)
+++ ChangeLog (working copy)
@@ -1,3 +1,8 @@
+2008-11-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/37843
+ * gcc.target/i386/pr37843-3.c: Make it nonpic targets only.
+
2008-11-29 Janus Weil <janus@gcc.gnu.org>
Tobias Burnus <burnus@gcc.gnu.org>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unalignedstack in maindue to tail call optimizatiP
2008-11-29 17:59 ` H.J. Lu
@ 2008-11-30 5:18 ` Kaveh R. Ghazi
2008-11-30 8:52 ` H.J. Lu
0 siblings, 1 reply; 15+ messages in thread
From: Kaveh R. Ghazi @ 2008-11-30 5:18 UTC (permalink / raw)
To: H.J. Lu
Cc: Andrew Pinski, Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng,
GCC Patches
From: "H.J. Lu" <hjl.tools@gmail.com>
> Even after middle-end patch is applied, pr37843-3.c only works with
> non-PIC. I am applying this patch.
> H.J.
> ---
> Index: gcc.target/i386/pr37843-3.c
> ===================================================================
> --- gcc.target/i386/pr37843-3.c (revision 142277)
> +++ gcc.target/i386/pr37843-3.c (working copy)
> @@ -1,5 +1,5 @@
> /* Test for stack alignment with sibcall optimization. */
> -/* { dg-do compile { target { *-*-linux* && ilp32 } } } */
> +/* { dg-do compile { target { *-*-linux* && { ilp32 && nonpic } } } } */
> /* { dg-options
> "-O2 -std=gnu99 -mpreferred-stack-boundary=4 -mincoming-stack-boundary=2"
> } */
> /* { dg-final { scan-assembler-not "andl\[\\t \]*\\$-16,\[\\t
> \]*%\[re\]?sp" } } */
> /* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
Why did you leave in *-*-linux* ? Other nonpic x86 targets should test it
also IMHO.
--Kaveh
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unalignedstack in maindue to tail call optimizatiP
2008-11-30 5:18 ` PING: PATCH: PR middle-end/37843:[4.4 Regression] unalignedstack " Kaveh R. Ghazi
@ 2008-11-30 8:52 ` H.J. Lu
2008-11-30 15:47 ` Kaveh R. Ghazi
0 siblings, 1 reply; 15+ messages in thread
From: H.J. Lu @ 2008-11-30 8:52 UTC (permalink / raw)
To: Kaveh R. Ghazi
Cc: Andrew Pinski, Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng,
GCC Patches
On Sat, Nov 29, 2008 at 3:19 PM, Kaveh R. Ghazi <ghazi@caip.rutgers.edu> wrote:
> From: "H.J. Lu" <hjl.tools@gmail.com>
>
>> Even after middle-end patch is applied, pr37843-3.c only works with
>> non-PIC. I am applying this patch.
>> H.J.
>> ---
>> Index: gcc.target/i386/pr37843-3.c
>> ===================================================================
>> --- gcc.target/i386/pr37843-3.c (revision 142277)
>> +++ gcc.target/i386/pr37843-3.c (working copy)
>> @@ -1,5 +1,5 @@
>> /* Test for stack alignment with sibcall optimization. */
>> -/* { dg-do compile { target { *-*-linux* && ilp32 } } } */
>> +/* { dg-do compile { target { *-*-linux* && { ilp32 && nonpic } } } } */
>> /* { dg-options "-O2 -std=gnu99 -mpreferred-stack-boundary=4
>> -mincoming-stack-boundary=2" } */
>> /* { dg-final { scan-assembler-not "andl\[\\t \]*\\$-16,\[\\t
>> \]*%\[re\]?sp" } } */
>> /* { dg-final { scan-assembler-not "call\[\\t \]*foo" } } */
>
> Why did you leave in *-*-linux* ? Other nonpic x86 targets should test it
> also IMHO.
>
Only Linux supports DFP.
--
H.J.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unalignedstack in maindue to tail call optimizatiP
2008-11-30 8:52 ` H.J. Lu
@ 2008-11-30 15:47 ` Kaveh R. Ghazi
0 siblings, 0 replies; 15+ messages in thread
From: Kaveh R. Ghazi @ 2008-11-30 15:47 UTC (permalink / raw)
To: H.J. Lu
Cc: Andrew Pinski, Jack Howarth, Uros Bizjak, Ye, Joey, Guo, Xuepeng,
GCC Patches
From: "H.J. Lu" <hjl.tools@gmail.com>
>> Why did you leave in *-*-linux* ? Other nonpic x86 targets should test
>> it
>> also IMHO.
>>
>
> Only Linux supports DFP.
> H.J.
In that case you should change "*-*-linux*" to "dfp". We have a testsuite
check for that.
--Kaveh
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2008-11-30 14:56 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-05 16:52 PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP Uros Bizjak
2008-11-05 18:18 ` H.J. Lu
2008-11-11 12:19 ` H.J. Lu
2008-11-19 18:27 ` H.J. Lu
2008-11-26 15:57 ` H.J. Lu
2008-11-26 19:08 ` Jack Howarth
2008-11-26 19:42 ` H.J. Lu
2008-11-26 20:07 ` Andrew Pinski
2008-11-26 20:35 ` Jack Howarth
2008-11-28 16:03 ` Kaveh R. GHAZI
2008-11-28 17:58 ` H.J. Lu
2008-11-29 17:59 ` H.J. Lu
2008-11-30 5:18 ` PING: PATCH: PR middle-end/37843:[4.4 Regression] unalignedstack " Kaveh R. Ghazi
2008-11-30 8:52 ` H.J. Lu
2008-11-30 15:47 ` Kaveh R. Ghazi
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).