Re: [fpc-devel] Suspicion about TThread.Synchronize

2018-02-04 Thread Martin
Ok, I got it again in the debugger. Since it is nor reproducible all the times, I am using auto continue breakpoints, and just record that they were hit. So I have limited data. - After a long series of syncs ThreadQueueTail is nil. - A thread calls ThreadQueueAppend (from within Syncronize) -

Re: [fpc-devel] DWARF CIEs and FDEs on Linux x86_64

2018-02-04 Thread Tomas Hajny
On Sun, February 4, 2018 23:58, Markus Beth wrote: Hi, . . > Please give this patch a thorough review as I am neither a DWARF nor a > compiler expert. But for me (on Linux x86_64) the debugging and > profiling situation is much better now. Thanks for your patch. I can't assess the patch mysel

Re: [fpc-devel] Suspicion about TThread.Synchronize

2018-02-04 Thread Martin
On 04/02/2018 20:33, Martin wrote: On 04/02/2018 20:23, Sven Barth via fpc-devel wrote: Would you please test whether my change in r38115 (applied to 3.0.2) makes any difference? Calling RemoveQueuedEvents() with a thread, but no method (which happens during a thread's destruction) was up to th

[fpc-devel] DWARF CIEs and FDEs on Linux x86_64

2018-02-04 Thread Markus Beth
Hi, I am using FPC (3.0.4 and the fixes_3_0 branch) to create a shared library for Linux x86_64. When it comes to debugging (with gdb) or profiling, I always had problems getting valuable stacktraces from withing the pascal functions. I now tracked this problem down to the .debug_frame sectio

Re: [fpc-devel] "Homogeneous Float Aggregate"

2018-02-04 Thread Jonas Maebe
On 04/02/18 21:44, Florian Klämpfl wrote: Am 04.02.2018 um 20:57 schrieb J. Gareth Moreton: I'm not certain if my definition of 'aggregate' is correct, but must the fields be packed like an array to be a valid HFA? I'm not certain if they should be packed or each field aligned to a 16-byte bou

Re: [fpc-devel] "Homogeneous Float Aggregate"

2018-02-04 Thread Florian Klämpfl
Am 04.02.2018 um 20:57 schrieb J. Gareth Moreton: > Hi everyone, > > So I've almost finished implementing Microsoft's 'vectorcall' calling > convention into Free Pascal - the final > sticking point are Homogeneous Float Aggregates (HFA's), since the > documentation isn't tremendously clear on

Re: [fpc-devel] Suspicion about TThread.Synchronize

2018-02-04 Thread Martin
On 04/02/2018 20:23, Sven Barth via fpc-devel wrote: Would you please test whether my change in r38115 (applied to 3.0.2) makes any difference? Calling RemoveQueuedEvents() with a thread, but no method (which happens during a thread's destruction) was up to then a way to corrupt the queue. (Well

Re: [fpc-devel] Suspicion about TThread.Synchronize

2018-02-04 Thread Sven Barth via fpc-devel
On 04.02.2018 20:37, Martin wrote: > On 04/02/2018 19:17, Sven Barth via fpc-devel wrote: >> On 03.02.2018 17:39, Martin wrote: >>> All based on win32 >>> >>> Pretext: >>> I have an issue with a crash in PopThreadQueueHead called by >>> CheckSynchronize.  (3.0.2) >>> It happens in the Lazarus IDE,

[fpc-devel] "Homogeneous Float Aggregate"

2018-02-04 Thread J. Gareth Moreton
Hi everyone, So I've almost finished implementing Microsoft's 'vectorcall' calling convention into Free Pascal - the final sticking point are Homogeneous Float Aggregates (HFA's), since the documentation isn't tremendously clear on their internal alignment - vectorcall allows the passing and r

Re: [fpc-devel] Suspicion about TThread.Synchronize

2018-02-04 Thread Martin
On 04/02/2018 19:17, Sven Barth via fpc-devel wrote: On 03.02.2018 17:39, Martin wrote: All based on win32 Pretext: I have an issue with a crash in PopThreadQueueHead called by CheckSynchronize.  (3.0.2) It happens in the Lazarus IDE, but at a low percentage only. (And not yet in the debugger)

Re: [fpc-devel] Suspicion about TThread.Synchronize

2018-02-04 Thread Sven Barth via fpc-devel
On 03.02.2018 17:39, Martin wrote: > All based on win32 > > Pretext: > I have an issue with a crash in PopThreadQueueHead called by > CheckSynchronize.  (3.0.2) > It happens in the Lazarus IDE, but at a low percentage only. (And not > yet in the debugger) > I don't think the below is related, but