Commit History

Autor SHA1 Mensaxe Data
  ccrause aadb53e72c Only perform OpCp2Op optimization when the first Op is ANDI and comparison is against 0. %!s(int64=2) %!d(string=hai) anos
  florian 235c82feaa + AVR: MovOp2Op 2 optimization %!s(int64=4) %!d(string=hai) anos
  florian 99588969b9 * patch by Christo Crause: Fix missed optimization opportunities, resolves #38285 %!s(int64=4) %!d(string=hai) anos
  florian dd2212e1f7 * based on a patch by Christo Crause: more compiler fixes for avrtiny, resolves #36646 %!s(int64=5) %!d(string=hai) anos
  florian 0dc7bfde42 * patch by Christo Crause: support for megaAVR 0 and tinyAVR 0/1, #36616, part 1/3 %!s(int64=5) %!d(string=hai) anos
  florian a9bbcccb5d + AVR: GetDefaultZeroReg and GetDefaultTmpReg %!s(int64=5) %!d(string=hai) anos
  Jeppe Johansen 4996d129e5 - Add mov optimization for STS instruction. %!s(int64=6) %!d(string=hai) anos
  Jeppe Johansen 18ba7fc23a Generalize skip instruction optimization for both sbix and sbrx. %!s(int64=6) %!d(string=hai) anos
  Jeppe Johansen d993e1b9c3 avr: Add peephole optimization for in+sbr* bit test sequence. %!s(int64=6) %!d(string=hai) anos
  florian 7ceb3854c5 * AVR: fixed TCpuAsmOptimizer.RegLoadedWithNewValue %!s(int64=4) %!d(string=hai) anos
  pierre d8b0ded10c Marge of more trunk fixes into fixes branch. %!s(int64=6) %!d(string=hai) anos
  florian 11ef1d17c2 * fix register allocation for MovOp2Op and PushPushPopPop2MovMov %!s(int64=7) %!d(string=hai) anos
  florian 9fc0f28ae4 * handle movw in TCpuAsmOptimizer.RegInInstruction %!s(int64=7) %!d(string=hai) anos
  florian 61660375ce + AVR PeepHoleOptPass1Cpu makes use of TAOptObj.RemoveCurrentP to track register usage properly %!s(int64=7) %!d(string=hai) anos
  florian 63ffb02b34 + Mov2Nop %!s(int64=7) %!d(string=hai) anos
  florian 93a0cef65d * improved OpCp2Op %!s(int64=7) %!d(string=hai) anos
  florian 52cb8fbb98 + AddAdc2Add %!s(int64=7) %!d(string=hai) anos
  florian 5b16a84de1 + RCallReg2RJmp optimization %!s(int64=7) %!d(string=hai) anos
  florian 46ab35edb3 * apply MovOpMov2Op also to inc and dec %!s(int64=7) %!d(string=hai) anos
  florian 366360d36c * LdiMov/Cp2Ldi/Cpi may not be performed if reg0=reg1 %!s(int64=7) %!d(string=hai) anos
  florian ad01f059e8 * after a LdiMov/Cp2Ldi/Cpi optimization, the compiler should not continue to optimize this instruction because then reg. alloc info is wrong %!s(int64=7) %!d(string=hai) anos
  florian 4a43d992f5 * unified usage of MatchOpType %!s(int64=8) %!d(string=hai) anos
  florian 39b7f1bffe * do not write assembler optimizer debug output in avr assembler files %!s(int64=8) %!d(string=hai) anos
  florian 8e7101a65a * proper naming of the optimziation in the DebugMsg %!s(int64=8) %!d(string=hai) anos
  florian e33b2920dc + CallReg2Jmp optimization %!s(int64=8) %!d(string=hai) anos
  florian e49a826837 + PushPushPopPop2MovMov optimization %!s(int64=8) %!d(string=hai) anos
  florian 0520d246d0 * changed LdiCp2Cpi into LdiMov/Cp2Ldi/Cpi and improved it %!s(int64=8) %!d(string=hai) anos
  florian b2f15e2736 * first check for ait_instruction before checking opcode %!s(int64=9) %!d(string=hai) anos
  Jeppe Johansen baae6ec169 Fix incorrect AVR optimization. %!s(int64=9) %!d(string=hai) anos
  Jeppe Johansen 7fc3ed2644 Fix a broken OpCp2Op optimization. It needed the added NR_DEFAULTFLAGS allocation to not break subsequent optimizations. %!s(int64=9) %!d(string=hai) anos