[Gambas-user] Pre-release of Gambas 3.7 (2)

Benoît Minisini gambas at ...1...
Wed Mar 11 15:43:23 CET 2015


Le 11/03/2015 10:32, Gian a écrit :
> Il 11/03/2015 00:17, Benoît Minisini ha scritto:
>> Le 11/03/2015 00:03, Jussi Lahtinen a écrit :
>>>> Exactly. Only Emil can confirm, as I don't have enough knowledge about
>>>> that, but apparently there is no way to make an equivalent Gambas JIT
>>>> compiler with the new versions of LLVM!
>>>>
>>>> I have modified the configuration script of gb.jit so that it checks
>>>> that the llvm version is greater than 3.1, but strictly lower than 3.6.
>>>>
>>>
>>> I just realized that the blog post is quite old and LLVM 3.6 is just
>>> released. So, I hope the situation has improved since that!
>>> But maybe it would be gb.JIT2 that uses LLVM 3.6.
>>>
>>>
>>> Jussi
>>
>> Support of llvm >= 3.6 depends on Emil. At the moment, on Ubuntu, you
>> can install llvm 3.4, 3.5 and 3.6 at the same time so this is not a problem.
>>
>
> Just for your information:
> I got for the first time a Jit working on Ubuntu 14.04.02 LTS by
> installing the Trunk libraries as indicated in the documentation. About
> these libraries have installed llvm, llvm-dev e llvm-3.4-dev.
> With and without Fast: same computation about 3 seconds versus about 47
> seconds, earlier with llvm-3.5-dev and same computation I had obtained
> segmentation fault error.
>
> This is the Ru-vuott test:
>
>     Fast
>
>     Public Sub Button1_Click()
>
>       Dim I As Integer
>       Dim start, finish As Float
>
>       start = Timer
>
>       For I = 1 To 10
>         Print Test(0.2)
>       Next
>       finish = Timer
>       Print finish - start
>
>     End
>
>
>     Sub Test(X As Float) As Float
>
>        Dim Mu As Float = 10.0
>        Dim Pu, Su As Float
>        Dim I, J, N As Integer
>        Dim aPoly As New Float[100]
>
>        N = 500000
>
>        For I = 0 To N - 1
>          For J = 0 To 99
>            Mu = (Mu + 2.0) / 2.0
>            aPoly[J] = Mu
>          Next
>          Su = 0.0
>          For J = 0 To 99
>            Su = X * Su + aPoly[J]
>          Next
>          Pu += Su
>        Next
>
>        Return Pu
>
>     End
>

Please send your project.

Regards,


-- 
Benoît Minisini




More information about the User mailing list