florian
|
0cb85eef9b
* more currency fixes, should resolve #36176
|
5 years ago |
pierre
|
c87facbae1
Use PInt64(@value_currency)^ construct to avoid internal error when starting from 3.0.4 ppcarm compiler
|
5 years ago |
pierre
|
91e550edb6
Remove assigned but unused local variable i64 in taddnode.pass_typecheck_internal as suggested by Ondrej Pokorny
|
5 years ago |
florian
|
86d8e79e86
* fix some currency issues, resolves #33963 and #36179
|
5 years ago |
florian
|
acdff47554
+ optimize integer expressions like 2*x*4; which were not found by the node simplifier yet
|
5 years ago |
Jonas Maebe
|
d23c7980aa
* properly perform (or not) range/overflow checking when performing constant
|
5 years ago |
florian
|
cb67577002
* fix length(<dyn. type>)=0 optimization, resolves #36215
|
5 years ago |
florian
|
ee3258c0da
* optimizing length(<dyn. type>)=0 is not possible for jvm
|
5 years ago |
florian
|
e80eee5da5
* generate better code for length(<dyn. type>)=0, resolves #36060
|
5 years ago |
pierre
|
f82cc96cb9
Check that inserttypeconv really change node type to ttypeconvnode before setting convtype field (should fix taddbool.pp bytebool failure on powerpc)
|
6 years ago |
Jonas Maebe
|
40082100e1
* fixed range test optimization for signed types and enabled it for them
|
6 years ago |
Jonas Maebe
|
faf75095cd
* synchronised with trunk till r42189
|
6 years ago |
Jonas Maebe
|
eab079c7bd
* fixed cbool "and" with full boolean evaluation, and cbool "xor"
|
6 years ago |
Jonas Maebe
|
1b6425176b
* synchronised with trunk till r42049
|
6 years ago |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 years ago |
florian
|
38be96e586
* allow pointer+ord. const always if the node is created internally
|
6 years ago |
Jonas Maebe
|
7af95cbf06
* LLVM does not support 128 bits arithmetic on 32 bit platforms, which we
|
6 years ago |
Jonas Maebe
|
04d295f186
* first step towards supporting 32 bit targets with the LLVM code generator:
|
6 years ago |
Jonas Maebe
|
d1361ca6ed
* fixed adjustments of lower/upper bounds in range test optimization in case
|
6 years ago |
yury
|
4357caaad8
* Removed unused local vars.
|
6 years ago |
florian
|
116f36fe56
* avoid range check errors
|
6 years ago |
Jonas Maebe
|
0b246f3dbd
* converted Boolean8 to an internal type, and mapped Boolean to the
|
6 years ago |
pierre
|
293973b306
Add missing setting of expectloc for multiplications
|
6 years ago |
florian
|
352fb866ef
* is_range_test returns false if "lower" bound is greater than "upper" bound
|
6 years ago |
florian
|
a34d4e715c
Merged riscv_new branch
|
6 years ago |
florian
|
a21397e356
+ based on a patch by Laksen, optimize (v>=x) and (v<=y) into (v-x)<(y-x)
|
7 years ago |
svenbarth
|
32c307e9ce
* fix for Mantis #34021: if one of the two operators is an array constructor try to use an operator overload for that first before converting it to a set
|
7 years ago |
florian
|
32a58ba7d1
* might_have_sideeffects gets flags: if mhs_exceptions is passed, nodes which might cause an exception are considered as having a side effect
|
7 years ago |
florian
|
52846df241
* fixed condition in getbestreal
|
7 years ago |
florian
|
0c6cf12fbf
+ support for the directive $EXCESSPRECISION
|
7 years ago |