Re: [swift-dev] Reducing array abstraction

2017-10-10 Thread Chris Lattner via swift-dev
> On Oct 10, 2017, at 9:50 AM, Erik Eckstein wrote: > > > >> On Oct 9, 2017, at 9:46 PM, Chris Lattner > > wrote: >> >> On Oct 8, 2017, at 3:30 PM, Erik Eckstein > >

Re: [swift-dev] Reducing array abstraction

2017-10-10 Thread Erik Eckstein via swift-dev
> On Oct 9, 2017, at 9:46 PM, Chris Lattner wrote: > > On Oct 8, 2017, at 3:30 PM, Erik Eckstein > wrote: We definitely already have a heap->stack for classes in the guise of the StackPromotion optimization is

Re: [swift-dev] Reducing array abstraction

2017-10-09 Thread Chris Lattner via swift-dev
On Oct 9, 2017, at 9:55 PM, Slava Pestov via swift-dev wrote: >> On Oct 7, 2017, at 2:01 PM, Chris Lattner wrote: >> Right. If we ignore source compatibility for the moment, it seems clear >> that the best callee side representation for varargs is a

Re: [swift-dev] Reducing array abstraction

2017-10-09 Thread Slava Pestov via swift-dev
> On Oct 7, 2017, at 2:01 PM, Chris Lattner wrote: > > Right. If we ignore source compatibility for the moment, it seems clear that > the best callee side representation for varargs is a borrowing array slice > (like llvm::ArrayRef or UnsafeBufferPointer). This

Re: [swift-dev] Reducing array abstraction

2017-10-09 Thread Chris Lattner via swift-dev
On Oct 8, 2017, at 3:30 PM, Erik Eckstein wrote: >>> We definitely already have a heap->stack for classes in the guise of the >>> StackPromotion optimization is that what you are talking about with the >>> "array outlining" optimization? (outlining to me is referring to

Re: [swift-dev] Reducing array abstraction

2017-10-08 Thread Erik Eckstein via swift-dev
> On Oct 8, 2017, at 3:14 PM, Chris Lattner wrote: > >> >> On Oct 8, 2017, at 11:57 AM, Michael Gottesman via swift-dev >> wrote: >> >> >>> On Oct 6, 2017, at 11:06 PM, Chris Lattner via swift-dev >>> wrote: >>> >>> This

Re: [swift-dev] Reducing array abstraction

2017-10-08 Thread Chris Lattner via swift-dev
> On Oct 8, 2017, at 11:57 AM, Michael Gottesman via swift-dev > wrote: > > >> On Oct 6, 2017, at 11:06 PM, Chris Lattner via swift-dev >> wrote: >> >> This question is somewhere between swift-dev and swift-users, not sure where >> best to post

Re: [swift-dev] Reducing array abstraction

2017-10-08 Thread Michael Gottesman via swift-dev
> On Oct 8, 2017, at 11:57 AM, Michael Gottesman via swift-dev > wrote: > >> >> On Oct 6, 2017, at 11:06 PM, Chris Lattner via swift-dev >> wrote: >> >> This question is somewhere between swift-dev and swift-users, not sure where >> best to post

Re: [swift-dev] Reducing array abstraction

2017-10-08 Thread Michael Gottesman via swift-dev
> On Oct 6, 2017, at 11:06 PM, Chris Lattner via swift-dev > wrote: > > This question is somewhere between swift-dev and swift-users, not sure where > best to post this. > > I’m working on a project that wants to get very low-abstraction penalty array > operations,

Re: [swift-dev] Reducing array abstraction

2017-10-07 Thread Chris Lattner via swift-dev
On Oct 6, 2017, at 11:12 PM, Slava Pestov wrote: >> On Oct 6, 2017, at 11:06 PM, Chris Lattner via swift-dev >> wrote: >> This question is somewhere between swift-dev and swift-users, not sure where >> best to post this. >> >> I’m working on a project

Re: [swift-dev] Reducing array abstraction

2017-10-07 Thread Slava Pestov via swift-dev
> On Oct 6, 2017, at 11:06 PM, Chris Lattner via swift-dev > wrote: > > This question is somewhere between swift-dev and swift-users, not sure where > best to post this. > > I’m working on a project that wants to get very low-abstraction penalty array > operations,

[swift-dev] Reducing array abstraction

2017-10-07 Thread Chris Lattner via swift-dev
This question is somewhere between swift-dev and swift-users, not sure where best to post this. I’m working on a project that wants to get very low-abstraction penalty array operations, particularly with varargs. Given the currently language limitations (no fixed size arrays), the best I’ve