A file compiled with version 0.17b on Win XP is larger (of all non-cmd line examples I've tried so far) than the same file compiled with 0.16b (e.g. 98kB versus 83kB for a small file).
I'm wondering if this is because the default libraries for 0.17 are larger?
For pixel plotting, I've found a 0.17-compiled exe plots on average 12% faster than identical source code compiled with 0.16 - seems an impressive improvement on what was already good in 0.16.
Would this be due to the promised backend changes of 0.17? (or updated libraries / optimization ?)
v0.17b versus v0.16b executables
I think the size is a little bigger due to all the new features, I know the devs take care to make things so that they link only what they need, that's why there are so many seperate .c files in the rtlib, and they are mostly very small, but some things can't avoid a little more overhead.
There hasn't been a full on backend change yet, I imagine that is still some way in the future, as it's a very big and difficult job, and v1ctor (the main dev) hasn't had as much time to work on FB lately.
However i know that some more things were made to evaluate at compile time. IE if you do (5 + 5) in your code, your program won't do that calculation, it will just know it is 10 (this optimization has been there since day 1, but this is just an example). I think some more of the maths functions now do that compared to 0.16.
Another thing i know that was added was a bit of peephole optimization, I'm not sure exactly what this does, the only one i know about is sometimes at the end of a function it would make some silly code, and that doesn't happen anymore.
There are probably a few more changes that relate to this that I don't know about too, I'm sure the devs will make code faster if they spot a chance.
There hasn't been a full on backend change yet, I imagine that is still some way in the future, as it's a very big and difficult job, and v1ctor (the main dev) hasn't had as much time to work on FB lately.
However i know that some more things were made to evaluate at compile time. IE if you do (5 + 5) in your code, your program won't do that calculation, it will just know it is 10 (this optimization has been there since day 1, but this is just an example). I think some more of the maths functions now do that compared to 0.16.
Another thing i know that was added was a bit of peephole optimization, I'm not sure exactly what this does, the only one i know about is sometimes at the end of a function it would make some silly code, and that doesn't happen anymore.
There are probably a few more changes that relate to this that I don't know about too, I'm sure the devs will make code faster if they spot a chance.
Who is online
Users browsing this forum: No registered users and 2 guests