florian
|
4103b3d180
* formatting
|
1 rok pred |
J. Gareth "Curious Kit" Moreton
|
179fc5848b
* Flags specific to TArrayConstructorNode have been moved to their own field
|
1 rok pred |
J. Gareth "Curious Kit" Moreton
|
ecc16278f0
* Flags specific to TAssignmentNode have been moved to their own field
|
1 rok pred |
florian
|
3cf7890352
* don't throw an internalerror in case of an illegal assignment to an open array, resolves #40662
|
1 rok pred |
Michaël Van Canneyt
|
fe62b3ace8
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
|
1 rok pred |
Sven/Sarah Barth
|
981ec64666
* fix #40594: when assigning a nested function to a function reference don't check for the nested procvars parameter, because nested functions can be treated like anonymous functions here
|
1 rok pred |
Sven/Sarah Barth
|
feb79e0068
- the setter for tloadnode.procdef is not used, so remove it so that that tloadnode.setprocdef can be extended
|
1 rok pred |
Sven/Sarah Barth
|
ab5c5a7e9a
* also keep track of captured def (necessary when functions are captured)
|
1 rok pred |
Jonas Maebe
|
12bde4e903
WPO: fix dead code detection, and handle procvars
|
2 rokov pred |
Sven/Sarah Barth
|
3c2703787c
* ensure that newly created tloadparentfpnodes have a valid resultdef as they might be created in situation where the loadnode itself is no longer typechecked
|
2 rokov pred |
Sven/Sarah Barth
|
2be8f01efe
* implement assignment of anonymous functions to procedure or method variables if they either capture nothing or (in case of method variables) at most the Self variable
|
4 rokov pred |
Sven/Sarah Barth
|
5129c2cb9a
* consider Self parameters of nested functions as captured as well
|
4 rokov pred |
Sven/Sarah Barth
|
d56a90e5ed
* keep track of symbols that are accessed from a nested/anonymous function that belong to a surrounding scope
|
4 rokov pred |
Sven/Sarah Barth
|
2cc621618a
* Delphi-mode calling without parenthesis
|
4 rokov pred |
Sven/Sarah Barth
|
90844c2027
* fix #35261: apply slightly adjusted changes by Ryan Joseph to implement support for implicit generic function specializations
|
3 rokov pred |
Yuriy Sydorov
|
07698050e5
* Before r35961 (back in 2017) some simple assignment optimizations, such as "x:=x+y" to "inc(x,y)", were performed when -O2 in tassignmentnode.simplify. In r35961 these optimizations were moved to a separate pass which is enabled only when -O3 by cs_opt_use_load_modify_store. This separate pass can benefit from other optimization. But worse code is generated with -O2 since then.
|
4 rokov pred |
svenbarth
|
067b9b2922
* copy and compare the typesym inside type nodes as well
|
4 rokov pred |
Jonas Maebe
|
8ba4c4bcf0
* factored out the creation of loadnodes for special variables/parameters
|
4 rokov pred |
florian
|
b36597c76a
* better calculation of estimated stack frame size
|
5 rokov pred |
yury
|
7bffafdf8b
* Improved the parentfp optimization to properly handle cases when a nested routine calls other nested routines.
|
5 rokov pred |
yury
|
c15b6f4516
* Fixed the parentfp optimization for some cases when nested procvars are used.
|
5 rokov pred |
yury
|
2808873d1b
* Reworked the optimization of unused $parentfp for nested routines.
|
5 rokov pred |
florian
|
fc98a0db4f
* cosmetics
|
5 rokov pred |
florian
|
fa4cbc89a5
+ Xtensa: hard float support, i.e. make use of floating point extension if available
|
5 rokov pred |
florian
|
f6c16323fa
* unified loadnf_load_self_pointer into loadnf_load_addr
|
5 rokov pred |
Jonas Maebe
|
ac1e0f96bd
* replaced tentryfile.get/putsmall/normalset() with a common tget/putset
|
5 rokov pred |
Jonas Maebe
|
ef6dde6de3
* fixed loading the address of a copied labelnode in a loadnode
|
6 rokov pred |
pierre
|
243c967967
Commit of new debug feature implemented by J. Gareth Moreton
|
6 rokov pred |
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 rokov pred |
Jonas Maebe
|
51e68eb302
* fixed several places where the interface crc could change:
|
6 rokov pred |