Re: [fpc-pascal] Candidate for crowd-funding

2018-12-20 Thread Jonas Maebe
On 20/12/18 18:09, Martok wrote: Parameters are difficult because they either need something like extra temps *in memory* (like cdecl) or some extra registers need to be pushed/popped, which brings us back to the register allocator issue. There's also the issue that to fully support inlining,

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-20 Thread Martok
Am 19.12.2018 um 14:22 schrieb Sven Barth via fpc-pascal: > Maybe we could add your changes to trunk? Ah, I may have made that sound better than it was ;-) I didn't actually solve the problem. Can't seem to find my branch anyway (I may have amended that when the focus changed to the pure

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Ryan Joseph
> On Dec 20, 2018, at 1:17 AM, Karoly Balogh (Charlie/SGR) > wrote: > > No, that assembly function just does swapping of the stack and storing the > caller's stack settings and setting up the coroutine's stack instead. The > actual stack is allocated with the Win32 API function

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Karoly Balogh (Charlie/SGR)
Hi, On Wed, 19 Dec 2018, Ryan Joseph wrote: > > (After reading that old thread we had...) > > > > Actually, it can. The only thing you need to do is to allocate a stack > > first, then make the "coroutine" functions use it, which is basically > > boils down to how you pass your arguments and

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Ryan Joseph
> On Dec 19, 2018, at 9:28 PM, Karoly Balogh (Charlie/SGR) > wrote: > > (After reading that old thread we had...) > > Actually, it can. The only thing you need to do is to allocate a stack > first, then make the "coroutine" functions use it, which is basically > boils down to how you pass

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Karoly Balogh (Charlie/SGR)
Hi, On Wed, 19 Dec 2018, Ryan Joseph wrote: > > On Dec 19, 2018, at 5:23 PM, Sven Barth via fpc-pascal > > wrote: > > > > A library as first step would be more useful. Later on one can think > > about integrating it into the language itself. > > > > How does that work? I’ve been interested in

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Sven Barth via fpc-pascal
Am Mi., 19. Dez. 2018, 11:38 hat Martok geschrieben: > > The main problem here is to model what registers an instruction uses and > > modifies so that the register allocator of the surrounding function can > take > > that into account accordingly... Maybe as a first step we could allow in >

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Sven Barth via fpc-pascal
Am Mi., 19. Dez. 2018, 13:18 hat Ryan Joseph geschrieben: > > > > On Dec 19, 2018, at 6:35 PM, Ryan Joseph > wrote: > > > > How does that work? I’ve been interested in coroutines for a while now > but I don’t understand how they function in the language. They would need > to manage stack states

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Ryan Joseph
> On Dec 19, 2018, at 6:35 PM, Ryan Joseph wrote: > > How does that work? I’ve been interested in coroutines for a while now but I > don’t understand how they function in the language. They would need to manage > stack states and push/restore stacks, which is something a library can’t do >

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Ryan Joseph
> On Dec 19, 2018, at 5:23 PM, Sven Barth via fpc-pascal > wrote: > > A library as first step would be more useful. Later on one can think about > integrating it into the language itself. > How does that work? I’ve been interested in coroutines for a while now but I don’t understand how

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Santiago A.
El 19/12/18 a las 09:02, denisgolovan escribió: Hi all I decided to start a separate thread for asking about potential candidate for crowd-funding. My personal wish-list is: - support for array calculations / automatic loop parallelization via SSE, AVX, etc. Both static and dynamic arrays

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread denisgolovan
>> - Custom/separate allocators for dynamic arrays (to avoid manually patching >> compiler). > > Why do you need that? Besides ordinary arrays I allocate/use arrays backed by mmaped files. Existing functions taking arrays as arguments mostly remain working transparently. That's a huge win in

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Martok
> The main problem here is to model what registers an instruction uses and > modifies so that the register allocator of the surrounding function can take > that into account accordingly... Maybe as a first step we could allow in > lining > for funcrions that have a register clause with the

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Sven Barth via fpc-pascal
Am Mi., 19. Dez. 2018, 09:03 hat denisgolovan geschrieben: > My personal wish-list is: > - support for array calculations / automatic loop parallelization via SSE, > AVX, etc. > Both static and dynamic arrays should supported. > Once implemented vector operations on arrays (ala APL) might be

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread denisgolovan
> I will leave the technical comments to the compiler developers. > >> BTW, is it possible to state the specific project when donating? > > Yes, if I recall correctly you can give a message when the paypal donate > page appears. (just as you can state that you want to be in the hall of > fame)

Re: [fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread Michael Van Canneyt
> Hi all > > I decided to start a separate thread for asking about potential candidate > for crowd-funding. > > My personal wish-list is: > - support for array calculations / automatic loop parallelization via SSE, > AVX, etc. > Both static and dynamic arrays should supported. > Once

[fpc-pascal] Candidate for crowd-funding

2018-12-19 Thread denisgolovan
Hi all I decided to start a separate thread for asking about potential candidate for crowd-funding. My personal wish-list is: - support for array calculations / automatic loop parallelization via SSE, AVX, etc. Both static and dynamic arrays should supported. Once implemented vector