Commit History

Autor SHA1 Mensaxe Data
  Jonas Maebe 281b3ad276 * fix case completeness and unreachable code warnings in compiler that would %!s(int64=6) %!d(string=hai) anos
  yury 4357caaad8 * Removed unused local vars. %!s(int64=6) %!d(string=hai) anos
  florian 2385c47c28 * compilation on x86-64 fixed %!s(int64=7) %!d(string=hai) anos
  florian 8c5606b41d + support mmx shifting %!s(int64=7) %!d(string=hai) anos
  florian 810acd82b2 * patch by J. Gareth Moreton that makes some improvements to the Peephole Optimizer for x86 and x86-64 code, as well as some cleanup with formatting, code syntax consistency, and debug messages. %!s(int64=7) %!d(string=hai) anos
  florian 5c4b1737c4 * in the generate_code normally imaginary registers are used, so just resize the register to 8 bit, the register allocator takes care of the rest %!s(int64=7) %!d(string=hai) anos
  florian 4a98fcb9d3 * patch by J. Gareth Moreton: reorganises the produced machine code for large unsigned divisions, resolves #32984 %!s(int64=7) %!d(string=hai) anos
  florian 52aa40c3b0 * remove explicit cast to int64 to avoid an internalerror 200706094, resolves #33004 %!s(int64=7) %!d(string=hai) anos
  florian 724b822b54 * patch based on a proposal by J. Gareth Moreton to reduce register usage %!s(int64=7) %!d(string=hai) anos
  florian 11a3d8762a * patch by J. Gareth Moreton: %!s(int64=7) %!d(string=hai) anos
  florian 81b2cf5d65 * slightly modified patch by J. Gareth Moreton: Optimization for 'mod' on i386/x86-64, resolves #32945 %!s(int64=7) %!d(string=hai) anos
  nickysn ddba821561 * GetNextReg(), used by 16-bit and 8-bit code generators (i8086 and avr) moved %!s(int64=7) %!d(string=hai) anos
  nickysn 6634141bf4 + generate better code for division by negative power of 2 constants in the x86 %!s(int64=8) %!d(string=hai) anos
  nickysn 19087d04da * replace several emit_const_reg calls that generate SHR or SAR instructions %!s(int64=8) %!d(string=hai) anos
  nickysn 9e8cc127b0 * improved the code, generated for signed division by 2 on i386 and x86_64 by %!s(int64=8) %!d(string=hai) anos
  nickysn bb7cd4866d * corrected comment in x86 division code - it said "signed", when it actually meant "negative" %!s(int64=8) %!d(string=hai) anos
  nickysn b6c3329f20 + also check for negative powers of 2 in the mod by power-of-2 constant x86 optimization, since the sign of the divisor is ignored by the 'mod' operation %!s(int64=8) %!d(string=hai) anos
  nickysn 7c306f18e3 + perform unsigned modulus by power of 2 constant by using an AND instruction (instead of DIV) on x86 %!s(int64=8) %!d(string=hai) anos
  florian b1dff29cbf * removed unused units %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe a25ebbba3e + added volatility information to all memory references %!s(int64=8) %!d(string=hai) anos
  florian 49f63d67b2 * correctly check left.location instead of left.expectloc when generating %!s(int64=9) %!d(string=hai) anos
  florian 77b4709e7a + i386 compiler tracks now flag usage if needed, so the mov $0,reg -> xor reg,reg transformation can be enabled %!s(int64=9) %!d(string=hai) anos
  yury 374148b966 * fixed compilation of 8086 compiler. %!s(int64=10) %!d(string=hai) anos
  yury 47b316d0e2 * Removed unused vars for x86-64 compiler. %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe 687bb15299 * renamed getdatalabel() to getglobaldatalabel %!s(int64=10) %!d(string=hai) anos
  florian 29d4037a9c * make integer division instruction (div/idiv) on x86 dependent on the %!s(int64=10) %!d(string=hai) anos
  Károly Balogh 07ad2a04ac * fix warnings when compiling the compiler with DFA optimizer enabled on i386 %!s(int64=11) %!d(string=hai) anos
  sergei 05ecd3cec1 * One more fix of operand size, likely harmless because shift amount is taken modulo bit-width anyway. %!s(int64=11) %!d(string=hai) anos
  sergei be6d6d90d7 + Division-by-constant optimization for x86_64 (merged i386 code adapted for different operand sizes, so the result should be suitable for i386 as well). %!s(int64=11) %!d(string=hai) anos
  sergei b594eee70b * Moved x86_64 mod/div code to x86, with minimal changes to ensure it compiles on i386/i8086. Merging optimized division-by-const code from i386 is pending... %!s(int64=11) %!d(string=hai) anos