Károly Balogh
|
55d4ffa9de
m68k: add missing FINT and FINTRZ instructions to spilling_get_operation_type()
|
4 tahun lalu |
Károly Balogh
|
f20c76d73b
m68k: fixed a long standing issue, where FPU registers would be clamped to single precision during spilling
|
5 tahun lalu |
Károly Balogh
|
16fc8c8d9a
m68k: added some handling for the explicit precision FPU instructions in the spilling and optimizer. fixed a_fsabs and a_fdabs names
|
5 tahun lalu |
Károly Balogh
|
87e8010f05
m68k: support 32x32 to 64bit MUL generation when targeting CPUs which support this instruction
|
8 tahun lalu |
Károly Balogh
|
e9ff684ff0
m68k: handle operand type correctly for 3 operand mul/div
|
8 tahun lalu |
Károly Balogh
|
07cfb2f43a
m68k: removed unused 3 ops taicpu constructors
|
8 tahun lalu |
Károly Balogh
|
5237a4d5e2
m68k: support register pair operands in assembler reader and writer, as used by some instructions (mainly DIVS/DIVU and friends) so we don't have to hack them as three operand instructions
|
8 tahun lalu |
Károly Balogh
|
a2a630e9c5
m68k: fixed and enabled hardware mod/div support for coldfire, also it no longer depends on cpu family but cpu capability
|
9 tahun lalu |
Károly Balogh
|
e7838dad39
m68k: initial asm-level infrastructure to let the codegenerator output float consts as operands, which is supported on 88x/040/060
|
9 tahun lalu |
Károly Balogh
|
3e2319ff3a
m68k: do not allocate/free the regset dynamically having it as a normal field is perfectly fine
|
9 tahun lalu |
Károly Balogh
|
2e64db935a
m68k: BSET and BCLR's dest operand is actually readwrite, not write only. fixes sets with regvars, when the regvar is spilled
|
9 tahun lalu |
Károly Balogh
|
001dfecdf5
m68k: use isregoverlap in is_same_reg_move, to determine if we're doing a no-op move
|
9 tahun lalu |
Károly Balogh
|
c49c8210a3
m68k: some initial HLCG, use BSET/BCLR instructions for simple bit manipulation
|
10 tahun lalu |
Károly Balogh
|
258b42de26
m68k: added support for FSIN/FCOS. these are software supported on the 68040, so we should have a separate 68040/060 FPU option too, to avoid these in the future.
|
10 tahun lalu |
Károly Balogh
|
997ec578e0
m68k: added a simple unaryminusnode which can utilize FNEG instruction for floats on 68881
|
10 tahun lalu |
Károly Balogh
|
c72f58bcc5
m68k: implemented sqrt_real and abs_real inlines
|
10 tahun lalu |
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 tahun lalu |
Károly Balogh
|
a99c9c29b6
m68k: basic 68881 FPU register save/restore support. probably still needs some work here and there.
|
10 tahun lalu |
Károly Balogh
|
460c4acaee
m68k: implement taicpu.spilling_get_operation_type_ref, supports predecrement/postincrement addressing
|
10 tahun lalu |
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 tahun lalu |
Károly Balogh
|
d561e8ab57
m68k: generate smarter shifting/rotation code on 68k, for example by utilizing the SWAP instruction
|
11 tahun lalu |
sergei
|
b91d965096
* m68k: initial support for ROL/ROR operations, defining 'cpurox' for CPU target can actually enable them. However it cannot be done outright because these instructions do not exits on Coldfire, and internal processing of RoX,Sar,BsX, etc. can not yet be switched depending on CPU subtype.
|
11 tahun lalu |
Károly Balogh
|
9ec1d4ee89
fixed spilling operation type for some ColdFire instructions
|
11 tahun lalu |
Károly Balogh
|
aedf2dc20d
fixed spilling operation type for A_LEA, fixes test tb0112 to compile, but still fails to run
|
11 tahun lalu |
Károly Balogh
|
4c5f273bc5
removed redundant instruction table only used for ugly debug, and the ugly debug code itself
|
11 tahun lalu |
florian
|
babbc21afd
* fix handling of register sets on m68k: it is required that they are stored as two tcpuregistersets because address registers and data registers have different register types
|
11 tahun lalu |
Károly Balogh
|
b1b90211f1
fixed spilling operation type for lots of operations (thanks Florian), fixes a few endless loops in the testsuite, at least
|
11 tahun lalu |
svenbarth
|
ccecf2c13c
Fix comparisons (aka usage of flag/CCR register)
|
12 tahun lalu |
svenbarth
|
5adb28a935
m68k/aasmcpu.pas, taicpu.spilling_get_operation_type:
|
12 tahun lalu |
pierre
|
6bc6036fd5
Set cai_align and cai_cpu
|
12 tahun lalu |