summaryrefslogtreecommitdiff
path: root/compiler/nadd.pas
Commit message (Expand)AuthorAgeFilesLines
* * last commit fixed, hopefully final fixflorian2021-03-061-1/+1
* * improved last commit, better handling of boolean expressionsflorian2021-03-061-1/+1
* * do not apply the (a and b) or (c and not(b)) into c xor ((c xor a) and b)...florian2021-03-061-0/+1
* + optimize (a and b) or (c and not(b)) into c xor ((c xor a) and b)florian2021-02-281-0/+36
* + apply excess precision also to unary minus nodesflorian2021-02-281-1/+5
* * Removed/ifdefed lots of unused variables.yury2021-01-241-2/+1
* * clean upflorian2021-01-031-4/+0
* + fold also (string const+(string const+string var))florian2021-01-021-23/+62
* * properly fold string+string const+string const., resolves #38267florian2021-01-021-3/+20
* * refactored constant folding codeflorian2021-01-011-67/+80
* * first part of fixing #38267: do not bail out early during constant foldingflorian2021-01-011-20/+9
* * don't do x*x -> optimziation for xtensa as it causes a recursive call in ...florian2020-12-041-0/+3
* * correctly simplify tree transforms of (a+c1+c2) if a is a pointer, resolv...florian2020-11-161-2/+6
* * simplified and fixed code of (v1=const1) and (v2=const2) optimization, re...florian2020-11-151-31/+21
* * excess precision should not be applied to comp or currencyflorian2020-10-281-1/+2
* * directly copy the result of set <op> set into the left side of an assignmentflorian2020-10-271-23/+46
* * try_make_mul32to64: restore original node order if transformation failedjonas2020-10-231-2/+10
* * fix try_make_mul32to64() if it's called with a constant node on thejonas2020-10-191-5/+4
* * patch by Marģers to unify internal error numbers, resolves #37888florian2020-10-131-1/+1
* + optimize comparisons of constant pointersflorian2020-10-011-0/+28
* + evaluate typeinfo(<type1>)=/<>typeinfo(<type2>) at compile time, resolves #...florian2020-09-291-1/+22
* * don't perform "(x=y) or (z=u)" -> "(x xor y) or (z xor u)" optimizationjonas2020-09-201-1/+1
* * In the TP mode for 16-bit CPUs uint8+uint8 is extended to sint16+sint16. Th...yury2020-08-171-0/+4
* * do not apply range test optimization if the variable is a string being co...florian2020-08-151-2/+4
* * insert type casts when creating new unaryminus nodes during simplificatio...florian2020-08-071-5/+5
* * reverted r46220 as it is fixed now properlyflorian2020-08-051-2/+2
* * For 8/16 bit CPUs and TP mode, disable expansion to a larger integer type f...yury2020-08-041-1/+5
* * fix for Mantis #36775: apply patch by J. Gareth Moretonsvenbarth2020-08-031-1/+1
* * replace explicit (sometimes incomplete) tests with calls to doshortboole...jonas2020-08-021-63/+40
* * optimize a/a and a-a if fast math is onflorian2020-06-091-2/+16
* + optimize real operations with 0 and 1 if fast math is turned onflorian2020-06-081-0/+67
* * extended r45555 to take care of chars as wellflorian2020-06-021-2/+6
* * a nil node is also a constant pointer nodeflorian2020-06-011-1/+70
* * simplify constant expressions after re-ordering, resolves #37062florian2020-05-131-0/+2
* * cosmeticsflorian2020-05-101-4/+2
* * avoid unncessary conversions of constants in 64 bit ints when doing const...florian2020-05-101-1/+14
* * propagate forinlineflorian2020-05-091-1/+1
* * GetCopyAndTypeCheck forces correct typeflorian2020-05-011-1/+2
* + set expectloc in the first pass of the addnode for small CPUs for procvarde...nickysn2020-04-231-1/+4
* * set expectloc correctly for procvardef comparisons with nil for small CPUsnickysn2020-04-231-1/+5
* + set expectloc correctly for small CPUs in the first pass of the add node fo...nickysn2020-04-231-1/+4
* * set expectloc correctly for small CPUs for implicit pointer object types in...nickysn2020-04-231-1/+4
* * set expectloc correctly for enumdef comparisons on small CPUsnickysn2020-04-231-1/+4
* + also support the 8-bit mul helpers in the generic code of naddnickysn2020-04-221-0/+4
* * compilation for non-Xtensa targets fixedflorian2020-04-031-0/+2
* * factor out first_addfloat_softflorian2020-04-031-15/+21
* * do not do full boolean evaluation on LOC_FLAGSflorian2020-03-061-1/+1
* * fold also pointer additions/subtractionsflorian2020-02-161-10/+12
* * in case a 32x32 -> 64 multiplication is converted into shl, the type cast...florian2020-02-161-0/+4
* * do not fold constants if the resulttypes do not match, improved fix for #...florian2020-02-131-6/+8