Commit History

Autor SHA1 Mensaxe Data
  florian 2e86cdb620 * allow swapping of operands for three operand instructions if they are commutative hai 1 ano
  florian fd68d3bfbb * ensure that left and right have a result type set in tx86addnode.pass_1, resolves #40727 hai 1 ano
  J. Gareth "Curious Kit" Moreton 2b7df4237b * nf_pass1_done, nf_error, nf_processing and nf_do_not_execute hai 1 ano
  J. Gareth "Curious Kit" Moreton b804fc5164 * Flags specific to TAddNode have been moved to their own field hai 1 ano
  J. Gareth "Curious Kit" Moreton 2a44ffe51b * x86: BZHI optimisation now sets the subtract and shift nodes to 'do not execute' as they are skipped over. %!s(int64=2) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton 16bd996e74 * x86: 'and not' optimisation now sets the NOT node to 'do not execute' as it is skipped over %!s(int64=2) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton 7da9b4a988 * x86: The code generator will now attempt to manipulate "x and ((1 shl y) - 1)" to use BZHI %!s(int64=2) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton a1ea1dd98e * x86: Changed BMI2 check to BMI1 for ordinal ANDN optimisation %!s(int64=2) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton 626e23d89f * x86: The code generator will now attempt manipulate "x and (not y)" (where x and y are ordinals) to use ANDN. %!s(int64=2) %!d(string=hai) anos
  florian f097d1ea35 * use the bts instruction on x86 if possible, the reg,reg variant is better than a mov/shl/or sequence %!s(int64=3) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton 6f24c8b4ef * x86: Code generation fixes where FLAGS %!s(int64=3) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton 9b4033fa80 Fast mod %!s(int64=4) %!d(string=hai) anos
  J. Gareth "Curious Kit" Moreton 2dc0995067 - Bug fix to new ADD/SUB optimisation where conditions are concerned %!s(int64=3) %!d(string=hai) anos
  florian 01d6358f93 * some fixes for expectloc %!s(int64=4) %!d(string=hai) anos
  Florian Klämpfl e121a753e1 * mark temps as deallocated %!s(int64=4) %!d(string=hai) anos
  Yuriy Sydorov b8befe3d1f * Fixed a typo in the condition, though it seems this code path is not used now. %!s(int64=4) %!d(string=hai) anos
  florian c02b43fb93 * change fma cpu flag into an fpu flag %!s(int64=4) %!d(string=hai) anos
  florian e46b426ca1 + tx86addnode.second_opvector makes use of AVX instructions %!s(int64=4) %!d(string=hai) anos
  florian 637976e83f * patch by Marģers to unify internal error numbers, resolves #37888 %!s(int64=5) %!d(string=hai) anos
  florian 043c3df292 * properly handle boolean64 xor boolean64 on i386 %!s(int64=5) %!d(string=hai) anos
  florian b2ed667a86 * swap fpu stack correctly when moving data into xmm registers %!s(int64=5) %!d(string=hai) anos
  florian 5f67d830e7 * better rules if a 3 op mul operation is tried %!s(int64=5) %!d(string=hai) anos
  florian b4de0b2e9c * insert fwait after fcompp, resolves #37136 %!s(int64=5) %!d(string=hai) anos
  florian 97efb03ae6 * call x86 addordinal for non short boolean evaluated boolean nodes %!s(int64=5) %!d(string=hai) anos
  florian fca4d3315b * let the operation do the type conversion for x87 floating point operations %!s(int64=5) %!d(string=hai) anos
  florian 3c16324f80 * x86: avoid to put variables into registers if they are handled by the x87-FPU %!s(int64=5) %!d(string=hai) anos
  florian 91f3f022fe * MM registers which might not be changed can be still used in 3 op mathematical operations as source %!s(int64=5) %!d(string=hai) anos
  florian 5f3050961f * load left properly into a register in tx86addnode.second_addordinal, resolves #36287 %!s(int64=5) %!d(string=hai) anos
  florian c8f746b881 * do not allocate an extra register for some integer operations if not needed %!s(int64=5) %!d(string=hai) anos
  Jonas Maebe ce598c15ec * factored out the conditions under which add nodes need to perform %!s(int64=6) %!d(string=hai) anos