Commit Graph

157 Commits

Author SHA1 Message Date
Jonas Maebe
ab3bc45fa4 * cpu-specific overrides of optimizer methods now get called
+ first simple rlwinm optimization for ppc

git-svn-id: trunk@1320 -
2005-10-07 21:44:00 +00:00
florian
5efee639fa * fixed result registers for reals when using softfloat mode
git-svn-id: trunk@1194 -
2005-09-25 17:44:24 +00:00
florian
faa5630fab * forgot to add file: should have been added with r1176
git-svn-id: trunk@1179 -
2005-09-24 17:44:45 +00:00
florian
c67502ac2c * real consts are now stored in text segment so they can be easier accessed
git-svn-id: trunk@1176 -
2005-09-24 16:11:49 +00:00
florian
5a2b5a50a4 * data order for doubles in int registers on wince fixed
git-svn-id: trunk@1171 -
2005-09-24 09:28:55 +00:00
peter
a3ab2053c9 * support multiple asmlabel types, renamed getlabel to
getjumplabel and added type para to getlabel for specific types
  * moved lineinfo generation from assemble and aggas to dbgstabs

git-svn-id: trunk@1120 -
2005-09-18 21:16:10 +00:00
peter
fdc4925fcd * basic framework for debuginfo class added
git-svn-id: trunk@1084 -
2005-09-15 08:34:51 +00:00
florian
95dc2eba5f * basic operand matching works
+ skeleton for pass 2 implemented

git-svn-id: trunk@1075 -
2005-09-11 20:53:16 +00:00
florian
6ad3930a5d * fixed broken powerpc compilation
* fixed imm24 constant matching on the arm

git-svn-id: trunk@1074 -
2005-09-11 16:13:55 +00:00
florian
d280ed6e8b * continued to work on arm binary writer, started to fix operand matching
git-svn-id: trunk@1073 -
2005-09-11 10:01:54 +00:00
florian
caecabf7ba + more arm assembler stuff
git-svn-id: trunk@1070 -
2005-09-10 09:30:39 +00:00
florian
e7e12f0f31 + some more arm binary writer stuff, this is mainly a transfer commit
git-svn-id: trunk@1068 -
2005-09-09 16:12:19 +00:00
florian
9452e2a91f + added all used instructions to armins.dat
* first clean up of armins.dat

git-svn-id: trunk@1065 -
2005-09-08 22:08:31 +00:00
florian
14fca113bf * basic framework for integrated arm assembler
git-svn-id: trunk@1061 -
2005-09-07 21:34:25 +00:00
florian
a8f2d702a7 * fixed code generation for sqrt and sqr in softfloat mode
git-svn-id: trunk@1038 -
2005-09-02 12:31:50 +00:00
florian
609f35b34c * fixed missing offset assignment
git-svn-id: trunk@984 -
2005-08-30 08:59:23 +00:00
florian
fea7d1df10 * fixed passing of float in softfloat mode on the stack
git-svn-id: trunk@978 -
2005-08-29 20:39:35 +00:00
florian
a53c9e2666 * fixed stupid copy/paste which turned softfloat always off
* fixed wince softfloat compiler proc. to be correctly named also when used outside the system unit

git-svn-id: trunk@966 -
2005-08-28 21:08:23 +00:00
florian
adb193497d + softfloat support for wince
* more units are build for wince

git-svn-id: trunk@959 -
2005-08-28 12:40:43 +00:00
florian
169688f198 * compiler part of first gba port
git-svn-id: trunk@937 -
2005-08-24 18:47:08 +00:00
florian
804207239d *c <int64>:=-<longint> fixed (bug 4253)
git-svn-id: trunk@796 -
2005-08-05 19:00:30 +00:00
florian
c15f720867 * fixed passing of floats for cdecl procedures/functions
git-svn-id: trunk@726 -
2005-07-21 20:12:28 +00:00
Jonas Maebe
8bc4e0a32f * inline and compilerproc are now procoptions instead of proccall types
(so both can be combined with each other, as well as with other calling
     conventions)
  * defined COMPPROCINLINEFIXED so SYSTEMINLINE is again activated

git-svn-id: trunk@658 -
2005-07-18 15:27:14 +00:00
florian
94b97e8898 * loading of references with small offsets fixed
git-svn-id: trunk@575 -
2005-07-03 16:27:11 +00:00
florian
c2fe9e3814 + compiler part of WinCE patches from Yuri Sidorov
git-svn-id: trunk@573 -
2005-07-03 15:52:54 +00:00
peter
c1b2e1aac5 * check function/procedure type when adding a proc definition
git-svn-id: trunk@546 -
2005-06-30 14:56:05 +00:00
florian
fb47b29858 * compiling error fixed
git-svn-id: trunk@511 -
2005-06-27 16:20:43 +00:00
peter
4ace790492 * remove $Log
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
Jonas Maebe
ec959955bd * fixed generic jumps optimizer and enabled it for ppc (the label table
was not being initialised -> getfinaldestination always failed, which
    caused wrong optimizations in some cases)
  * changed the inverse_cond into a function, because tasmcond is a record
    on ppc
  + added a compare_conditions() function for the same reason
2005-02-26 01:26:59 +00:00
florian
2b67164568 * optimizer files fixed 2005-02-20 19:36:03 +00:00
florian
871fd8d2b8 * initial commit 2005-02-20 19:11:04 +00:00
florian
00d9868260 * fixed constant insertation 2005-02-20 12:23:45 +00:00
florian
8305aa8781 * fixed storing of floating point registers for procedures with large temp. area
* fixed int64 comparisation
2005-02-16 22:02:26 +00:00
florian
f3df72d1b1 * don't split indirect calls while inserting pc relative constants 2005-02-15 21:24:40 +00:00
florian
f3b711d3bf * don't generate overflow results if they aren't necessary
* fixed op_reg_reg_reg_reg on arm
2005-02-15 19:53:41 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
florian
22d9294ab3 + overflow checking for the arm 2005-02-13 18:55:19 +00:00
peter
18ebd28692 * push_addr_param must be defined per target 2005-02-03 20:04:49 +00:00
florian
bd31b225a0 * fixed compilation of arm compiler 2005-01-30 14:43:40 +00:00
peter
04c97cc129 * load jmp_buf_size from system unit 2005-01-20 16:38:45 +00:00
florian
2069166e8a * arm compiler fixed 2005-01-15 21:45:35 +00:00
florian
c85ed49700 * arctan, sin and cos are done in software on the arm 2005-01-06 12:11:03 +00:00
florian
5942e4b6f6 * added support of shifter ops in arm inline assembler 2005-01-05 15:22:39 +00:00
florian
eca0cb266f * not operator for byte/word fixed 2005-01-04 21:00:48 +00:00
florian
468eca38bd * load_reg_reg fixed 2005-01-04 20:15:05 +00:00
florian
6ab9be6a5d * implemented nostackframe calling convention directive 2005-01-04 15:36:32 +00:00
florian
7d1dd39ecc * ie with array of const;cdecl; fixed 2005-01-01 19:30:17 +00:00
florian
ad4345c217 * fixed arm compilation 2004-11-24 22:03:26 +00:00