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 anos atrás |
Jonas Maebe
|
ea69a5b372
* finalizetemps nodes should never be considered equal and have side effects
|
6 anos atrás |
Jonas Maebe
|
3b9f5a5e96
* moved finalization of code generator temps to a node, so it can be getcopy'd
|
6 anos atrás |
svenbarth
|
116230f759
* forgot to commit extension to tspecializenode
|
6 anos atrás |
florian
|
800ce23499
* fixed some issues to get correct values of section_count, works better than before but it is still not perfect for unknown reasons
|
6 anos atrás |
svenbarth
|
0ba14c7ad8
* fix memory leak when freeing a temp delete node: also call the inherited destructor so that e.g. tnode.optinfo is freed.
|
7 anos atrás |
florian
|
1497b64804
* the temp. locations created by cse were not properly cleanup up, this patch fixes this
|
7 anos atrás |
florian
|
b1dff29cbf
* removed unused units
|
8 anos atrás |
florian
|
ec45a92fb5
* more nodedata printing fixes, similiar to r35477
|
8 anos atrás |
Jonas Maebe
|
b5fb9beec9
* fixed printing of nodedata to the screen
|
8 anos atrás |
svenbarth
|
c6bfb0064f
* keep track of the sections that are created in the asmlists
|
8 anos atrás |
florian
|
82e6e1eb34
+ tempinfo flag ti_no_final_regsync which prevents that the final reg. sync. is emitted
|
8 anos atrás |
florian
|
502e48541c
* properly copy flags of tempinfo
|
8 anos atrás |
Jonas Maebe
|
179c1ab328
* changed ttemp*node.tempinfo^.flags to a private field, and added setters
|
9 anos atrás |
Jonas Maebe
|
18580d3069
* when assigning a value to a temp marked as ti_const, do not immediately
|
9 anos atrás |
Jonas Maebe
|
46166c89cb
- removed no longer used and unsafe ttemprefnode.create_offset()
|
9 anos atrás |
svenbarth
|
4f5fc66298
+ new parser-only node class to handle Delphi-mode inline specializations
|
10 anos atrás |
sergei
|
657ac78304
* Improved handling of registers used in assembler blocks. Assembler nodes no longer have lists of used registers attached to them. Instead, each specified register creates an allocation/deallocation pair and an additional tai_regalloc.markused item directly in the asmlist. This way, register lists are no longer limited to integer registers, and parsing no longer depends on paramanager to know which registers are volatile.
|
10 anos atrás |
florian
|
7b7aa8d542
* remove statements with only a nothing node when they are the only children of a block
|
10 anos atrás |
Jonas Maebe
|
9e29fd424d
* changed the "laststatement" parameter of internalstatements() from "var"
|
11 anos atrás |
florian
|
3e4198ea45
* take care of dyn. arrays in cse
|
11 anos atrás |
florian
|
99eadb91b3
* run CheckAndWarn to get proper locations for warnings about uninitialized variables
|
11 anos atrás |
florian
|
3cb747f4a7
* mark the node which is the entry of the user code with a flag
|
11 anos atrás |
florian
|
541d67771b
* keep managed types in registers if possible. Under certain circumstances (if they don't require init/final code,
|
12 anos atrás |
sergei
|
4e873d0561
+ Determine early (before pass 2) whether managed parameters/locals/temps will cause the procedure to reference RTTI labels and, therefore, need GOT.
|
12 anos atrás |
florian
|
075abd6220
+ support of stackframesize for arm thumb
|
12 anos atrás |
florian
|
7155808570
+ ttempcreatenode.printnodedata writes tempinitcode node
|
12 anos atrás |
Jonas Maebe
|
b50d0aa3d0
* only don't pre-finalize funcret temps that are passed by reference to the
|
13 anos atrás |
florian
|
c62a2c8bb5
+ write temptype when printing tempdelete nodes
|
13 anos atrás |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 anos atrás |