Commit Graph

313 Commits

Author SHA1 Message Date
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
ca66b9f7c1 * force writing of new section before generating the jumptable
git-svn-id: trunk@1085 -
2005-09-15 14:08:02 +00:00
peter
fdc4925fcd * basic framework for debuginfo class added
git-svn-id: trunk@1084 -
2005-09-15 08:34:51 +00:00
peter
c3727c29b2 * rename al_code to al_procedures, al_bss/al_data to al_globals
* more work for section smartlinking

git-svn-id: trunk@1083 -
2005-09-15 06:51:12 +00:00
peter
05a628447f * put typedconsts in own asmlist to prevent mixing
array and string data
  * added al_rodata
  * renamed tasmlist enum names to include al_ prefix

git-svn-id: trunk@899 -
2005-08-17 08:42:52 +00:00
florian
9be5247db5 * dyn. arrays are always passed by value, fixes 4240
git-svn-id: trunk@800 -
2005-08-05 21:52:58 +00:00
florian
804207239d *c <int64>:=-<longint> fixed (bug 4253)
git-svn-id: trunk@796 -
2005-08-05 19:00:30 +00:00
daniel
d05f58b604 * Group asmlists into array to be able to add
some of them more comfortably.
  * x86_64 compilation was broken, fixed.
  * Sparc compilation was broken, fixed.

git-svn-id: trunk@731 -
2005-07-23 13:44:32 +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
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
88392fa21d * cardinal to double fixed
git-svn-id: trunk@514 -
2005-06-28 19:31:29 +00:00
florian
1fa6d8c993 * syntax error fixed
git-svn-id: trunk@410 -
2005-06-14 21:01:42 +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
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
florian
651f9e5bbd + implemented overflow checking for 64 bit types on sparc 2005-01-27 20:32:51 +00:00
florian
4efb72e13d * fixed load64 which shouldn't do a make_simple_ref 2005-01-25 20:58:30 +00:00
peter
e820bc93f2 * interface wrapper generation moved to cgobj
* generate interface wrappers after the module is parsed
2005-01-24 22:08:32 +00:00
florian
00324d38bf + optimized code generation on sparc
+ some stuff for pic code on sparc added
2005-01-23 17:14:21 +00:00
peter
35e466d971 * remove copy_value_on_stack and a_param_copy_ref 2005-01-20 17:47:01 +00:00
peter
04c97cc129 * load jmp_buf_size from system unit 2005-01-20 16:38:45 +00:00
Jonas Maebe
9c22d594b0 + support for passing records in registers under darwin
* tcgpara now also has an intsize field, which contains the size in
    bytes of the whole parameter
2005-01-10 21:50:05 +00:00
florian
fcfbc935a1 + implemented abi compliant handling of strucutured functions results on sparc platform 2005-01-07 16:22:54 +00:00
florian
ed57ad0371 * improved code generation for OP_MUL/OP_IMUL 2005-01-01 13:19:09 +00:00
florian
b44f17099c * fixed some alignment trouble 2004-12-18 15:48:06 +00:00
florian
d018160981 * fixed compilation 2004-12-04 15:23:00 +00:00
peter
8cf8c54609 * fixed varargs
* replaced dynarray with tlist
2004-11-22 22:01:19 +00:00
peter
a29eab36c7 * fixed funcretloc for sparc 2004-11-21 18:13:31 +00:00
peter
89b1b583c9 * ttempcreatenode.create_reg merged into .create with parameter
whether a register is allowed
  * funcret_paraloc renamed to funcretloc
2004-11-21 17:54:59 +00:00
florian
18f7aa97dd * changed funcret location back to tlocation 2004-11-21 17:17:03 +00:00
peter
4d8460ec2f * float routines all use internproc and compilerproc helpers 2004-11-21 15:35:23 +00:00
peter
e740a66636 * tparaitem removed, use tparavarsym instead
* parameter order is now calculated from paranr value in tparavarsym
2004-11-15 23:35:30 +00:00
peter
0c7e53bb81 * fixed compile of powerpc,sparc,arm 2004-11-11 19:31:33 +00:00
florian
239db4ba9d * marked o* registers as volatile 2004-11-07 00:33:45 +00:00
peter
c95a859f0a * generic tlocation
* move tlocation to cgutils
2004-10-31 21:45:02 +00:00
florian
a684d2669d * fixed jump table for sparc 2004-10-31 14:24:47 +00:00
florian
3a06b4f0fd * jmp table code generation for case statement on sparc 2004-10-30 22:01:11 +00:00
florian
7eccede56f * initial revision, not yet enabled 2004-10-30 17:50:53 +00:00
florian
e04b172854 * fixed generic optimizer
* enabled generic optimizer for sparc
2004-10-30 15:21:37 +00:00
peter
5ec6609d11 * add saved_standard_registers 2004-10-25 17:04:51 +00:00
peter
705868e816 * remove saveregister calling convention 2004-10-24 20:01:08 +00:00
florian
410d01458c * fixed several arm compiler bugs 2004-10-24 17:32:53 +00:00
peter
2ee2004032 * fixed compilation with removed loadref 2004-10-24 11:53:45 +00:00
florian
39805b678a * fixed currency to float conversion 2004-10-15 22:54:53 +00:00
peter
d6bffaf5c6 * fixed sparc compile
* fixed float regvar loading
2004-10-10 20:51:46 +00:00
peter
434475be33 * concatcopy_unaligned maps by default to concatcopy, sparc will
override it with call to fpc_move
2004-10-10 20:31:48 +00:00
florian
30873fc9a8 * fixed generation of refs wiht large offsets, code still broken though 2004-10-05 21:29:29 +00:00