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
|
ea69a5b372
* finalizetemps nodes should never be considered equal and have side effects
|
6 rokov pred |
Jonas Maebe
|
3b9f5a5e96
* moved finalization of code generator temps to a node, so it can be getcopy'd
|
6 rokov pred |
svenbarth
|
116230f759
* forgot to commit extension to tspecializenode
|
6 rokov pred |
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 rokov pred |
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 rokov pred |
florian
|
1497b64804
* the temp. locations created by cse were not properly cleanup up, this patch fixes this
|
7 rokov pred |
florian
|
b1dff29cbf
* removed unused units
|
8 rokov pred |
florian
|
ec45a92fb5
* more nodedata printing fixes, similiar to r35477
|
8 rokov pred |
Jonas Maebe
|
b5fb9beec9
* fixed printing of nodedata to the screen
|
8 rokov pred |
svenbarth
|
c6bfb0064f
* keep track of the sections that are created in the asmlists
|
8 rokov pred |
florian
|
82e6e1eb34
+ tempinfo flag ti_no_final_regsync which prevents that the final reg. sync. is emitted
|
8 rokov pred |
florian
|
502e48541c
* properly copy flags of tempinfo
|
8 rokov pred |
Jonas Maebe
|
179c1ab328
* changed ttemp*node.tempinfo^.flags to a private field, and added setters
|
9 rokov pred |
Jonas Maebe
|
18580d3069
* when assigning a value to a temp marked as ti_const, do not immediately
|
9 rokov pred |
Jonas Maebe
|
46166c89cb
- removed no longer used and unsafe ttemprefnode.create_offset()
|
9 rokov pred |
svenbarth
|
4f5fc66298
+ new parser-only node class to handle Delphi-mode inline specializations
|
10 rokov pred |
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 rokov pred |
florian
|
7b7aa8d542
* remove statements with only a nothing node when they are the only children of a block
|
10 rokov pred |
Jonas Maebe
|
9e29fd424d
* changed the "laststatement" parameter of internalstatements() from "var"
|
11 rokov pred |
florian
|
3e4198ea45
* take care of dyn. arrays in cse
|
11 rokov pred |
florian
|
99eadb91b3
* run CheckAndWarn to get proper locations for warnings about uninitialized variables
|
11 rokov pred |
florian
|
3cb747f4a7
* mark the node which is the entry of the user code with a flag
|
11 rokov pred |
florian
|
541d67771b
* keep managed types in registers if possible. Under certain circumstances (if they don't require init/final code,
|
12 rokov pred |
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 rokov pred |
florian
|
075abd6220
+ support of stackframesize for arm thumb
|
12 rokov pred |
florian
|
7155808570
+ ttempcreatenode.printnodedata writes tempinitcode node
|
12 rokov pred |
Jonas Maebe
|
b50d0aa3d0
* only don't pre-finalize funcret temps that are passed by reference to the
|
13 rokov pred |
florian
|
c62a2c8bb5
+ write temptype when printing tempdelete nodes
|
13 rokov pred |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 rokov pred |