yury
|
e5c2d13671
* Do not set pi_needs_got in current_procinfo.flags at the node level, since the GOT usage can only be estimated there. Instead set the pi_needs_got flag at places where the GOT register is accessed during the code generation. This eliminates generation of the unneeded initialization of the GOT register and fixes linker errors when the _GLOBAL_OFFSET_TABLE_ symbol is referenced but no actual GOT references are present.
|
6 年之前 |
Jonas Maebe
|
51e68eb302
* fixed several places where the interface crc could change:
|
6 年之前 |
florian
|
ae8304f657
* set nf_write flag properly for vec. nodes of types with implicit dereferencing
|
6 年之前 |
florian
|
9f16c34329
+ initial work for tls-based threadvar support on arm-linux
|
6 年之前 |
svenbarth
|
a8b2ad31d1
* fix for Mantis #34355: correctly check whether the array constructor is empty (aka []) or not
|
6 年之前 |
svenbarth
|
85439a0fa0
* also check for nf_assign_done_in_right flag after typechecking the right side
|
7 年之前 |
florian
|
0fd0e356e1
+ new flag ra_different_scope: used if a node tree is marked as non-regable if a variable is accessed from a different scope
|
7 年之前 |
florian
|
c230f81719
+ support for <dyn. array>+<dyn. array>, resolves #30463
|
7 年之前 |
svenbarth
|
d50848174a
+ add putboolean and getboolean convenience methods to tentfile
|
7 年之前 |
nickysn
|
efc5e339d0
* use an enum instead of integer constants to represent inline numbers
|
8 年之前 |
florian
|
b1dff29cbf
* removed unused units
|
8 年之前 |
svenbarth
|
8f4ef91efb
* tarrayconstructornode: force conversion to set if there's a range node in the tree
|
8 年之前 |
svenbarth
|
82b2d22ed6
* keep track of allow_array_constructor as part of the array constructor node
|
8 年之前 |
svenbarth
|
dfc23da06c
* tassignmentnode.pass_typecheck: also allow "dynarray := []" in addition to "dynarray := nil"
|
8 年之前 |
svenbarth
|
b1c66dee9b
+ tarrayconstructornode: add utility method has_range_node to check whether the array constructor node tree contains any range node
|
8 年之前 |
svenbarth
|
4a2266ac44
* tarrayconstructornode.pass_typecheck: set elementdef of the arraydef only after the arrayoptions are changed
|
8 年之前 |
nickysn
|
012153201a
* moved the conversion of "x:=x op k" to inline nodes to a separate optimization
|
8 年之前 |
nickysn
|
5bb77905cd
* fixed the missing warnings for unused variables at -O3, when one of the new
|
8 年之前 |
nickysn
|
4697a653a4
+ perform the "i:=i +/-/and/or/xor k" optimization when there are two typecasts
|
8 年之前 |
nickysn
|
d8406c4227
+ perform the "i:=-i" / "i:=not i" optimization even when there are typecasts
|
8 年之前 |
nickysn
|
98be270adb
* fixed a memory leak in the "i:=-i" / "i:=not i" optimization
|
8 年之前 |
nickysn
|
e78f0aafcd
- remove whitespace, was inserted by accident
|
8 年之前 |
nickysn
|
3616627d0b
* at -O3 optimization level, convert "i:=not i" and "i:=-i" to the new
|
8 年之前 |
nickysn
|
f29492bdea
* at -O3 level, convert i:=i and/or/xor k to the new in_[and/or/xor]_assign_x_y
|
8 年之前 |
florian
|
b55cb246da
* do +/-/pred/succ to inc/dec optimizations only at an appropriate optimziation level
|
8 年之前 |
pierre
|
a7c7319352
Avoid use of getcopy method for i:=i+/i k optimization
|
8 年之前 |
florian
|
a679cd4e37
* copy loadnodeflags in tloadnode.dogetcopy as well
|
8 年之前 |
nickysn
|
bd48a71a98
* replace i:=i+k/i:=k+i/i:=i-k (integer only, for now; later we can also do this for pointers too) by inc/dec(i,k)
|
8 年之前 |
florian
|
a27b07b342
+ more restrictions on pred/succ to dec/inc optimization
|
8 年之前 |
florian
|
000cffa8e3
* make more use of nf_internal to avoid range check errors
|
8 年之前 |