Sven/Sarah Barth
|
7f03fb6966
* revert the changes from b0d61558e38f7e9ceb3918dbbaab13bc49496320, as 61397d40ae0c43083844e850d87c60ba74b34d28 fixes it more correctly
|
1 year ago |
florian
|
2f9ed0576e
* optimize x </>= length(...) also if the operands are swapped
|
1 year ago |
florian
|
e130557d9f
* optimize x < length(arr) and x >= length(arr) as proposed in #40292
|
1 year ago |
florian
|
f29ff58ab9
+ get_int_value
|
1 year ago |
florian
|
2e9556f2eb
+ fold also constant pointer operations on nil nodes
|
1 year ago |
florian
|
5c46b5116d
+ also fold nil nodes when used as pointer constants
|
1 year ago |
Sven/Sarah Barth
|
b0d61558e3
* fix #40725: pass along whole array constructor to the Insert() so that it's converted with the correct checks
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
2b7df4237b
* nf_pass1_done, nf_error, nf_processing and nf_do_not_execute
|
1 year ago |
florian
|
4100f75056
+ optimize s:=s+[e] into include(s,e)
|
1 year ago |
florian
|
06fc6f1e6b
* use destination location instead of a temp when constructing sets, resolves #40384
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
e1297e0859
* Adjustment to "(v>=x) and (v<=y)" so it also optimises its inverse: "(v<x) or (v>y)"
|
1 year ago |
florian
|
e35403c3b8
* optimize additions of empty sets away if possible, part of #40384
|
1 year ago |
florian
|
594d4cc4f9
* transform -1-x into not(x)
|
1 year ago |
florian
|
59c77a48b5
* transform -x-1 into not(x), resolves #40313
|
1 year ago |
florian
|
4103b3d180
* formatting
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
ecc16278f0
* Flags specific to TAssignmentNode have been moved to their own field
|
1 year ago |
J. Gareth "Curious Kit" Moreton
|
b804fc5164
* Flags specific to TAddNode have been moved to their own field
|
1 year ago |
florian
|
6e5860cb87
* check for *-1 multiplications after folding, resolves #40448
|
1 year ago |
Michaël Van Canneyt
|
3eee2d8ff3
* Do not insert a widestring <-> ansistring conversion node when checking for (un)equal empty string.
|
2 years ago |
Sven/Sarah Barth
|
c994b5efe8
* fix #39447: when checking whether the parameters are valid for pointer arithmetic check the *correct* parameter for being valid pointer-like type (I'd say that this was a copy&paste mistake...)
|
2 years ago |
Nikolay Nikolov
|
8cd6606970
+ support nil comparison of WebAssembly reference types (externref and funcref)
|
2 years ago |
florian
|
64319dc019
* PopCount takes care only of the bit pattern, so take the uvalue to avoid an internal error, resolves #40190
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
c4899b5dc0
* Dead code in TAddNode.Simplify has been stripped
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
487ca08cf3
* In TAddNode.Simplify, commutative operations now ensure integer constant operands go on the right for simplicity
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
a5702d89e8
* More complex uses of the pruning methods in TAddNode.Simplify
|
2 years ago |
J. Gareth "Curious Kit" Moreton
|
9d8fd6d55e
* TAddNode.Simplify now uses pruning methods
|
2 years ago |
florian
|
09b435cdab
* transform a/a only into 1 if fastmath is on
|
2 years ago |
florian
|
789031a6e6
* compile float*2 as float+float if possible as proposed by Rika, resolves #40116
|
2 years ago |
florian
|
30e0df384d
* second part of #40041 fixed
|
2 years ago |
florian
|
e0fef23d77
* properly transform a+const1-const2 into a+const1+(-const2), resolves #40041
|
2 years ago |