Commit History

Author SHA1 Message Date
  pierre 92cd9502ef Merge of revisions 40277 6 years ago
  pierre d8b0ded10c Marge of more trunk fixes into fixes branch. 6 years ago
  yury 71d9269b25 Merged revision(s) 40585-40586 from trunk: 6 years ago
  Jeppe Johansen 09a8cafcd7 Restricted MlaCmp>Mlas optimization to only work in ARM mode. 8 years ago
  florian 4868b83157 * do not generate always debug messages in the arm assembler optimizer 8 years ago
  yury 3bedccf946 * ARM scheduler need to move register de-allocs located before the instruction. Also preserve order of allocs and de-allocs. 8 years ago
  yury fe0e30030f * In ARM scheduler move all needed additional items with an instruction: 8 years ago
  Jonas Maebe 38fd0efa3b * don't conditionalise BL on ARM, because it may have to be converted to 9 years ago
  florian 73aeea73ed + VOpVMov2VOp optimization 9 years ago
  florian 1266491085 o refactored some peephole optimizer code: 9 years ago
  Jeppe Johansen 803f402bf8 Fix minor bug in peephole optimizer. 9 years ago
  yury 432248cbf1 * Removed lot of unused vars. 10 years ago
  yury df9d6db398 * Fixed instruction re-scheduler for ARM in case of PIC. 10 years ago
  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 years ago
  Jeppe Johansen 3bc1db9612 Fixed breakage in the ARM peephole optimizer indirectly brought to light by r29189. 10 years ago
  Jeppe Johansen d04e988ff1 Make sure optimizer don't generate invalid assembler forms (LDRD and STRD). 10 years ago
  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. 10 years ago
  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 years ago
  masta 7e22bd53b6 Changed ARMs StrLdr2StrMov peephole optimizer look further ahead 11 years ago
  masta bfa85218fa Introduce TCpuAsmOptimizer.GetNextInstructionUsingRef 11 years ago
  masta d1c5f89976 Make Next an Out-parameter in ARMs GetNextInstructionUsingReg 11 years ago
  masta 7a0c79de60 Fix for AndLsl2Lsl in ARM Peephole optimizer 11 years ago
  masta 85d208fea4 Fix ARM LoadScheduler in case of Pre/PostIndexed addressing 11 years ago
  Jeppe Johansen 857a849173 Added an additional check to the MulAdd2MLA optimization. The operands of the multiplication weren't checked. 11 years ago
  Jeppe Johansen a1197460e1 Constrained a number of optimizations and updated reference offsets for ARM Thumb. 11 years ago
  florian 23c8517418 * applying opXYX2opsXY to ADD makes no sense on thumb-2 (at least as far as I can see) 11 years ago
  Jeppe Johansen 95589fb1e2 Apply DataMov2Data to MLA and MLS too. Those have over 4 operands. 11 years ago
  florian ac85d44899 * do OpCmp2OpS optimization also if after cmp follows an appropriate mov 11 years ago
  Jeppe Johansen 6861cbcf16 Allow FoldShiftLdrStr for all sizes of LDR/STR, and disable it for references that post/pre increment the base register on Thumb-2 targets. 11 years ago
  Jeppe Johansen 07b2982e77 Don't do ARM FoldShiftLdrStr peephole optimization if there's an offset in the reference. 11 years ago