Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-12 Thread Pedro Alves via Dwarf-discuss
Hi! On 2023-04-12 1:18 p.m., Jakub Jelinek wrote: > On Wed, Apr 12, 2023 at 01:05:14PM +0100, Pedro Alves wrote: >>> I thought Ben has posted the details. >>> In memory they look the same as 0 based arrays, but they often have >>> different calling conventions (argument passing, returning), they

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-12 Thread Pedro Alves via Dwarf-discuss
On 2023-04-06 12:03 p.m., Jakub Jelinek via Dwarf-discuss wrote: > In GCC, one uses vector_size attribute to define such types, so say > typedef int V __attribute__((vector_size (64))); > where 64 is number of bytes the vector has (so for 4 byte int it is 16 > elements). > I think Clang supports

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-12 Thread Jakub Jelinek via Dwarf-discuss
On Wed, Apr 12, 2023 at 01:05:14PM +0100, Pedro Alves wrote: > > I thought Ben has posted the details. > > In memory they look the same as 0 based arrays, but they often have > > different calling conventions (argument passing, returning), they support > > various arithmetic operations on them, in

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-12 Thread Pedro Alves via Dwarf-discuss
On 2023-04-06 1:03 p.m., Jakub Jelinek via Dwarf-discuss wrote: > On Thu, Apr 06, 2023 at 07:52:32AM -0400, Ron Brender wrote: >>> And we almost certainly want to allow vectors on DWARF expression stack; >> >> What is so special about vector types in this regard. What do you have >> against

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-12 Thread Pedro Alves via Dwarf-discuss
On 2023-04-06 12:03 p.m., Jakub Jelinek via Dwarf-discuss wrote: >> define fixed-length vectors as special built-in types or is the goal to >> support >> arbitrary vector lengths? >> >> It might be good to maintain an upper limit on the size of a stack entry. > I think it is better if consumers

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Ben Woodard via Dwarf-discuss
I believe that all three points that you bring up here are correct and I will fix them in V3 of my proposal. On 4/6/23 03:44, Metzger, Markus T wrote: Hello Ben, This is version 2 of my vector types submission. Differences from V1: - Made the submission about vector types rather than

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Ben Woodard via Dwarf-discuss
On 4/6/23 03:47, Metzger, Markus T wrote: Hello Jakub, Ben, On Wed, Apr 05, 2023 at 07:16:35PM -0700, Ben Woodard via Dwarf-discuss wrote: To distinguish these vector types from regular C arrays, GCC's DWARF describes a vector type as an array with the DW_AT_GNU_vector attribute.  Clang also

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Ben Woodard via Dwarf-discuss
On 4/6/23 03:16, Jakub Jelinek wrote: On Wed, Apr 05, 2023 at 07:16:35PM -0700, Ben Woodard via Dwarf-discuss wrote: To distinguish these vector types from regular C arrays, GCC's DWARF describes a vector type as an array with the DW_AT_GNU_vector attribute.  Clang also supports the GCC vector

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Jakub Jelinek via Dwarf-discuss
On Thu, Apr 06, 2023 at 07:52:32AM -0400, Ron Brender wrote: > Various thoughts... > > > Not sure if supporting dimensions in the way which is done > > for arrays is needed (I believe vector types are always one-dimensional > > indexed from 0). > > "always"? There are many element by element

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Ron Brender via Dwarf-discuss
Various thoughts... > Not sure if supporting dimensions in the way which is done > for arrays is needed (I believe vector types are always one-dimensional > indexed from 0). "always"? There are many element by element operations on multidimensional arrays that might benefit from use of vector

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Jakub Jelinek via Dwarf-discuss
On Thu, Apr 06, 2023 at 10:47:02AM +, Metzger, Markus T wrote: > >I don't think this is a good idea, we should go for > >DW_TAG_vector_type > >instead IMHO. DW_AT_GNU_vector used to be a good idea as an extension, > >as mentioned the (generic) vector types are in many ways similar to arrays,

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Metzger, Markus T via Dwarf-discuss
Hello Jakub, Ben, >On Wed, Apr 05, 2023 at 07:16:35PM -0700, Ben Woodard via Dwarf-discuss wrote: >> To distinguish these vector types from regular C arrays, GCC's DWARF >> describes a vector type as an array with the DW_AT_GNU_vector >> attribute.  Clang also supports the GCC vector extensions,

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Metzger, Markus T via Dwarf-discuss
Hello Ben, >This is version 2 of my vector types submission. > >Differences from V1: >- Made the submission about vector types rather than vector registers. >- Substituted Pedro's much better introduction for my own with minor edits. >- Removed the modifications to the DWARF Stack. The AMD

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Jakub Jelinek via Dwarf-discuss
On Wed, Apr 05, 2023 at 07:16:35PM -0700, Ben Woodard via Dwarf-discuss wrote: > To distinguish these vector types from regular C arrays, GCC's DWARF > describes a vector type as an array with the DW_AT_GNU_vector > attribute.  Clang also supports the GCC vector extensions, and > describes the

Re: [Dwarf-discuss] ISSUE: vector types. V2

2023-04-06 Thread Keith Walker via Dwarf-discuss
fstd.org > Subject: [Dwarf-discuss] ISSUE: vector types. V2 > > This is version 2 of my vector types submission. > > Differences from V1: > - Made the submission about vector types rather than vector registers. > - Substituted Pedro's much better introduction for my own with min

[Dwarf-discuss] ISSUE: vector types. V2

2023-04-05 Thread Ben Woodard via Dwarf-discuss
This is version 2 of my vector types submission. Differences from V1: - Made the submission about vector types rather than vector registers. - Substituted Pedro's much better introduction for my own with minor edits. - Removed the modifications to the DWARF Stack. The AMD people like Pedro and