Commit History

Автор SHA1 Съобщение Дата
  Károly Balogh a8ad51e96f m68k: unaligned access support in add nodes преди 9 години
  Károly Balogh 766eeffc69 m68k: build fix. (changes before commit is a bad idea...) преди 9 години
  Károly Balogh aa63aa95bb m68k: a bunch of '000 related fixes and cleanups. generated source now compiles for '000 again, which was broken due to recent improvements conflicting with limitations of the original '000 преди 9 години
  Károly Balogh a6ee4a2ded m68k: cleaned up second_addordinal and included OP_SUB in the common codepath преди 9 години
  Károly Balogh 47621f81cd m68k: implemented second_addordinal; for the most trivial cases. this allows the right node to be a reference. falls back to the generic implementation for nontrivial cases. преди 9 години
  Károly Balogh 424f329173 m68k: use inlined realconsts also during normal float calculations on '881/040/060. also optimize them where possible преди 9 години
  Károly Balogh 7710300c22 m68k: utilize FTST for comparing against float zero. also utilize FCMP realconst,fpreg on '881 for other realconst values преди 9 години
  Károly Balogh 92b2cf917d m68k: when saving/restoring FPU registers, use the right FPU register size on ColdFire to calculate the stored size преди 9 години
  Károly Balogh 4287f81b92 m68k: support and use float TResFlags in the rest of the CG. ColdFire FPU now works, and FSxx is no longer generated which is software supported on '060, and doesn't exist on CF. if we still want to support it later, we can add it to cg.g_flags2reg преди 9 години
  Károly Balogh 9d2dad2463 m68k: added cpu type cfv4e, which is the only ColdFire with FPU, and GNU AS needs this to actually allow CF FPU code преди 9 години
  Károly Balogh bd564b8933 m68k: some code to support the ColdFire v4e FPU. not functional yet. преди 9 години
  Károly Balogh 4e964c2ed7 m68k: rewrote fixref and a_load_ref_ref, fixing a bunch of problems on ColdFire, unifying and simplifying the code a lot, and hopefully not killing anything in the process преди 9 години
  Jonas Maebe 0fc1fd6ac1 * replaced current_procinfo.currtrue/falselabel with storing the true/false преди 10 години
  Károly Balogh 3650991d90 m68k: support LOC_REFERENCE/LOC_CREFERENCE for floating point instructions where possible преди 10 години
  Károly Balogh fdb09365ba m68k: instead of trying to mess with LOC_FLAGS, use LOC_REGISTER to return a boolean result of the compare. idea by Florian. fixes several issues with optimizer enabled and also results in better code in some cases. преди 10 години
  Károly Balogh 9693b37c1a m68k: actually,overwrite the resflags with F_E, because only that would be valid after the FSxx/TST combination преди 10 години
  Károly Balogh c062e55aa2 m68k: after a compare on the FPU, move the condition flags back to the CPU. this should make floating point compare actually working преди 10 години
  Károly Balogh d000b1bc7c m68k: basic 68881 fpu support. probably still broken at umpzillion places, and mostly untested, but at least it builds the RTL and all packages successfully with -Cp68020 -Cf68881 instead of dying with random internalerrors() and now even emits actual FPU opcodes. преди 10 години
  Károly Balogh 392da9e43f * fix warnings when compiling the compiler with DFA optimizer enabled on m68k преди 11 години
  sergei 499ff505c8 * m68k: further improved code generation for comparison nodes, support LOC_REFERENCE for 32-bit compares and omit low dword, when possible, for 64-bit ones. преди 11 години
  sergei 2c8264c42b * m68k: partially improved code generation for comparisons. преди 11 години
  sergei bd5ce35130 * m68k: completely replaced 64-bit comparison code with a clone of i386 implementation. No optimizations yet, but it already makes system unit about 300 instructions shorter due to changing node location to LOC_JUMP. преди 11 години
  sergei 15e374f3c6 * m68k: fixed comparison of small sets, it should not modify sides. tw18013 is now correct when compiled with -O2. преди 11 години
  sergei c2ab16c320 - m68k: dropped t68kaddnode.second_cmpboolean, apparently its presence just breaks tbs/tb0246 without any value added. преди 11 години
  sergei 193fa2b95e - m68k: removed some definitely misplaced code, comparison nodes are never handled in second_addfloat. преди 11 години
  Károly Balogh 2936335f68 removed silly ancient writeln debug from me... преди 11 години
  Károly Balogh a82a3ec38e let the assembler decide about the size of the Bcc and BRA instructions, this makes code generated here work on a 68000 (and probably a lot smaller in size, no more forced 32bit displacements) преди 11 години
  Jonas Maebe 4065483a50 * completed thlcgobj.location_force_fpureg(), use it everywhere and removed преди 11 години
  Károly Balogh 2791e8ad15 use optimized cg loading functions in 64bit compares instead of hardcoded move.ls (move.l #X,dn is 48bit long, clr.l/moveq.l is 16bit long) преди 11 години
  svenbarth 8e60465eb4 Fix the last failing tcnvint test (plus another one) by using comparisons that are not necessarily 32-bit. преди 12 години