florian
|
e124b07e86
+ evaluate typeinfo(<type1>)=/<>typeinfo(<type2>) at compile time, resolves #30260
|
4 jaren geleden |
Jonas Maebe
|
aa75d39ab5
* don't perform "(x=y) or (z=u)" -> "(x xor y) or (z xor u)" optimization
|
4 jaren geleden |
yury
|
6878ffbf04
* In the TP mode for 16-bit CPUs uint8+uint8 is extended to sint16+sint16. This is TP compatible.
|
5 jaren geleden |
florian
|
18b8b9c566
* do not apply range test optimization if the variable is a string being compared against a char constants, resolves #37476
|
5 jaren geleden |
florian
|
d7ba09f543
* insert type casts when creating new unaryminus nodes during simplification, resolves #37508
|
5 jaren geleden |
florian
|
e14a3f17e6
* reverted r46220 as it is fixed now properly
|
5 jaren geleden |
yury
|
719220e8a4
* For 8/16 bit CPUs and TP mode, disable expansion to a larger integer type for subtract operations on unsigned integers. This is TP7 compatible.
|
5 jaren geleden |
svenbarth
|
c17ad509e2
* fix for Mantis #36775: apply patch by J. Gareth Moreton
|
5 jaren geleden |
Jonas Maebe
|
346adf7f55
* replace explicit (sometimes incomplete) tests with calls to doshortbooleval()
|
5 jaren geleden |
florian
|
5f118da600
* optimize a/a and a-a if fast math is on
|
5 jaren geleden |
florian
|
aafc22bd74
+ optimize real operations with 0 and 1 if fast math is turned on
|
5 jaren geleden |
florian
|
6d3b74f96e
* extended r45555 to take care of chars as well
|
5 jaren geleden |
florian
|
792cf056eb
* a nil node is also a constant pointer node
|
5 jaren geleden |
florian
|
7a60e044e3
* simplify constant expressions after re-ordering, resolves #37062
|
5 jaren geleden |
florian
|
e5e386f94a
* cosmetics
|
5 jaren geleden |
florian
|
ebcae70d72
* avoid unncessary conversions of constants in 64 bit ints when doing constant folding
|
5 jaren geleden |
florian
|
bdabf674e1
* propagate forinline
|
5 jaren geleden |
florian
|
43e6d84f33
* GetCopyAndTypeCheck forces correct type
|
5 jaren geleden |
nickysn
|
55254ff64b
+ set expectloc in the first pass of the addnode for small CPUs for procvardef comparisons
|
5 jaren geleden |
nickysn
|
96a714b20e
* set expectloc correctly for procvardef comparisons with nil for small CPUs
|
5 jaren geleden |
nickysn
|
073afe3735
+ set expectloc correctly for small CPUs in the first pass of the add node for classrefdefs
|
5 jaren geleden |
nickysn
|
2ee28809d8
* set expectloc correctly for small CPUs for implicit pointer object types in the first pass of the add nodes
|
5 jaren geleden |
nickysn
|
4ae5b81bff
* set expectloc correctly for enumdef comparisons on small CPUs
|
5 jaren geleden |
nickysn
|
c0ea4d826c
+ also support the 8-bit mul helpers in the generic code of nadd
|
5 jaren geleden |
florian
|
af8202be3d
* compilation for non-Xtensa targets fixed
|
5 jaren geleden |
florian
|
66cbee5e31
* factor out first_addfloat_soft
|
5 jaren geleden |
florian
|
f8339a43ea
* do not do full boolean evaluation on LOC_FLAGS
|
5 jaren geleden |
florian
|
93521ae8e8
* fold also pointer additions/subtractions
|
5 jaren geleden |
florian
|
27e89e07a3
* in case a 32x32 -> 64 multiplication is converted into shl, the type casts need to be restored
|
5 jaren geleden |
florian
|
251b18b966
* do not fold constants if the resulttypes do not match, improved fix for #tw26587
|
5 jaren geleden |