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
  Jonas Maebe 04d295f186 * first step towards supporting 32 bit targets with the LLVM code generator: %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 0b246f3dbd * converted Boolean8 to an internal type, and mapped Boolean to the %!s(int64=6) %!d(string=hai) anos
  florian 96e92527e9 * constant folding of not must check if the deftype is really an orddef, resolves #33696 %!s(int64=7) %!d(string=hai) anos
  svenbarth 9b45f58c0b + add flags that allow checking for overloads with isbinaryoverloaded() and isunaryoverloaded() without modifying the passed in node or even checking for normally non-overloadable operators %!s(int64=7) %!d(string=hai) anos
  florian 71e71ad267 * fix currency division on non x86 32 bit targets %!s(int64=7) %!d(string=hai) anos
  florian 8c5606b41d + support mmx shifting %!s(int64=7) %!d(string=hai) anos
  nickysn b41762d1bf + perform the optimization in tmoddivnode.firstoptimize also for div/mod by %!s(int64=8) %!d(string=hai) anos
  nickysn 910e1eccc8 * set the bit mask, used for modulus by power-of-2 in a way, that is independent %!s(int64=8) %!d(string=hai) anos
  nickysn ee79ff3635 * improved the optimization of signed modulus by power-of-2, so it uses less %!s(int64=8) %!d(string=hai) anos
  nickysn a1928859b3 * in the optimization of signed division by power-of-2 constant in %!s(int64=8) %!d(string=hai) anos
  nickysn 277026ffd4 * perform the high level signed division by power-of-2 optimization for all %!s(int64=8) %!d(string=hai) anos
  nickysn b9fdca6f49 + better high level optimization for 64-bit signed division by 2 on 32-bit and %!s(int64=8) %!d(string=hai) anos
  nickysn ee4c82f5f5 * in the high level optimization of signed division by power-of-2 constant, set %!s(int64=8) %!d(string=hai) anos
  nickysn efc5e339d0 * use an enum instead of integer constants to represent inline numbers %!s(int64=8) %!d(string=hai) anos
  florian b1dff29cbf * removed unused units %!s(int64=8) %!d(string=hai) anos
  nickysn de1e0c405e + optimize '0 shl x' and '0 shr x' to 0 %!s(int64=8) %!d(string=hai) anos
  yury 0f9876effb * Fixed a memory leak when div is replaced by shift. %!s(int64=8) %!d(string=hai) anos
  pierre 1e5883b6d1 Avoid overflow error for single MinValue in rtl syshelph.inc for x86_64 CPU %!s(int64=9) %!d(string=hai) anos
  Jonas Maebe ed03286be5 * simplify "div -1" to unaryminusn, not just for performance reasons but %!s(int64=9) %!d(string=hai) anos
  yury 432248cbf1 * Removed lot of unused vars. %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe fbacf9682f * rename WinCE softfp compilerproc names to lowercase, needed since r31404 %!s(int64=10) %!d(string=hai) anos
  florian ba1297b1ab + provide also 8 and 16 bit div/mod helper %!s(int64=10) %!d(string=hai) anos
  florian 36e79a874e * when creating code for an iso mod operator, use create_internal for the helper nodes %!s(int64=10) %!d(string=hai) anos
  sergei 5f2821ee5f * Moved handling of emulated floating point negation into new virtual method tcgunaryminusnode.second_float_emulated. Also changed it into simple flipping of the sign bit, which is how it is defined by IEEE 754, and already done for ARM targets. Relevant ARM-specific parts can now be removed, and m68k code gets significantly better without further efforts. %!s(int64=11) %!d(string=hai) anos
  sergei c184d9740c + Implemented target-independent optimization of signed "mod 2**N" as %!s(int64=11) %!d(string=hai) anos
  nickysn a47ab44ec8 * unified the 8-bit and 16-bit alu handling in tshlshrnode.pass_typecheck %!s(int64=11) %!d(string=hai) anos
  nickysn 7d8fb1833f * 16-bit alu handling in tshlshrnode.pass_typecheck simplified via the use of %!s(int64=11) %!d(string=hai) anos
  nickysn a17797f3ca * tshlshrnode.simplify: in the case of 16-bit or 8-bit shl/shr, AND the right %!s(int64=11) %!d(string=hai) anos
  nickysn aa3f450832 * 8/16-bit alu fixes in tnotnode.simplify %!s(int64=11) %!d(string=hai) anos