Commit graph

  • ed49170d87 Remove empty SEF events. Sei Lisa 2017-10-30 16:55:00 +01:00
  • e13f210695 Make DoesSomething apply to labels optionally. Sei Lisa 2017-10-29 13:18:35 +01:00
  • f2a6243695 Reuse state names for function parameters; restart UsedNames. Sei Lisa 2017-10-28 22:30:16 +02:00
  • 70f39d7f5e Remove "magic names" where possible, using new data from fndata.txt Sei Lisa 2017-10-27 21:13:07 +02:00
  • b80b157489 Add a space between a minus sign and a negative constant. Sei Lisa 2017-10-27 19:53:38 +02:00
  • 14b13dc4e5 Implement flags aimed at removing "magic names" in the code. Sei Lisa 2017-10-27 18:49:58 +02:00
  • 3bb5102f06 Improve llStringLength detection, to catch more cases. Sei Lisa 2017-10-27 16:07:36 +02:00
  • 4c8227bae5 Set min for llStringLength and llGetListLength to 0. Sei Lisa 2017-10-27 11:25:18 +02:00
  • 1dde2a1fb9 Use lslfuncs.less instead of > >= < <= to ensure proper type handling. Sei Lisa 2017-10-27 11:20:42 +02:00
  • c0176ad738 Fix order change in comparisons when one side is not SEF. Sei Lisa 2017-10-27 11:03:35 +02:00
  • 106bb81543 Refine a comment. Sei Lisa 2017-10-26 01:07:48 +02:00
  • 4ba71993a4 Optimize min/max in comparisons; undo problematic optimization. Sei Lisa 2017-10-25 20:58:46 +02:00
  • 22e057e2ec Move side-effect-free check for functions to a method. Sei Lisa 2017-10-25 19:24:12 +02:00
  • 0bbfb08234 Add some missing but important minimum values. Sei Lisa 2017-10-25 18:36:48 +02:00
  • 2580248c17 Minor reorganization and documentation of a section. Sei Lisa 2017-10-25 18:04:27 +02:00
  • d5f5ab8b88 Add side-effect-free information for events. Sei Lisa 2017-10-25 17:46:50 +02:00
  • 2d823d8eae Fix Unicode in one error message. Sei Lisa 2017-10-25 14:11:34 +02:00
  • adde423447 Fix SEFness of llRequestPermissions. It's never SEF. Sei Lisa 2017-10-25 14:07:32 +02:00
  • 7e39635b09 Transform !(x != y) into x == y. Sei Lisa 2017-10-21 20:38:54 +02:00
  • fd815f0bdb Fix compare and llListSort for LSO. Sei Lisa 2017-10-21 12:32:41 +02:00
  • a832f8d786 Remove min, max when min > max, and SEF when both SEF and delay present. Sei Lisa 2017-10-21 11:47:29 +02:00
  • 923309e4a1 Refine test for min and max. Sei Lisa 2017-10-21 11:31:53 +02:00
  • ea9711642c Add type casting comparison to CompareTrees. Sei Lisa 2017-10-21 11:03:43 +02:00
  • dc117c2cbf Use CompareTrees to optimize the == operator. Sei Lisa 2017-10-21 11:02:38 +02:00
  • e6b23a2d7a Fix CompareTrees to not compare unstable functions as equal. Sei Lisa 2017-10-21 10:44:09 +02:00
  • 4d92cc8838 Mark user functions as unstable. Sei Lisa 2017-10-21 10:42:46 +02:00
  • cdacc45bb0 Make functions unstable by default, for safety. Sei Lisa 2017-10-21 10:32:56 +02:00
  • ee8c2cde98 Cosmetic fixes. Sei Lisa 2017-10-21 10:26:09 +02:00
  • b7700b7aab Remove debug code and seftable.txt Sei Lisa 2017-10-21 10:12:19 +02:00
  • 214d4a8a57 Add and read function properties table. Sei Lisa 2017-10-21 10:00:31 +02:00
  • 3f6f8ed8ad Internal code reorganization. Sei Lisa 2017-10-20 16:26:05 +02:00
  • 1a1531cb40 Use sys.getfilesystemencoding() to determine filename encoding. Sei Lisa 2017-10-20 13:59:02 +02:00
  • cf3e4c21ec Comment fix. Sei Lisa 2017-10-20 10:18:44 +02:00
  • 57df2558e7 New upstream version of builtins.txt. Sei Lisa 2017-10-20 10:00:24 +02:00
  • 36e336beee Add llGetStatus to lslextrafuncs. Sei Lisa 2017-10-20 09:58:49 +02:00
  • 3164a28c9b Add llGetAttachedList to lslextrafuncs. Sei Lisa 2017-10-18 21:57:33 +02:00
  • 96a0aebe3a Fix the logic in llDetectedTouchST/UV. Sei Lisa 2017-10-18 17:40:25 +02:00
  • 028b244a9e lslbasefuncs: Rewrite some things in a different way. Sei Lisa 2017-10-18 13:45:46 +02:00
  • ea28e13e4a Implement llClearLinkMedia's known return values. Sei Lisa 2017-10-18 13:43:53 +02:00
  • e051d49338 llAsin and llAcos return indet for indet input. Sei Lisa 2017-10-18 02:42:58 +02:00
  • fe8869053b Update copyright year of seftable.txt Sei Lisa 2017-10-18 00:10:14 +02:00
  • e8fb659592 Allow -2147483648 to count as a power of 2 in an optimization. Sei Lisa 2017-10-18 00:04:35 +02:00
  • 2bee2db148 Remove duplicate check for '|' Sei Lisa 2017-10-17 23:59:41 +02:00
  • be767f24f0 Move things around to better places; undo 8d33746. Sei Lisa 2017-10-17 23:53:24 +02:00
  • b4749d8fa4 Add debug code to display a subtree in a friendlier format than repr(). Sei Lisa 2017-10-17 23:32:33 +02:00
  • 4cbdbefe1b Fold again after applying distributibity or absortion. Sei Lisa 2017-10-17 23:28:14 +02:00
  • 6c73ba95c2 Allow (x&r) && (x&s) && (x&t) to be collapsed into a single number. Sei Lisa 2017-10-17 23:26:13 +02:00
  • 8d337467cb Fold the children of | as conditions when | is folded as condition. Sei Lisa 2017-10-17 23:25:26 +02:00
  • a6a16c6e8f Fold ==0, ==1, ==-1 in general expressions, not just in conditions. Sei Lisa 2017-10-17 02:38:08 +02:00
  • 82081b2206 Fix crash when variables appear inside global lists. Sei Lisa 2017-10-16 01:20:01 +02:00
  • cc96850f66 Fix bug where list elements of global declarations were removed. Sei Lisa 2017-10-16 00:55:56 +02:00
  • f77590df67 Fix sign of NaN*Indet and NaN/Indet. Sei Lisa 2017-10-14 15:16:18 +02:00
  • 0dc8629007 Raise ELSLInvalidType on invalid type passed to cond(). Sei Lisa 2017-10-14 14:17:42 +02:00
  • a5ec12c9e9 Change (float)"NaN" to (-1e40*0) in output. Sei Lisa 2017-10-14 13:05:14 +02:00
  • 6faa7816e6 Change ELSLInvalidType to ELSLTypeMismatch where appropriate. Sei Lisa 2017-10-14 11:33:18 +02:00
  • 3a849fe4b9 Optimize a common condition of (x & flag1) && (x & flag2) Sei Lisa 2017-10-13 02:49:01 +02:00
  • 6ad2ef04d7 Add support for function calls in CompareTrees. Sei Lisa 2017-10-13 00:30:47 +02:00
  • 7ae7fa4396 Apply two optimizations to bitwise operations. Sei Lisa 2017-10-12 22:48:43 +02:00
  • 9e7a5d1cdf Change strategy for the checking of function input types. Sei Lisa 2017-10-12 16:14:48 +02:00
  • 41d2c68cf8 Add some more functions with predictable results. Sei Lisa 2017-10-12 12:43:54 +02:00
  • 1071941301 Implement accurate error reporting through #line directives. Sei Lisa 2017-10-11 05:04:13 +02:00
  • 4ba0518353 Report EParseReturnIsEmpty at return, EParseReturnShouldBeEmpty at expression. Sei Lisa 2017-10-09 11:29:15 +02:00
  • 3214c553b2 Enable C99 mode for mcpp by default. Sei Lisa 2017-10-09 00:05:35 +02:00
  • 46455c33dc Merge 09d96576c7 into 4633c87a7c Sei-Lisa 2017-10-05 16:53:54 +00:00
  • 4633c87a7c Report EParseUndefined at the identifier causing it. Sei Lisa 2017-10-02 01:23:46 +02:00
  • c544b51e37 Rewrite ReportError() and change EParse to report columns in chars. Sei Lisa 2017-10-02 00:40:59 +02:00
  • 09d96576c7 Report EParseUndefined at the identifier causing it. Sei Lisa 2017-10-02 01:23:46 +02:00
  • 9b2668808f Rewrite ReportError() and change EParse to report columns in chars. Sei Lisa 2017-10-02 00:40:59 +02:00
  • 08c69eee0f Simplify a = a = b -> a = b Sei Lisa 2017-09-22 16:14:50 +02:00
  • bdd42199eb Fix bug where assignments were treated as statements. Sei Lisa 2017-09-22 16:04:44 +02:00
  • a0d4c77081 Minor cleanups; no functional changes. Sei Lisa 2017-09-22 14:17:56 +02:00
  • 0a7e2a9e1d Optimize llDeleteSubList(expr, 0, -1) to [] if expr is SEF Sei Lisa 2017-09-15 23:13:59 +02:00
  • a6a08fe3f3 Implement transformation of lists into additions. Sei Lisa 2017-09-15 22:30:22 +02:00
  • de29a9aa07 Fix for,while,if,do condition test during optimization. Sei Lisa 2017-09-11 18:05:05 +02:00
  • b97b2a78e8 Fix return value for some detection functions. Sei Lisa 2017-08-30 19:23:38 +02:00
  • 62eebb8bef Remove line no longer used from lsloptimizer.py. Sei Lisa 2017-08-30 19:22:12 +02:00
  • 2edd139a5c Fix copy/paste error in comment. Sei Lisa 2017-08-25 20:45:24 +02:00
  • 03c0e326c6 Remove "OK" from llDialog button list when it's the only element. Sei Lisa 2017-08-25 20:22:22 +02:00
  • 6738615360 Separate library function optimization into a different file. Sei Lisa 2017-08-25 20:11:16 +02:00
  • 36947b7b12 Rename lslfuncparams.py -> lslfuncopt.py Sei Lisa 2017-08-25 19:31:07 +02:00
  • 3ec460539e Implement the equivalent of GetObjectDetails for GPP/GLPP. Sei Lisa 2017-08-24 22:58:32 +02:00
  • 2a6e065c66 Optimize some llList2XXXX functions. Sei Lisa 2017-08-23 14:37:47 +02:00
  • 906e76ea47 Format LIST nodes; don't add indent to CONST list in calc mode Sei Lisa 2017-08-23 14:34:00 +02:00
  • 9a820a62d0 Simplify (type)sametype_expr -> sametype_expr. Sei Lisa 2017-08-23 11:58:05 +02:00
  • 2e09a3a986 Make some simplifications and keep PyFlakes happy. Sei Lisa 2017-08-23 11:55:37 +02:00
  • 3f59f5f16f New upstream release of builtins.txt. Sei Lisa 2017-08-17 16:57:08 +02:00
  • ca3885c549 Expand conditions of types other than integer, string, key. Sei Lisa 2017-08-17 01:58:30 +02:00
  • 20d2f68918 New upstream version of builtins.txt. Sei Lisa 2017-08-17 00:42:13 +02:00
  • a2e793df02 Parentheses around chained assignments are not necessary. Sei Lisa 2017-08-17 00:40:03 +02:00
  • 2e29cc9131 Try to do better with the propagation of FoldCond. Sei Lisa 2017-08-15 13:07:30 +02:00
  • c5b5a8303c Add TODO item to lslrenamer. Sei Lisa 2017-08-15 13:06:14 +02:00
  • 6693022dfb Add !llStringLength(s) -> s == "" optimization. Sei Lisa 2017-08-14 21:41:08 +02:00
  • 0d76e09567 Propagate some SEF flags that we forgot Sei Lisa 2017-08-14 21:23:09 +02:00
  • 7c88acfe61 Fix type of != in llGetListLength substitution. Sei Lisa 2017-08-15 12:52:48 +02:00
  • fe574bb462 Bump copyright year. Sei Lisa 2017-08-09 19:45:46 +02:00
  • dd6a65bb03 When including source at the top, make it more intelligible. Sei Lisa 2017-08-09 17:48:23 +02:00
  • e0fa1678a7 Optimize list addition when one list is known to have one element. Sei Lisa 2017-08-09 16:41:36 +02:00
  • 7afa09cbbb Instrument the parser to report every noninteger condition. sei-warn-nonint-cond Sei Lisa 2017-08-08 16:46:03 +02:00
  • 44e0db96d2 Optimize bool|1, bool&1 when possible. Sei Lisa 2017-08-02 01:40:48 +02:00
  • 3f61e6f7bf Make IsBool smarter when finding whether an expression is boolean. Sei Lisa 2017-08-02 01:05:17 +02:00