Commit History

Autor SHA1 Mensaxe Data
  sergei 0041024e5f * Modified FindRegAlloc() to skip branch delay slots in the same way it is done in GetNextInstruction(). This fixes processing sequences "dealloc reg; branch reg,label; NOP; alloc reg" in BuildLabelTableAndFixRegAlloc(), deallocation is now correctly moved after branch. Before this change, the last allocation was ignored, and deallocation was moved forward until another instruction using reg was encountered. %!s(int64=10) %!d(string=hai) anos
  florian 8060d4a3f7 * when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored %!s(int64=11) %!d(string=hai) anos
  masta 81517fdf70 Rerun peephole optimizers on the whole block %!s(int64=11) %!d(string=hai) anos
  florian 0eeb3e8d49 * check if the pointer is really assigned when trying to remove unneeded jumps %!s(int64=11) %!d(string=hai) anos
  sergei 40239e8bcc * Elaborating removal of branches with delay slots: ignore reg. deallocations that are inserted by RA between branch and its delay slot instruction. %!s(int64=11) %!d(string=hai) anos
  florian 2806947a8f + FindRegAllocBackward %!s(int64=12) %!d(string=hai) anos
  sergei 1c84c3edbf * Fixed label optimizer to work with MIPS, and enabled level 1 optimization for MIPS targets. %!s(int64=12) %!d(string=hai) anos
  sergei a4217da7df * Factored repeating code into separate procedure (IsJumpToLabel) %!s(int64=12) %!d(string=hai) anos
  florian b6a4602989 * ignore alignment entries in FindLabel %!s(int64=13) %!d(string=hai) anos
  florian 3e9baa3f47 * check also register type in FindRegalloc %!s(int64=13) %!d(string=hai) anos
  florian 6e62fbc3d2 * more consistent updates of used registers %!s(int64=13) %!d(string=hai) anos
  florian 07e26cfb12 + TUsedRegs.Update parameter IgnoreNewAllocs so new allocs of registers can be ignored during update %!s(int64=13) %!d(string=hai) anos
  Jonas Maebe d472a6d5d0 * changed tregset into tcpuregisterset so it's faster and uses less memory %!s(int64=13) %!d(string=hai) anos
  florian 72746e635d * optimize TAOptObj.UpdateUsedRegs to avoid multiple passes through the asmlist %!s(int64=13) %!d(string=hai) anos
  florian 17dd362a5a * white space %!s(int64=13) %!d(string=hai) anos
  florian 2402e8e504 * fixes FindRegAlloc %!s(int64=13) %!d(string=hai) anos
  florian 748694a325 * fixes some issues with reg. allocation information %!s(int64=13) %!d(string=hai) anos
  Jonas Maebe 7742dc0006 * don't remove ait_markers between unconditional jumps and the next label, %!s(int64=13) %!d(string=hai) anos
  florian 3c33bf4e6d * completed framework for register usage tracking %!s(int64=13) %!d(string=hai) anos
  florian 2a6a4831ea * basics for generic register usage information %!s(int64=13) %!d(string=hai) anos
  florian 39ab9eceba * fix OpsEqual %!s(int64=13) %!d(string=hai) anos
  florian 2f5ce095ce * RefsHaveIndexReg -> cpurefshaveindexreg %!s(int64=13) %!d(string=hai) anos
  florian 4868b09844 * patch by alexvin to replace $ifopt by $push/$pop, resolves #20332 %!s(int64=14) %!d(string=hai) anos
  Jonas Maebe 4be36c4b2b * fixed a number of missing label reference removals when deleting %!s(int64=14) %!d(string=hai) anos
  Jonas Maebe 666b4e2469 * fixed range errors in label bookkeeping that caused too much memory to be %!s(int64=15) %!d(string=hai) anos
  florian c71bc4084d * fixed wrongly fix of r11444 in r12049 %!s(int64=16) %!d(string=hai) anos
  florian 74efea399e * fix getlabelwithsym for 64 bit hosts and 32 bit targets %!s(int64=16) %!d(string=hai) anos
  yury bf454fad71 * Added function result for unimplemented methods to prevent warnings. %!s(int64=17) %!d(string=hai) anos
  yury 451a290caf * Fixed 'mixed signed/unsigned' and pointer conversion warnings. %!s(int64=17) %!d(string=hai) anos
  yury 491f0fa1d8 * Replaced all user defined warnings by TODO comments to reduce compiler noise. %!s(int64=17) %!d(string=hai) anos