Commit History

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