Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2022-01-21 Thread Richard Sandiford via Gcc-patches
Richard Sandiford via Gcc-patches writes: > How about instead: > > (1) Define a new ASLK_* flag for assign_stack_local_1. > > (2) When the flag is set, make: > > if (alignment_in_bits > MAX_SUPPORTED_STACK_ALIGNMENT) > { > alignment_in_bits = MAX_SUPPORTED_STACK_ALIGNMENT;

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2022-01-20 Thread Richard Sandiford via Gcc-patches
Sorry for the slow response. Alex Coplan writes: > On 20/12/2021 13:19, Richard Sandiford wrote: >> Alex Coplan via Gcc-patches writes: >> > Hi, >> > >> > This fixes PR103500 i.e. ensuring that stack slots for >> > passed-by-reference overaligned types are appropriately aligned. For the >> > tes

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2022-01-07 Thread H.J. Lu via Gcc-patches
On Fri, Jan 7, 2022 at 7:20 AM Alex Coplan via Gcc-patches wrote: > > Hi Richard, > > Thanks for the review. > > On 20/12/2021 13:19, Richard Sandiford wrote: > > Alex Coplan via Gcc-patches writes: > > > Hi, > > > > > > This fixes PR103500 i.e. ensuring that stack slots for > > > passed-by-refer

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2022-01-07 Thread Alex Coplan via Gcc-patches
Hi Richard, Thanks for the review. On 20/12/2021 13:19, Richard Sandiford wrote: > Alex Coplan via Gcc-patches writes: > > Hi, > > > > This fixes PR103500 i.e. ensuring that stack slots for > > passed-by-reference overaligned types are appropriately aligned. For the > > testcase: > > > > typedef

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2021-12-20 Thread Richard Sandiford via Gcc-patches
Alex Coplan via Gcc-patches writes: > Hi, > > This fixes PR103500 i.e. ensuring that stack slots for > passed-by-reference overaligned types are appropriately aligned. For the > testcase: > > typedef struct __attribute__((aligned(32))) { > long x,y; > } S; > S x; > void f(S); > void g(void) { f(

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2021-12-14 Thread Alex Coplan via Gcc-patches
Hi, I'd just like to ping this for review: https://gcc.gnu.org/pipermail/gcc-patches/2021-November/585785.html Thanks, Alex On 30/11/2021 16:48, Alex Coplan via Gcc-patches wrote: > Hi, > > This fixes PR103500 i.e. ensuring that stack slots for > passed-by-reference overaligned types are appro

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2021-12-01 Thread Alex Coplan via Gcc-patches
On 30/11/2021 19:38, Florian Weimer wrote: > * Alex Coplan via Gcc-patches: > > > Bootstrapped and regtested on aarch64-linux-gnu, x86_64-linux-gnu, and > > arm-linux-gnueabihf: no regressions. > > > > I'd appreciate any feedback. Is it OK for trunk? > > Does this need an ABI warning? That's a g

Re: [PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2021-11-30 Thread Florian Weimer via Gcc-patches
* Alex Coplan via Gcc-patches: > Bootstrapped and regtested on aarch64-linux-gnu, x86_64-linux-gnu, and > arm-linux-gnueabihf: no regressions. > > I'd appreciate any feedback. Is it OK for trunk? Does this need an ABI warning? Thanks, Florian

[PATCH] Fix alignment of stack slots for overaligned types [PR103500]

2021-11-30 Thread Alex Coplan via Gcc-patches
Hi, This fixes PR103500 i.e. ensuring that stack slots for passed-by-reference overaligned types are appropriately aligned. For the testcase: typedef struct __attribute__((aligned(32))) { long x,y; } S; S x; void f(S); void g(void) { f(x); } on AArch64, we currently generate (at -O2): g: