Richard Biener wrote:
> > On Tue, 31 Mar 2015, Alan Lawrence wrote:
> >
>> >> (1) If we wish to keep the AAPCS principle that varargs are passed just as
>> >> named args, we should use TYPE_MAIN_VARIANT inside
>> >> arm_needs_doubleword_alignment, which will then ignore overalignment on
both
>> >
On Tue, 31 Mar 2015, Alan Lawrence wrote:
> Jakub Jelinek wrote:
> > On Tue, Mar 31, 2015 at 11:47:37AM +0100, Alan Lawrence wrote:
> > > Richard Biener wrote:
> > > > But I find it odd that on ARM passing *((aligned_int *)p) as
> > > > vararg (only as varargs?) changes calling conventions indepen
Jakub Jelinek wrote:
On Tue, Mar 31, 2015 at 11:47:37AM +0100, Alan Lawrence wrote:
Richard Biener wrote:
But I find it odd that on ARM passing *((aligned_int *)p) as
vararg (only as varargs?) changes calling conventions independent
of the functions type signature.
Does it? Do you have a testc
On 31/03/15 12:08, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> On 31/03/15 11:45, Richard Biener wrote:
>>> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>>>
On 31/03/15 11:36, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> O
Richard Earnshaw wrote:
On 31/03/15 11:45, Richard Biener wrote:
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
On 31/03/15 11:36, Richard Biener wrote:
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
On 31/03/15 11:00, Richard Biener wrote:
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
On 31/
On Tue, 31 Mar 2015, Jakub Jelinek wrote:
> On Tue, Mar 31, 2015 at 11:47:37AM +0100, Alan Lawrence wrote:
> > Richard Biener wrote:
> > >
> > >But I find it odd that on ARM passing *((aligned_int *)p) as
> > >vararg (only as varargs?) changes calling conventions independent
> > >of the functions
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> On 31/03/15 11:45, Richard Biener wrote:
> > On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> >
> >> On 31/03/15 11:36, Richard Biener wrote:
> >>> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> >>>
> On 31/03/15 11:00, Richard Biener wrote:
> >>>
On Tue, Mar 31, 2015 at 11:47:37AM +0100, Alan Lawrence wrote:
> Richard Biener wrote:
> >
> >But I find it odd that on ARM passing *((aligned_int *)p) as
> >vararg (only as varargs?) changes calling conventions independent
> >of the functions type signature.
>
> Does it? Do you have a testcase, a
On Tue, 31 Mar 2015, Alan Lawrence wrote:
> Richard Biener wrote:
> >
> > But I find it odd that on ARM passing *((aligned_int *)p) as
> > vararg (only as varargs?) changes calling conventions independent
> > of the functions type signature.
>
> Does it? Do you have a testcase, and compilation f
On 31/03/15 11:44, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> On 31/03/15 11:20, Richard Biener wrote:
>>> On Tue, 31 Mar 2015, Richard Biener wrote:
>>>
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> On 31/03/15 08:50, Richard Biener wrote:
>> On M
On 31/03/15 11:45, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> On 31/03/15 11:36, Richard Biener wrote:
>>> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>>>
On 31/03/15 11:00, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> O
Richard Biener wrote:
But I find it odd that on ARM passing *((aligned_int *)p) as
vararg (only as varargs?) changes calling conventions independent
of the functions type signature.
Does it? Do you have a testcase, and compilation flags, that'll make this show
up in an RTL dump? I've tried nu
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> On 31/03/15 11:36, Richard Biener wrote:
> > On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> >
> >> On 31/03/15 11:00, Richard Biener wrote:
> >>> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> >>>
> On 31/03/15 08:50, Richard Biener wrote:
> >>>
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> On 31/03/15 11:20, Richard Biener wrote:
> > On Tue, 31 Mar 2015, Richard Biener wrote:
> >
> >> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> >>
> >>> On 31/03/15 08:50, Richard Biener wrote:
> On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener
On 31/03/15 11:36, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> On 31/03/15 11:00, Richard Biener wrote:
>>> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>>>
On 31/03/15 08:50, Richard Biener wrote:
> On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener
> wr
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> On 31/03/15 11:00, Richard Biener wrote:
> > On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> >
> >> On 31/03/15 08:50, Richard Biener wrote:
> >>> On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener
> >>> wrote:
> On March 30, 2015 6:45:34 PM GMT+
On Tue, Mar 31, 2015 at 11:10:39AM +0100, Richard Earnshaw wrote:
> >>> That is,
> >>>
> >>> typedef int myint __attribute__((aligned(8)));
> >>>
> >>> int main()
> >>> {
> >>> myint i = 1;
> >>> int j = 2;
> >>> __builtin_printf("%d %d\n", i, j);
> >>> }
> >>>
> >>> or
> >>>
> >>> myint i;
>
On 31/03/15 11:20, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Biener wrote:
>
>> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>>
>>> On 31/03/15 08:50, Richard Biener wrote:
On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener wrote:
> On March 30, 2015 6:45:34 PM GMT+02:00, Alan L
On Tue, 31 Mar 2015, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
> > On 31/03/15 08:50, Richard Biener wrote:
> > > On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener
> > > wrote:
> > >> On March 30, 2015 6:45:34 PM GMT+02:00, Alan Lawrence
> > >> wrote:
> > >>> -O2 w
On 31/03/15 11:00, Richard Biener wrote:
> On Tue, 31 Mar 2015, Richard Earnshaw wrote:
>
>> On 31/03/15 08:50, Richard Biener wrote:
>>> On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener wrote:
On March 30, 2015 6:45:34 PM GMT+02:00, Alan Lawrence
wrote:
> -O2 was what I first use
On Tue, 31 Mar 2015, Richard Earnshaw wrote:
> On 31/03/15 08:50, Richard Biener wrote:
> > On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener wrote:
> >> On March 30, 2015 6:45:34 PM GMT+02:00, Alan Lawrence
> >> wrote:
> >>> -O2 was what I first used; it also occurs at -O1. -fno-tree-sra fixes
Richard Biener wrote:
On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener wrote:
It doesn't make sense to use the alignment of passed values. That looks like
bs.
This means that
Int I __aligned__(8);
Is passed differently than int.
Arm_function_arg needs to be fixed.
That is,
typedef int
On 31/03/15 08:50, Richard Biener wrote:
> On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener wrote:
>> On March 30, 2015 6:45:34 PM GMT+02:00, Alan Lawrence
>> wrote:
>>> -O2 was what I first used; it also occurs at -O1. -fno-tree-sra fixes
>>> it.
>>>
>>> The problem appears to be in laying out
On Mon, Mar 30, 2015 at 10:13 PM, Richard Biener wrote:
> On March 30, 2015 6:45:34 PM GMT+02:00, Alan Lawrence
> wrote:
>>-O2 was what I first used; it also occurs at -O1. -fno-tree-sra fixes
>>it.
>>
>>The problem appears to be in laying out arguments, specifically
>>varargs. From
>>the "good"
On March 30, 2015 6:45:34 PM GMT+02:00, Alan Lawrence
wrote:
>-O2 was what I first used; it also occurs at -O1. -fno-tree-sra fixes
>it.
>
>The problem appears to be in laying out arguments, specifically
>varargs. From
>the "good" -fdump-rtl-expand:
>
>(insn 18 17 19 2 (set (mem:SI (reg/f:SI 107
-O2 was what I first used; it also occurs at -O1. -fno-tree-sra fixes it.
The problem appears to be in laying out arguments, specifically varargs. From
the "good" -fdump-rtl-expand:
(insn 18 17 19 2 (set (mem:SI (reg/f:SI 107 virtual-outgoing-args) [0 S4 A32])
(reg:SI 111 [ b1$16 ]))
On Mon, 30 Mar 2015, Richard Biener wrote:
> On Mon, 30 Mar 2015, Alan Lawrence wrote:
>
> > ...actually attach the testcase...
>
> What compile options?
Just tried -O2. The GIMPLE IL assumes 64bit alignment of .LC0 but
I can't see anything not guaranteeing that:
.section.roda
On Mon, 30 Mar 2015, Alan Lawrence wrote:
> ...actually attach the testcase...
What compile options?
> Alan Lawrence wrote:
> > We've been seeing a bunch of new failures in the *libffi* testsuite on ARM
> > Linux (arm-none-linux-gnueabi, arm-none-linux-gnueabihf), following this
> > one-liner fi
...actually attach the testcase...
Alan Lawrence wrote:
We've been seeing a bunch of new failures in the *libffi* testsuite on ARM Linux
(arm-none-linux-gnueabi, arm-none-linux-gnueabihf), following this one-liner
fix. I've reduced the testcase down to the attached (including removing any
depe
29 matches
Mail list logo