Commit History

Autor SHA1 Mensaxe Data
  florian da54d0e8f7 + patch by J. Gareth Moreton: new method TAOptObj.CanDoJumpOpts and arm specific implementation %!s(int64=5) %!d(string=hai) anos
  florian a2d3522812 * general-dynamic -> global-dynamic %!s(int64=5) %!d(string=hai) anos
  florian 5d1d9858d1 + VMovVMov2VMov optimization %!s(int64=6) %!d(string=hai) anos
  florian 3d5ab366e1 * fix RemoveSuperfluousVMov if the VMov destination reg is an integer register, resolved #35978 %!s(int64=6) %!d(string=hai) anos
  florian 0a0397c9f5 * forgotten part of previous commit: fix BccB2Cond optimization on arm %!s(int64=6) %!d(string=hai) anos
  florian fd70fcace6 * fix BccB2Cond optimization on arm %!s(int64=6) %!d(string=hai) anos
  florian f23f3a4c5e * enable TCpuAsmOptimizer.RemoveSuperfluousVMov for VLDR %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 281b3ad276 * fix case completeness and unreachable code warnings in compiler that would %!s(int64=6) %!d(string=hai) anos
  Jeppe Johansen 44beea91b5 - Fix UTX* optimizations that didn't consider the optional ROR parameter. %!s(int64=6) %!d(string=hai) anos
  florian 94d7a02fae * modified patch by Gareth Moreton to pool TmpUsedRegs in the assembler optimizers, resolves #34679 %!s(int64=6) %!d(string=hai) anos
  yury 92e579a294 * Improved the comment. %!s(int64=6) %!d(string=hai) anos
  yury fdcb12d9f6 * ARM: Remove preindexing and postindexing for LDR in some cases when removing superfluous MOVs. It fixes crash when calling Format() if rtl is compiled with -O3. %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 122d0d36d6 + volatile() expression that marks an expression as volatile %!s(int64=6) %!d(string=hai) anos
  pierre aebc8527ef Also disable range checking in arm/aoptcpu unit %!s(int64=6) %!d(string=hai) anos
  florian 9f16c34329 + initial work for tls-based threadvar support on arm-linux %!s(int64=6) %!d(string=hai) anos
  pierre fbffd2a38f Fix typecast in FindRegDeAlloc call %!s(int64=6) %!d(string=hai) anos
  Jeppe Johansen 09a8cafcd7 Restricted MlaCmp>Mlas optimization to only work in ARM mode. %!s(int64=8) %!d(string=hai) anos
  florian 4868b83157 * do not generate always debug messages in the arm assembler optimizer %!s(int64=8) %!d(string=hai) anos
  yury 3bedccf946 * ARM scheduler need to move register de-allocs located before the instruction. Also preserve order of allocs and de-allocs. %!s(int64=8) %!d(string=hai) anos
  yury fe0e30030f * In ARM scheduler move all needed additional items with an instruction: %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe 38fd0efa3b * don't conditionalise BL on ARM, because it may have to be converted to %!s(int64=9) %!d(string=hai) anos
  florian 73aeea73ed + VOpVMov2VOp optimization %!s(int64=9) %!d(string=hai) anos
  florian 1266491085 o refactored some peephole optimizer code: %!s(int64=9) %!d(string=hai) anos
  Jeppe Johansen 803f402bf8 Fix minor bug in peephole optimizer. %!s(int64=9) %!d(string=hai) anos
  yury 432248cbf1 * Removed lot of unused vars. %!s(int64=10) %!d(string=hai) anos
  yury df9d6db398 * Fixed instruction re-scheduler for ARM in case of PIC. %!s(int64=10) %!d(string=hai) anos
  Jeppe Johansen 9e5979e8be Implemented UAL syntax support in the ARM assembler reader. Can be toggled with a field for now, but not implemented yet. Still using pre-UAL syntax for now. %!s(int64=10) %!d(string=hai) anos
  Jeppe Johansen 3bc1db9612 Fixed breakage in the ARM peephole optimizer indirectly brought to light by r29189. %!s(int64=10) %!d(string=hai) anos
  Jeppe Johansen d04e988ff1 Make sure optimizer don't generate invalid assembler forms (LDRD and STRD). %!s(int64=10) %!d(string=hai) anos
  Jeppe Johansen d3e91bb60c Fixed issue #26965. The peephole optimization didn't move a potential register deallocation to after the ldr instruction causing mov's to be removed. %!s(int64=10) %!d(string=hai) anos