florian
5168141540
* m68k compiler compilation fixed
2004-05-06 20:30:51 +00:00
florian
71f80e8bef
* continued to fix m68k compiler compilation
2004-05-01 23:29:01 +00:00
florian
c68ea95074
+ syscall directive support for MorphOS added
2004-04-28 15:19:03 +00:00
florian
c63660d3b9
* several updates for compilation
2004-04-27 15:46:01 +00:00
florian
842754a456
- removed offsetfixup reference
2004-04-27 15:00:37 +00:00
florian
9706934fdc
* fixed using new reg. tables
2004-04-27 13:54:10 +00:00
florian
9e26b177e6
* initial revision
2004-04-27 05:43:42 +00:00
florian
b19572b41d
+ gas registers
2004-04-26 11:05:14 +00:00
florian
1f18d7ac1b
* some m68k stuff fixed
2004-04-25 21:26:16 +00:00
florian
e750e24f3b
* fixed compilation
2004-04-19 21:15:12 +00:00
florian
a702d678aa
* more adaptions for m68k
2004-04-18 21:13:59 +00:00
olle
4fecc1a56f
* big transformation of Tai_[const_]Symbol.Create[data]name*
2004-03-02 00:36:32 +00:00
peter
ecfbbeffc3
* renamed xNNbittype to xNNinttype
...
* renamed registers32 to registersint
* replace some s32bit,u32bit with torddef([su]inttype).def.typ
2004-02-03 22:32:53 +00:00
florian
b80d10cb70
* fixed some m68k compilation problems
2004-01-30 12:17:18 +00:00
Károly Balogh
eec59028e3
* m68k register tables
2003-12-10 02:39:33 +00:00
Károly Balogh
4050f10698
* initial revision
2003-12-10 02:30:58 +00:00
florian
bbf7300a0c
* Florian's culmutative nr. 1; contains:
...
- invalid calling conventions for a certain cpu are rejected
- arm softfloat calling conventions
- -Sp for cpu dependend code generation
- several arm fixes
- remaining code for value open array paras on heap
2003-11-07 15:58:32 +00:00
Jonas Maebe
4f8c390198
* fixed regvars so they work with newra (at least for ppc)
...
* fixed some volatile register bugs
+ -dnotranslation option for -dnewra, which causes the registers not to
be translated from virtual to normal registers. Requires support in
the assembler writer as well, which is only implemented in aggas/
agppcgas currently
2003-08-17 16:59:20 +00:00
Jonas Maebe
404d344d92
* lots of newra fixes (need getfuncretparaloc implementation for i386)!
...
* renamed all_intregisters to volatile_intregisters and made it
processor dependent
2003-06-17 16:34:44 +00:00
Jonas Maebe
d29c96896f
* fixed newra cycle for x86
...
* added constants for indicating source and destination operands of the
"move reg,reg" instruction to aasmcpu (and use those in rgobj)
2003-06-14 14:53:50 +00:00
Jonas Maebe
edb2179730
+ added freeintparaloc
...
* ppc get/freeintparaloc now check whether the parameter regs are
properly allocated/deallocated (and get an extra list para)
* ppc a_call_* now internalerrors if pi_do_call is not yet set
* fixed lot of missing pi_do_call's
2003-06-07 18:57:04 +00:00
daniel
41e0bc4cec
* Register allocator finished
2003-06-03 13:01:59 +00:00
peter
60978ba89c
* aktprocdef renamed to current_procdef
...
* procinfo renamed to current_procinfo
* procinfo will now be stored in current_module so it can be
cleaned up properly
* gen_main_procsym changed to create_main_proc and release_main_proc
to also generate a tprocinfo structure
* fixed unit implicit initfinal
2003-04-27 11:21:32 +00:00
peter
72ad478f97
* fix compile for ppc,sparc,m68k
2003-04-23 21:10:54 +00:00
peter
2bb32541be
* fix m68k compile
2003-04-23 13:40:33 +00:00
florian
0284016ee9
* fixed several issues with powerpc
...
+ applied a patch from Jonas for nested function calls (PowerPC only)
* ...
2003-04-23 12:35:34 +00:00
daniel
25059e21b6
+ Implemented the actual register allocator
...
+ Scratch registers unavailable when new register allocator used
+ maybe_save/maybe_restore unavailable when new register allocator used
2003-04-22 10:09:34 +00:00
daniel
86bcea6ef5
* Code generator converted to new register notation
...
- Horribily outdated todo.txt removed
2003-02-19 22:00:14 +00:00
carl
236a807071
* bugfix of emissions of jmp instructions
2003-02-15 22:19:40 +00:00
carl
3c97889b0f
* some small m68k bugfixes
2003-02-12 22:11:13 +00:00
carl
59d3edeec7
* Several bugfixes for m68k target (register alloc., opcode emission)
...
+ VIS target
+ Generic add more complete (still not verified)
2003-02-02 19:25:54 +00:00
daniel
6e507ba483
* Added register conversion
2003-01-09 15:49:56 +00:00
daniel
55a161bbbf
* Tregister changed into a record
2003-01-08 18:43:56 +00:00
florian
b59b436130
* x86-64 compiles
...
+ very basic support for float128 type (x86-64 only)
2003-01-05 13:36:53 +00:00
carl
3214bab118
* maxoperands -> max_operands (for portability in rautils.pas)
...
* fix some range-check errors with loadconst
+ add ncgadd unit to m68k
* some bugfix of a_param_reg with LOC_CREFERENCE
2002-12-14 15:02:03 +00:00
florian
121ca40b39
* some variant <-> dyn. array stuff
2002-12-05 14:27:25 +00:00
carl
6413a958a5
* rename an error message
2002-12-01 22:12:36 +00:00
carl
62e2cd1c67
* merges from Pierre's fixes in m68k fixes branch
2002-11-30 23:33:02 +00:00
peter
f3fc72095f
* splitted defbase in defutil,symutil,defcmp
...
* merged isconvertable and is_equal into compare_defs(_ext)
* made operator search faster by walking the list only once
2002-11-25 17:43:16 +00:00
peter
a496dbe1ff
* pass proccalloption to ret_in_xxx and push_xxx functions
2002-11-18 17:31:54 +00:00
mazen
a835405a27
* fixed a compilation bug accmulator-->accumulator, in definition of return_result_reg
2002-11-17 18:26:15 +00:00
mazen
41153e2b1a
+ return_result_reg and function_result_reg are now used, in all plateforms, to pass functions result between called function and its caller. See the explanation of each one
2002-11-17 17:49:08 +00:00
carl
3e7b597352
+ update for compilation
2002-11-09 16:10:35 +00:00
carl
de26052432
+ flag_2_cond implemented
2002-10-14 16:32:36 +00:00
carl
4be0f8c217
+ a_call_reg
2002-09-22 14:15:31 +00:00
Jonas Maebe
a15d8cfe39
* a_load_reg_reg() now has two size parameters: source and dest. This
...
allows some optimizations on architectures that don't encode the
register size in the register name.
2002-09-17 18:54:01 +00:00
carl
6e30bbfd42
+ a_call_reg
2002-09-08 15:12:45 +00:00
carl
752beef0dd
* cardinal -> longword
2002-09-07 20:40:23 +00:00
peter
dcd9e0107c
* old logs removed and tabs fixed
2002-09-07 15:25:00 +00:00
daniel
fff92ef11e
* Fixed PowerPC & M68000 compilation
2002-09-03 19:04:18 +00:00
peter
4b81e16fe2
* tempgen cleanup
...
* tt_noreuse temp type added that will be used in genentrycode
2002-08-23 16:14:48 +00:00
carl
63ed5b6f99
- remove some unused files in m68k directory
2002-08-19 18:19:06 +00:00
carl
ed77671a9b
+ optimize64_op_const_reg implemented (optimizes 64-bit constant opcodes)
...
* more fixes to m68k for 64-bit operations
2002-08-19 18:17:47 +00:00
florian
41eda73784
* fixed compilation problems
2002-08-18 09:02:12 +00:00
florian
e313bab4ff
* first part of procinfo rewrite
2002-08-17 09:23:33 +00:00
carl
745efb2c47
* issameref() to test if two references are the same (then emit no opcodes)
...
+ ret_in_reg to replace ret_in_acc
(fix some register allocation bugs at the same time)
+ save_std_register now has an extra parameter which is the
usedinproc registers
2002-08-16 14:24:57 +00:00
carl
588abc6631
* jmpbuf size allocation for exceptions is now cpu specific (as it should)
...
* more generic nodes for maths
* several fixes for better m68k support
2002-08-15 15:15:55 +00:00
carl
c33d99adb7
- a_load_sym_ofs_reg removed
...
* loadvmt now calls loadaddr_ref_reg instead
2002-08-15 08:13:54 +00:00
carl
b0bf9a2512
* fix small compilation problem
2002-08-14 19:31:26 +00:00
carl
7866026667
+ m68k type conversion nodes
...
+ started some mathematical nodes
* out of bound references should now be handled correctly
2002-08-14 19:16:34 +00:00
Jonas Maebe
3ab3c91e0a
- remove valuelow/valuehigh fields from tlocation, because they depend
...
on the endianess of the host operating system -> difficult to get
right. Use lo/hi(location.valueqword) instead (remember to use
valueqword and not value!!)
2002-08-14 18:41:47 +00:00
florian
af4302bc67
* more fixes for ppc calling conventions
2002-08-13 21:40:55 +00:00
carl
654ddac250
+ m68k problems with cvs fixed?()!
2002-08-13 18:58:54 +00:00
carl
1edae761ef
+ m68k problems with cvs fixed?()!
2002-08-13 18:51:29 +00:00
carl
77346f3219
* rename swatoperands to swapoperands
...
+ m68k first compilable version (still needs a lot of testing):
assembler generator, system information , inline
assembler reader.
2002-08-13 18:45:32 +00:00
carl
a86c9a1c12
* rename swatoperands to swapoperands
...
+ m68k first compilable version (still needs a lot of testing):
assembler generator, system information , inline
assembler reader.
2002-08-13 18:30:22 +00:00
carl
c68b2dfbee
* rename swatoperands to swapoperands
...
+ m68k first compilable version (still needs a lot of testing):
assembler generator, system information , inline
assembler reader.
2002-08-13 18:01:50 +00:00
carl
b0cb623e27
- removed and renamed
2002-08-13 17:35:10 +00:00
carl
9da171faf2
+ stab register indexes for powerpc (moved from gdb to cpubase)
...
+ tprocessor enumeration moved to cpuinfo
+ linker in target_info is now a class
* many many updates for m68k (will soon start to compile)
- removed some ifdef or correct them for correct cpu
2002-08-12 15:08:39 +00:00
peter
425bb45ddc
* renamed current_library to objectlibrary
2002-08-11 14:32:25 +00:00
peter
ac71268ce6
* saving of asmsymbols in ppu supported
...
* asmsymbollist global is removed and moved into a new class
tasmlibrarydata that will hold the info of a .a file which
corresponds with a single module. Added librarydata to tmodule
to keep the library info stored for the module. In the future the
objectfiles will also be stored to the tasmlibrarydata class
* all getlabel/newasmsymbol and friends are moved to the new class
2002-08-11 13:24:10 +00:00
carl
a4d74cfd17
+ try to commit this ** file again
2002-08-11 08:06:09 +00:00
carl
f94cec7ddb
- removed unused m68k stuff
2002-08-09 19:21:50 +00:00
carl
f46268dbf6
+ more m68k fixes
2002-08-06 15:14:30 +00:00
carl
834283b0ba
+ updated m68k
2002-08-05 17:26:09 +00:00
carl
5c6c9c0499
- remove no longer used files
2002-08-05 17:20:59 +00:00
carl
3034065498
+ restart m68k support
2002-07-29 17:51:32 +00:00
carl
21b3a10f02
+ defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand
...
+ try to fix temp allocation (still in ifdef)
+ generic constructor calls
+ start of tassembler / tmodulebase class cleanup
2002-05-16 19:46:34 +00:00
carl
9b12acc70a
* renamed some constants
2002-04-20 21:38:45 +00:00
florian
ac4bbd85f0
* renamed
2000-11-30 22:41:55 +00:00
florian
d1f882fd59
* moved to m68k
2000-11-30 22:22:50 +00:00
peter
d93a445b58
* moved into m68k subdir
2000-11-30 20:30:33 +00:00
michael
e7aca136a1
+ Initial import
2000-07-13 06:29:38 +00:00
peter
e525797c51
* updated copyright to 2000
2000-01-07 01:14:18 +00:00
florian
a0badc3a30
* initial revision
1999-09-17 09:59:19 +00:00
florian
fbbf8a505c
* m68k compiler is again compilable (only gas writer, no assembler reader)
1999-09-16 23:05:51 +00:00