tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] Multiple, threaded LibTCC states


From: uso ewin
Subject: Re: [Tinycc-devel] Multiple, threaded LibTCC states
Date: Fri, 4 Dec 2020 22:04:35 +0100

TCC have a semaphore that should protect tcc when used by 2 different
threads, and I think at some point it was possible to use tcc with 2
different instances.
So if TCC crashes it's a bug.
Are you on mob or using the last release Jonathan ?
Because the semaphore was introduced after 0.9.27.


On Fri, Dec 4, 2020 at 9:16 PM Karl Yerkes <karl.yerkes@gmail.com> wrote:
>
> Hi Jonathan --
>
> I am responding because I've tried to use multiple instances of libtcc in 
> various threads. i am not a tiny CC developer.
>
> the short answer is no. libtcc is not designed to be reentrant. there is 
> global state that messes stuff up sometimes when you try to use multiple 
> instances simultaneously.
>
> there have been several attempts to move TCC in the direction of reentrancy, 
> but (to my knowledge) it has not happened yet.
>
> personally, i've had luck getting two instances working by linking both 
> statically and then dynamically in the same program. although, i'm not an 
> expert and i could just be getting lucky. i'm now working to a "one process 
> per two TCC instances" scheme.
>
> for more, search the email archives for reentrant.
>
> if i'm wrong about any of this, i hope someone with more knowledge will 
> correct me :)
>
> -- karl
>
> On Fri, Dec 4, 2020 at 6:07 AM Jonathan Levi <JonathanILevi@gmail.com> wrote:
>>
>> I am using LibTCC to compile runtime defined functions for a rendering layer 
>> of a project of mine.  I compile many of these functions in parallel.  
>> LibTCC is crashing with exit code -11, at what appears to be when execution 
>> is passed to LibTCC on multiple threads, at the same time.  It happens when 
>> I try to compile multiple functions at the same time, or compile a function 
>> at the same time as calling another already compiled function.  (Although 
>> calling multiple functions at the same time does not appear to exit.)
>>
>> Should LibTCC work in multiple threads?  I wonder whether I am just missing 
>> a dependency.
>>
>> Thanks,
>> Jonathan
>> _______________________________________________
>> Tinycc-devel mailing list
>> Tinycc-devel@nongnu.org
>> https://lists.nongnu.org/mailman/listinfo/tinycc-devel
>
> _______________________________________________
> Tinycc-devel mailing list
> Tinycc-devel@nongnu.org
> https://lists.nongnu.org/mailman/listinfo/tinycc-devel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]