LSL-PyOptimizer/lslopt
Sei Lisa 3f61e6f7bf Make IsBool smarter when finding whether an expression is boolean.
It was failing with a && b && c where a, b, c were known to be bools. It managed to simplify them to a & b & -c but that's not optimal.

Now it recurses on some operators that may return bool when used with bool operands: &, |, ^, * (in the case of &, it's bool if either operand is; for the rest, it's bool if both are). As a result, the above now simplifies to a & b & c, which is optimal.
2017-08-02 01:15:25 +02:00
..
__init__.py Initial commit. Status so far: 2014-07-26 02:43:44 +02:00
lslbasefuncs.py Fix (float)"nan" and (vector)"<nan,-nan..." on Windows. 2017-02-12 06:05:57 +01:00
lslcommon.py Fix llAbs raising a run-time exception in Mono. 2017-01-22 19:54:01 +01:00
lsldeadcode.py Don't run dead code removal when in calc mode. Add TODO item. 2017-01-28 06:36:49 +01:00
lslextrafuncs.py Fix llDetectedName return value. 2017-01-17 00:20:38 +01:00
lslfoldconst.py Make IsBool smarter when finding whether an expression is boolean. 2017-08-02 01:15:25 +02:00
lslfuncparams.py Fix type of parameter not being adjusted after optimizing parameter. 2016-12-21 05:44:32 +01:00
lslfuncs.py Add copyright notices to all files, to prepare the program for release. 2015-03-05 23:18:41 +01:00
lsljson.py Add copyright notices to all files, to prepare the program for release. 2015-03-05 23:18:41 +01:00
lsloptimizer.py Add optimizer option 'listlength' to optimize llGetListLength. 2017-01-25 19:22:36 +01:00
lsloutput.py Downgrade a FIXME item to TODO. 2017-01-28 05:04:26 +01:00
lslparse.py Give more meaningful errors when break/continue parameter is wrong. 2017-04-29 13:47:45 +02:00
lslrenamer.py Improve savings in ShrinkNames. 2017-01-28 03:36:25 +01:00