Commit History

Автор SHA1 Съобщение Дата
  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. преди 6 години
  Jonas Maebe 122d0d36d6 + volatile() expression that marks an expression as volatile преди 6 години
  pierre aebc8527ef Also disable range checking in arm/aoptcpu unit преди 6 години
  florian 9f16c34329 + initial work for tls-based threadvar support on arm-linux преди 6 години
  pierre fbffd2a38f Fix typecast in FindRegDeAlloc call преди 6 години
  Jeppe Johansen 09a8cafcd7 Restricted MlaCmp>Mlas optimization to only work in ARM mode. преди 8 години
  florian 4868b83157 * do not generate always debug messages in the arm assembler optimizer преди 8 години
  yury 3bedccf946 * ARM scheduler need to move register de-allocs located before the instruction. Also preserve order of allocs and de-allocs. преди 8 години
  yury fe0e30030f * In ARM scheduler move all needed additional items with an instruction: преди 8 години
  Jonas Maebe 38fd0efa3b * don't conditionalise BL on ARM, because it may have to be converted to преди 9 години
  florian 73aeea73ed + VOpVMov2VOp optimization преди 9 години
  florian 1266491085 o refactored some peephole optimizer code: преди 9 години
  Jeppe Johansen 803f402bf8 Fix minor bug in peephole optimizer. преди 9 години
  yury 432248cbf1 * Removed lot of unused vars. преди 10 години
  yury df9d6db398 * Fixed instruction re-scheduler for ARM in case of PIC. преди 10 години
  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. преди 10 години
  Jeppe Johansen 3bc1db9612 Fixed breakage in the ARM peephole optimizer indirectly brought to light by r29189. преди 10 години
  Jeppe Johansen d04e988ff1 Make sure optimizer don't generate invalid assembler forms (LDRD and STRD). преди 10 години
  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. преди 11 години
  sergei a3c439c60f - No longer insert BlockStart markers into asmlists. The presence of these markers disrupts peephole optimizations and require additional checks all over the place, causing various workarounds/hacks (like TAsmList.Create_without_marker) to start building up. преди 11 години
  masta 7e22bd53b6 Changed ARMs StrLdr2StrMov peephole optimizer look further ahead преди 11 години
  masta bfa85218fa Introduce TCpuAsmOptimizer.GetNextInstructionUsingRef преди 11 години
  masta d1c5f89976 Make Next an Out-parameter in ARMs GetNextInstructionUsingReg преди 11 години
  masta 7a0c79de60 Fix for AndLsl2Lsl in ARM Peephole optimizer преди 11 години
  masta 85d208fea4 Fix ARM LoadScheduler in case of Pre/PostIndexed addressing преди 11 години
  Jeppe Johansen 857a849173 Added an additional check to the MulAdd2MLA optimization. The operands of the multiplication weren't checked. преди 11 години
  Jeppe Johansen a1197460e1 Constrained a number of optimizations and updated reference offsets for ARM Thumb. преди 11 години
  florian 23c8517418 * applying opXYX2opsXY to ADD makes no sense on thumb-2 (at least as far as I can see) преди 11 години
  Jeppe Johansen 95589fb1e2 Apply DataMov2Data to MLA and MLS too. Those have over 4 operands. преди 11 години
  florian ac85d44899 * do OpCmp2OpS optimization also if after cmp follows an appropriate mov преди 11 години