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.
|
пре 11 година |
svenbarth
|
4d1fb1573e
m68k: Fix handling of small sets (based on how ARM does it)
|
пре 12 година |
svenbarth
|
6f5a648516
Improve the cpu type handling for M68k just in case we should branch 2.8.0 before I can start working on M68k again.
|
пре 12 година |
Jonas Maebe
|
2dd75e707e
* renamed thlcgobj.tcgsize2orddef to defutil.cgsize_orddef
|
пре 12 година |
svenbarth
|
78f0d6f70e
Revert the changes from r23383 for m68k/n68kadd.pas. Memo to self: Don't change code if you don't really understand why it does things the way it does.
|
пре 12 година |
svenbarth
|
ccecf2c13c
Fix comparisons (aka usage of flag/CCR register)
|
пре 12 година |
svenbarth
|
9d4d7d748c
m68k/n68kadd.pas:
|
пре 12 година |
svenbarth
|
f0aad6dbc4
* m68k/n68kadd.pas, t68kaddnode.second_cmpordinal:
|
пре 12 година |
svenbarth
|
5bb0e5992b
* m68k/n68kadd.pas, t68kaddnode.second_cmpboolean:
|
пре 12 година |
svenbarth
|
f746d9603a
* m68k/n68kadd.pas, t68kaddnode.second_cmpsmallset:
|
пре 12 година |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
пре 13 година |
florian
|
26850e3425
* fix full cycle after adding new boolean types
|
пре 14 година |
Jonas Maebe
|
8349cde7db
* changed byte/word/longbool to be Delphi-compatible (+ similar changes
|
пре 17 година |