Commit Graph

6159 Commits

Author SHA1 Message Date
peter
b052265ecb * also check currnet dir when searching source files 2003-12-14 18:13:18 +00:00
peter
19b2170ee4 * optimizer works again with 1.0.x
* fixed wrong loop in FindRegWithConst
2003-12-14 14:18:59 +00:00
Jonas Maebe
942cfc9aac * isgp32reg was being called with both tsuperregister and tregister
parameters, so changed type to tsuperregister (fixes bug reported by
    Bas Steendijk)
  * improved regsizesok() checking so it gives no false positives anymore
2003-12-13 15:48:47 +00:00
peter
83abfdc39d * check unit name when expected unitname > 8 chars 2003-12-12 19:42:21 +00:00
peter
bce5a1e252 * rg[tregistertype] added in tcg 2003-12-12 17:16:17 +00:00
peter
6091cd2824 * don't give warnings for shortstring vecnodes 2003-12-12 15:42:53 +00:00
marco
9b3b94883b * always generate RTTI patch from peter 2003-12-12 12:09:40 +00:00
florian
69dbf59679 * staticlib extension for powerpc fixed 2003-12-11 19:06:21 +00:00
florian
6793170b72 * HASGLOBALPROPERTY define introduce 2003-12-11 18:15:06 +00:00
florian
f7418d3286 * fixed external smartlinking 2003-12-11 17:53:03 +00:00
florian
2d6847e5cd + short gas register names for smartlinking added 2003-12-10 22:19:27 +00:00
Jonas Maebe
8da316cf21 * override tblocknode.destroy so all statements are freed sequentially
instead of recusively.
2003-12-10 20:31:40 +00:00
peter
41bf3e473c * int64 shl/shr > 63 returns 0 2003-12-10 17:28:41 +00:00
peter
7685cf9c78 * fix range error with tai_const 2003-12-10 17:13:22 +00:00
peter
5090185909 * global property support for fpc modes 2003-12-10 16:37:01 +00:00
mazen
23f1b2c49e * improve hadlign %hi and %lo operators 2003-12-10 13:16:35 +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
Károly Balogh
a6ab5f0207 * fixed logs 2003-12-10 02:22:59 +00:00
Károly Balogh
913e0aaef6 * initial revision 2003-12-10 02:07:35 +00:00
florian
96000de6d9 * variants and interfaces on powerpc released 2003-12-10 01:54:44 +00:00
florian
d43895d744 + initial interface support added 2003-12-10 01:10:25 +00:00
Károly Balogh
c5afdadecb * fixed compilation with -dppc603 2003-12-10 00:09:57 +00:00
Jonas Maebe
e9eff10134 + support for evaluating qword constant expressions (both arguments have
to be a qword, constants have to be explicitly typecasted to qword)
2003-12-09 21:17:04 +00:00
Jonas Maebe
8c11916462 * forgot call to cg.g_overflowcheck() in nppcadd
* fixed overflow flag definition
  * fixed cg.g_overflowcheck() for signed numbers (jump over call to
    FPC_OVERFLOW if *no* overflow instead of if overflow :)
2003-12-09 20:39:43 +00:00
Jonas Maebe
ccc9c93fc7 * support writing of symbols with length 255 2003-12-09 20:09:09 +00:00
marco
89a84c4d9d * base-file instead of base_file 2003-12-09 19:54:59 +00:00
Jonas Maebe
da6811ed58 * fixed and optimized in-node with constant smallset
* some register usage optimisations.
2003-12-09 19:14:50 +00:00
Jonas Maebe
d59197ec26 * fixed case bugs 2003-12-09 19:13:32 +00:00
mazen
247effd0cc + added uses_registers overloaded method for sparc 2003-12-09 09:44:22 +00:00
peter
57b4d5a0b9 * paralength is private again 2003-12-08 22:37:28 +00:00
peter
b3bc562249 * base_file instead of b 2003-12-08 22:37:04 +00:00
peter
1260eed8fd * again procvar fixes 2003-12-08 22:35:28 +00:00
peter
fb2a8b2b12 * don't check varstate for left of vecnode for normal arrays 2003-12-08 22:35:06 +00:00
peter
84b1451a34 * tai_const.create_32bit changed to cardinal 2003-12-08 22:34:24 +00:00
peter
fa52c0e3a0 * don't allow duplicate uses
* fix wrong circular dependency
2003-12-08 22:33:43 +00:00
Jonas Maebe
e4312930d1 * fixed usigned overflow checking 2003-12-08 21:18:44 +00:00
Jonas Maebe
fd8625f3eb * if there are assertions, include pi_do_call in procinfo.flags 2003-12-08 21:17:12 +00:00
peter
1d11c6d651 * line break in uses unit 2003-12-08 21:04:08 +00:00
peter
aa67951cf4 * copy loopflags 2003-12-08 19:29:21 +00:00
florian
dd8f11e8e1 * fixed ldm/stm arm assembler reading
* fixed a_load_reg_reg with OS_8 on ARM
  * non supported calling conventions cause only a warning now
2003-12-08 17:43:57 +00:00
peter
52ffda0bc4 * varargspara is left-right, so adding paraitems needs insert
instead of concat
2003-12-08 16:34:23 +00:00
peter
cea1da4a1e * fix loading of word/byte to real 2003-12-08 15:35:00 +00:00
mazen
3884537785 + support for native sparc assembler reader 2003-12-08 13:02:21 +00:00
florian
2e5c899b81 + dummy tppcparamanager.create_varargs_paraloc_info added 2003-12-07 22:35:05 +00:00
florian
e63ae3ffee * a_load_ref_ref isn't allowed to be used in g_stackframe_entry 2003-12-07 21:59:21 +00:00
Jonas Maebe
f3d82160b1 * fixed some more bugs which only showed up in a ppc cross compiler 2003-12-07 19:19:56 +00:00
Jonas Maebe
62394e45d7 * moved count_locals from pstatmnt to symutils
* use count_locals in powerpc/cpupi to check whether we should set the
    first temp offset (and as such generate a stackframe)
2003-12-07 16:40:45 +00:00
Jonas Maebe
24fe6134a0 * fixed typo found by Charlie 2003-12-07 16:28:30 +00:00
Jonas Maebe
5c7dba9167 * fixed g_rangecheck64 so it works again for big endian 2003-12-07 15:00:45 +00:00
Jonas Maebe
d564bd6027 * go to the next character after consuming a "%" 2003-12-07 14:03:37 +00:00
Jonas Maebe
eb803d4ad1 * fixed ansistring/widestring results: deallocate result reg only after
it has been stored to memory, as the storing itself may require extra
    results (e.g. on ppc)
2003-12-07 12:41:32 +00:00
Jonas Maebe
5f2356f45d * finally fixed int->bool conversion properly 2003-12-07 11:21:05 +00:00
Jonas Maebe
2aba43c797 * completely overhauled and fixed generic spilling code. New method:
spilling_get_operation_type(operand_number): returns the operation
    performed by the instruction on the operand: read/write/read+write.
    See powerpc/aasmcpu.pas for an example
2003-12-06 22:16:12 +00:00
Jonas Maebe
30cf6be249 * another fix to a_load_ref_reg()
+ implemented uses_registers() method
2003-12-06 22:13:53 +00:00
Jonas Maebe
062e03528e + allocate volatile registers around calls to procedures declared with
"saveregisters" on non-x86 processors
2003-12-06 22:11:47 +00:00
florian
bfe452936f * reverted Peter's alloctemp patch; hopefully properly 2003-12-06 01:15:22 +00:00
Jonas Maebe
8cb716ca56 * fixed load_ref_reg for source > dest size 2003-12-05 22:53:28 +00:00
peter
d2cca3fe56 * missing handle_calling_convention() 2003-12-04 23:27:49 +00:00
peter
1407a03ff1 * remove redundant calls to add_edge_used 2003-12-04 23:27:32 +00:00
Jonas Maebe
255589e12e * fixed some int<->boolean type conversion issues 2003-12-04 20:37:02 +00:00
mazen
82f816233d + added support for spac assembler reader 2003-12-04 10:46:19 +00:00
peter
64b0a0eadf * delayed paraloc allocation, a_param_*() gets extra parameter
if it needs to allocate temp or real paralocation
  * optimized/simplified int-real loading
2003-12-03 23:13:19 +00:00
peter
bd07b65cfd * don't turn off debuginfo when line info is requested 2003-12-03 17:45:36 +00:00
florian
1a87a5ed45 * fixed several arm calling conventions issues
* fixed reference reading in the assembler reader
  * fixed a_loadaddr_ref_reg
2003-12-03 17:39:04 +00:00
peter
e3beb78184 * exitlabel for inline procs 2003-12-02 21:23:34 +00:00
peter
9aba5c8c7a * fixed some crashes
* fixed varargs and register calling probs
2003-12-01 18:44:15 +00:00
peter
1b0d0ca3c4 * s128real type is not compatible with s80real 2003-12-01 18:43:31 +00:00
florian
a567970402 * fixed several arm related problems 2003-11-30 19:35:29 +00:00
Jonas Maebe
4ac4d2cadb * fixded fixref() regarding the reallocation of already freed registers
used in references
2003-11-30 11:32:12 +00:00
Jonas Maebe
08a966d88a * fixed fpu regallocator initialisation 2003-11-30 10:16:05 +00:00
Jonas Maebe
49d1c79f5e * fixed compilation for non-x86 2003-11-30 10:15:42 +00:00
Jonas Maebe
8ad6133ea3 * more ppc fixes, hello world works again under linuxppc 2003-11-29 22:54:32 +00:00
florian
ea754b9a49 * fixed several pi_do_call problems 2003-11-29 20:13:25 +00:00
Jonas Maebe
8cb7f46d9c * fixed writing of conditional branches which only depend on the value
of ctr
2003-11-29 18:17:26 +00:00
Jonas Maebe
dbe054ba4e * don't internalerror when emitting debuginfo for LOC_FPUREGISTER 2003-11-29 18:16:39 +00:00
peter
db60537005 * fixed is_move 2003-11-29 17:36:56 +00:00
peter
825d5b4ed7 * check for add_move_instruction 2003-11-29 17:36:41 +00:00
Jonas Maebe
d5373d5971 * fixed several ppc assembler reader related problems
* local vars in assembler procedures now start at offset 4
  * fixed second_int_to_bool (apparently an integer can be in  LOC_JUMP??)
2003-11-29 16:27:19 +00:00
peter
90a0c832e4 * Initialize() added 2003-11-29 16:19:54 +00:00
florian
11c5331fbf + nasmelf mode for BeOS
+ DQWORD directive in intel assembler mode
2003-11-29 15:53:06 +00:00
peter
2d08c072b5 * fix crash with exit() in a procedure 2003-11-29 14:49:46 +00:00
peter
bc762e9af4 * support type() 2003-11-29 14:41:02 +00:00
peter
353219a928 * typed address only used for @ and addr() that are parsed 2003-11-29 14:33:13 +00:00
Jonas Maebe
7f4a3bf1a9 * fixed bug which only showed up in the ppc crosscompiler :) 2003-11-28 18:49:05 +00:00
peter
b26e3c444a * reversed offset calculation for caller side so it works
correctly for interfaces
2003-11-28 17:24:22 +00:00
peter
d1dbdbd82f * serach also in include path for used files 2003-11-28 17:23:16 +00:00
mazen
077647ee63 + defintion of ts128real
+ globtype is needed in interface uses clause
2003-11-28 13:09:07 +00:00
florian
28ed277547 * resourcestring is allowed in the interface 2003-11-27 09:08:01 +00:00
michael
224a670b4a + Patch to prefer getpropinfo(ptypeinfo,name) over getpropinfo(tobject,name) when called with getpropinfo(aclass.classinfo) from Peter 2003-11-26 15:11:42 +00:00
michael
133701734b + Applied patch from peter to support ansistrings in array constructors 2003-11-26 14:25:26 +00:00
florian
4584775cbe * changed some types to prevend range check errors 2003-11-24 15:17:37 +00:00
Jonas Maebe
6623aaf098 * fixed is_condreg
* fixed branch condition parsing in assembler reader
2003-11-23 20:00:39 +00:00
florian
3f1b80bfaa + skeleton for bXX crX,<label> 2003-11-23 18:32:42 +00:00
peter
f4cffd4358 * removed obsolete nf_cargs flag 2003-11-23 17:39:33 +00:00
peter
474e1578a3 * don't release exceptsymtable for copied nodes 2003-11-23 17:39:16 +00:00
peter
d765fe0c40 * mark nodes that are copies 2003-11-23 17:38:48 +00:00
Jonas Maebe
9b38228c7e * fixed uninitialised var 2003-11-23 17:33:24 +00:00
peter
621f992afa * fixed memleak with derefdata 2003-11-23 17:23:49 +00:00
peter
51384ca53c * register calling is left-right
* parameter ordering
  * left-right calling inserts result parameter last
2003-11-23 17:05:15 +00:00
peter
ba3f7813de * fixed parentfp loading, it was using the offset of the current
nested proc instead of the parent
2003-11-23 17:03:35 +00:00
peter
c0c33961bf * use oldfpccall 2003-11-23 17:03:05 +00:00
Jonas Maebe
ac5eaeb144 - disable the optimizer if compiling with 1.0, because it has a code
generator (not optimizer) bug that causes crashes in the 1.1
    optimizer
2003-11-22 13:11:10 +00:00
Jonas Maebe
7128b3fdd2 * fixed double unit usage 2003-11-22 13:10:32 +00:00
Jonas Maebe
aad37ce53c * fixed optimiser so it compiles again
* fixed several bugs which were in there already for a long time, but
    which only popped up now :) -O2/-O3 will now optimise less than in
    the past (and correctly so), but -O2u/-O3u will optimise a bit more
  * some more small improvements for -O3 are still possible
2003-11-22 00:40:19 +00:00
Jonas Maebe
52980d5488 * fixed properties for MOVSB 2003-11-22 00:35:42 +00:00
Jonas Maebe
9bc4fa13a6 * fixed reversed "got <type 1>, expected <type 1>" error message 2003-11-22 00:32:35 +00:00
Jonas Maebe
3c33590a80 * fixed range error 2003-11-22 00:31:52 +00:00
Jonas Maebe
b3086d3122 + extra allocations of function result regs for the optimiser 2003-11-22 00:31:25 +00:00
florian
256299c274 * fixed reading of reg. sets in the arm assembler reader 2003-11-21 16:29:26 +00:00
florian
ebab97b3c8 + first part of arm assembler reader 2003-11-17 23:23:47 +00:00
florian
3b743d766b * fixed ppc assembler reader 2003-11-15 19:00:10 +00:00
Jonas Maebe
16834b1854 * fixed XSTORE instruction info 2003-11-13 18:54:22 +00:00
peter
9b9d30b0e9 * fixed wrong initialization 2003-11-12 16:58:42 +00:00
peter
2ebd9f20b5 * do nothing for macro's in tempcloseinput,tempopeninput 2003-11-12 16:57:59 +00:00
florian
1af574ceca * assembler readers OOPed
+ typed currency constants
  + typed 128 bit float constants if the CPU supports it
2003-11-12 16:05:39 +00:00
peter
30cbfd88d4 * virtual conflicts with override 2003-11-12 15:49:06 +00:00
peter
9610911036 * don't give redefinition warning for forward classes 2003-11-12 15:48:48 +00:00
peter
7bf41f8dff * fix set_varstate in for loops
* fix set_varstate from case statements
2003-11-12 15:48:27 +00:00
florian
063fa364eb * define UNIX and HASUNIX 2003-11-11 21:48:10 +00:00
peter
50f8604526 * check for push_addr 2003-11-11 21:11:23 +00:00
peter
765b1b51b6 * define REGCALL when pocall_default=pocall_register 2003-11-11 21:10:34 +00:00
peter
a1cb920b51 * remove temporary stdcall hack 2003-11-11 21:10:12 +00:00
marco
0ece242d9d * minor fix 2003-11-11 16:46:40 +00:00
peter
f663d2488f * cross unit inlining fixed 2003-11-10 22:02:52 +00:00
peter
76f5fbd7db * check paralength instead of assigned(left) 2003-11-10 19:11:39 +00:00
peter
dc7f09e29e * check for enumdef.maxval<255 instead of enumdef.savesize 2003-11-10 19:10:57 +00:00
peter
13961467e3 * fixed range compare when the last value was an equal
compare. The compare for the lower range was skipped
2003-11-10 19:10:31 +00:00
peter
a3c14e9c2d * procvar default value support 2003-11-10 19:09:29 +00:00
peter
0df248389d + $IF DECLARED() added 2003-11-10 19:08:59 +00:00
peter
517c5de6aa * line numbering is now only done when #10, #10#13 is really parsed
instead of when it is the next character
2003-11-10 19:08:32 +00:00
peter
f44380e4a9 * fixed alias/colouring > 255 2003-11-10 19:05:50 +00:00
florian
f2ad2b9d19 + published single properties can have a default value now 2003-11-10 18:06:25 +00:00
florian
69f8751c7a + is_single added 2003-11-10 18:05:16 +00:00
marco
80abe98cf0 * havelinuxrtl10 fixes 2003-11-10 17:22:28 +00:00
florian
82b7c0c9cc * tstoreddef.getcopy returns now an errordef instead of nil; this
allows easier error recovery
2003-11-08 23:31:27 +00:00
florian
585d13369c * fixed strange error message about expecting erroneous types,
usually this is caused by other errors so it isn't important
2003-11-08 17:08:44 +00:00
florian
2a178f0d93 * fixed parsing of typed widestring constants with length 1 2003-11-08 10:23:35 +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
mazen
6294931f73 + add more dirs in include path 2003-11-07 09:12:23 +00:00
florian
78e93cec32 * initial revision 2003-11-06 20:48:02 +00:00
peter
da85bd74b3 * 1.9.1 2003-11-06 15:58:27 +00:00
peter
25bf6452b4 * fixed calling classmethod for other object from classmethod 2003-11-06 15:54:32 +00:00
florian
08f4e363f6 * elesize of g_copyvaluepara_openarray changed 2003-11-05 23:06:03 +00:00
florian
788339336a * elesize of g_copyvaluepara_openarray changed
+ g_releaesvaluepara_openarray added
2003-11-05 23:05:13 +00:00
marco
094ab8b446 * fix from Peter arraysize warning (nav Newsgroup msg) 2003-11-05 14:18:03 +00:00
florian
8b337fb5ef + type cast variant<->enum
* cnv. node second pass uses now as well helper wrappers
2003-11-04 22:30:15 +00:00
peter
f47210ad0d * fixed initialize call after getmem 2003-11-04 19:05:03 +00:00
peter
6b90162c5a * fixes for temp type patch 2003-11-04 19:03:50 +00:00
peter
1688a42f0d * assigned(proc()) does not change the calln to loadn 2003-11-04 16:42:13 +00:00
peter
30f1eb4705 * fix for referencecounted temps 2003-11-04 15:35:13 +00:00
peter
e9aaebe873 * int_cgsize returned garbage for a=0 2003-11-03 17:48:04 +00:00
peter
af5a4842d5 * insert framepointer as voidpointer instead of returntype 2003-11-03 17:47:30 +00:00
marco
8e81a66b4c * BSD additions 2003-11-03 13:22:08 +00:00
marco
953cdb3dfe * cycle detection patch from peter 2003-11-03 12:32:48 +00:00
michael
5a277aacc0 + Patches from Wojciech Malinowski 2003-11-03 08:11:28 +00:00
florian
f72431af31 + copying of open array value parameters to the heap implemented 2003-11-02 17:19:33 +00:00
Jonas Maebe
a624d954f4 * fixed releasing of references (ppc also has a base and an index, not
just a base)
2003-11-02 15:20:06 +00:00
florian
a9d9a15e20 * fixed ARM for new reg. allocation scheme 2003-11-02 14:30:03 +00:00
Jonas Maebe
31ff6f25cb * fixed ppc compilation 2003-11-02 13:30:05 +00:00
marco
ba37a0e291 * package versions upgrade 2003-11-01 22:56:05 +00:00
peter
b8b0ba21fa * 1.9.0 2003-11-01 19:27:54 +00:00
peter
f5ab36ed03 * don't remove .0 when patchlevel = 0 2003-11-01 16:37:17 +00:00
peter
c9e80d4877 * 1.9.0 2003-11-01 16:27:46 +00:00
peter
9168d87b35 * use explicit typecast when generating the high value 2003-11-01 16:17:48 +00:00
peter
aadc6dbf2b * fix check for valid procdef in property rtti 2003-11-01 15:50:03 +00:00
peter
f2e031273b * don't search for compatible procvars when the proc is not
overloaded
2003-10-31 18:44:18 +00:00
peter
9b0dda9f42 * don't call proc_to_procvar for explicit typecasts 2003-10-31 18:42:03 +00:00
peter
b34b0141d5 * support creating classes using <class of tobject>.create 2003-10-31 15:52:58 +00:00
peter
684a771aca * fix crash with fail in constructor 2003-10-31 15:52:18 +00:00
peter
f2264589fc * fix crashes in asmnode.deref when p_asm=nil 2003-10-31 15:51:47 +00:00
peter
bd96bacd81 * USEINLINE directive added (not enabled yet) 2003-10-31 15:51:11 +00:00
mazen
a2cee9b843 * using findreg_by_<name|number>_table directly to decrease heap overheading 2003-10-31 09:22:55 +00:00
mazen
ba59054e84 * rgHelper renamed to rgBase
* using findreg_by_<name|number>_table directly to decrease heap overheading
2003-10-31 08:40:51 +00:00
peter
48ef24605a * support scalefactor for opr_local
* support reference with opr_local set, fixes tw2631
2003-10-30 19:59:00 +00:00
peter
08c8b2ea2c * fix IE when passing array to open array 2003-10-30 19:20:05 +00:00
marco
706118fcb9 * profiling fix 2003-10-30 18:53:53 +00:00
marco
0d72eee09e * librarysuffix + profiling 2003-10-30 18:35:30 +00:00
peter
e7ae580469 * also check for uninited vars in staticsymtable 2003-10-30 17:42:48 +00:00
peter
0bc3453035 * fixed findreg_by_number
* renamed rghelper to rgbase
2003-10-30 17:13:18 +00:00
peter
c8300cab51 * fixed rangecheck error 2003-10-30 17:12:49 +00:00
peter
19727a3609 * don't search for overloads in parents for constructors 2003-10-30 16:23:13 +00:00
peter
9e66b09843 * call firstpass before allocation and codegeneration is started
* move leftover code from pass_2.generatecode() to psub
2003-10-30 16:22:40 +00:00
mazen
fceb187d21 *** empty log message *** 2003-10-30 15:02:27 +00:00
mazen
75f88a5b90 * now uses standard routines in rgHelper unit to search registers by number and by name 2003-10-30 15:02:04 +00:00
mazen
bb42874171 + add support for double float register vars 2003-10-30 14:56:40 +00:00
mazen
94ff0298da * fixed problem in transmission of source dirs to gdb 2003-10-30 14:55:43 +00:00
mazen
d93398fd84 + standard routines to search registers by number and by name 2003-10-30 14:54:55 +00:00
florian
6a06df943b * fixed passing of dyn. arrays to open array parameters 2003-10-29 22:01:20 +00:00
peter
75e5a6e867 * procsym.deref derefs only own procdefs
* reset paracount in procdef.deref so a second deref doesn't increase
    the paracounts to invalid values
2003-10-29 21:56:28 +00:00
peter
9c15bf7fb1 * don't set second_load when second_compile was already set 2003-10-29 21:55:10 +00:00
Jonas Maebe
cf8b181ff2 * some ALLOWDUPREG improvements 2003-10-29 21:29:14 +00:00
Jonas Maebe
0cac29ec76 + support for fpu temp parameters
+ saving/restoring of fpu register before/after a procedure call
2003-10-29 21:24:14 +00:00
Jonas Maebe
c1279ba62b * allow more than 3 args in the spilling routine 2003-10-29 21:06:39 +00:00
peter
526cffbaad * set ms_compiled after the program/unit is parsed
* check for ms_compiled before checking preproc matches
2003-10-29 21:02:51 +00:00
peter
fae3eaf83d * move check for unused object constructor result to blocknode 2003-10-29 20:34:20 +00:00
peter
003ea697c0 * object constructor results are always used 2003-10-29 20:01:41 +00:00
peter
cac39ccfd4 * renamed mangeldname_prefix to make_mangledname and made it more
generic
  * make_mangledname is now also used for internal threadvar/resstring
    lists
  * Add P$ in front of program modulename to prevent duplicated symbols
    at assembler level, because the main program can have the same name
    as a unit, see webtbs/tw1251b
2003-10-29 19:48:50 +00:00
peter
bef3bb7b22 * fix field offset in reference 2003-10-29 16:47:18 +00:00
peter
5925d38ac7 * support indexing and offset retrieval for locals 2003-10-29 15:40:20 +00:00
mazen
105806e6e7 + added fake MM Registers support because of generic code need it. 2003-10-29 15:18:33 +00:00
mazen
7eb56b216a * 32 registers are available 2003-10-29 15:07:01 +00:00
mazen
81123566d3 * code reformatted 2003-10-29 14:42:14 +00:00
mazen
2d061f8108 * Splling function devided to sub functions to make it easy to understand.
This commit is just to allow easy diffs to validate the migration (hint use -w)
2003-10-29 14:05:45 +00:00
peter
7e450e736b * fix crash with ops=0 2003-10-28 18:46:49 +00:00
peter
2d6deeaade * regenerated 2003-10-28 16:44:35 +00:00
peter
079e489b08 * absolute to object field supported, fixes tb0458 2003-10-28 15:36:01 +00:00
peter
4245cedfed * compare longint-cardinal also makes types wider 2003-10-28 15:35:18 +00:00
mazen
1aff1a5804 * modification to allow using test dir 2003-10-28 12:12:22 +00:00
peter
168ccf83c3 * regenerated 2003-10-27 15:58:54 +00:00
peter
d28f3dfdae * fixed trec.field to return constant 2003-10-27 15:29:43 +00:00
florian
6906e33275 * fixed web bug #2129: explicit float casts in Delphi mode must be handled by the default code 2003-10-26 14:11:35 +00:00
florian
4d070e2a71 * fixed web bug #2128 2003-10-26 13:37:22 +00:00
florian
2660c358f3 * fixed compilation of ppc system unit 2003-10-25 11:34:02 +00:00
florian
1e72dd2d78 * fixed compilation of ppc compiler 2003-10-25 10:37:26 +00:00
peter
b327c20b12 * cleanup of the entry and exit code insertion 2003-10-24 17:40:23 +00:00
peter
96afb56699 * asmnode.get_position now inserts a marker 2003-10-24 17:39:41 +00:00
peter
53e8350307 * more intel parser updates 2003-10-24 17:39:03 +00:00
peter
ef94a6d0e4 * renamed R_SUBF64 to R_SUBFD 2003-10-24 15:21:31 +00:00
peter
b224d87ea5 * added more register functions 2003-10-24 15:20:37 +00:00
mazen
619b429650 *fixes related to removal of rg 2003-10-24 11:31:43 +00:00
mazen
7251301e50 -unused units removed from uses clause 2003-10-24 11:28:35 +00:00
mazen
dd632de71e -unused units removed from uses clause
*fix related to rg which was removed
2003-10-24 11:25:32 +00:00
mazen
f217753383 *fix related to toper==>poper 2003-10-24 11:22:50 +00:00
mazen
301f8978ae * rg.[un]GetRegister* ==> [Un]Get[*]Register 2003-10-24 11:14:46 +00:00
mazen
0bcacbde35 * fixed compil problem when using ObjFpc mode (^ required). 2003-10-24 07:00:17 +00:00
peter
9342178c7d * typecasting fixes
* reference building more delphi compatible
2003-10-23 17:19:44 +00:00
peter
5fc91adca4 * SearchType returns also the size 2003-10-23 17:19:11 +00:00
peter
3f2d99d04f * delphi mode uses packenum 1 2003-10-23 17:18:56 +00:00
peter
4a1ecb07d1 * splitted buildderef and buildderefimpl to fix interface crc
calculation
2003-10-23 14:44:07 +00:00
peter
63002aadb4 * fixed unit info messsage 2003-10-22 20:54:06 +00:00
peter
6878c55c80 * write derefdata in a separate ppu entry 2003-10-22 20:39:59 +00:00
peter
28c96ab8e2 * write implementation units in implementation part of the ppu
so it doesn't confuse the unit loading
2003-10-22 17:38:25 +00:00
marco
d4a94d9294 * -Xc -Xr support 2003-10-22 15:40:44 +00:00
peter
fcabdbbf35 * fixed unitsym-globalsymtable relation so the uses of a unit
is counted correctly
2003-10-22 15:22:33 +00:00
peter
86782a9b08 * ignore @ in Unit.@Proc 2003-10-21 18:17:40 +00:00
peter
aaf9043988 * only search for overloaded constructors in classes 2003-10-21 18:17:02 +00:00
peter
a28d911c98 * IncompatibleTypes() added that will include unit names when
the typenames are the same
2003-10-21 18:16:13 +00:00
peter
925046ad5f * fixed check for $X- result usage 2003-10-21 18:15:16 +00:00
peter
34d0dff840 * fix counting of parameters when loading ppu 2003-10-21 18:14:49 +00:00
peter
921502cce3 * fix writing of widechar to ppu 2003-10-21 18:14:30 +00:00
peter
ed8d5479d6 * already obsolete for 1,5 year 2003-10-21 15:43:34 +00:00
peter
96f9973b46 * taicpu_abstract.oper[] changed to pointers 2003-10-21 15:15:35 +00:00
peter
a57d25b3ed * also search in parents for overloads when calling a constructor 2003-10-21 15:14:55 +00:00
peter
276688dbb4 * fixed memleak for initfinalcode
* exit from generatecode when there are already errors
2003-10-21 15:14:33 +00:00
peter
77c5f6485d * fix vecnode code that caused to much register conflicts 2003-10-21 15:13:27 +00:00
peter
925bc3bbad * remove memdebug code for rg 2003-10-20 19:30:08 +00:00
peter
10f32e68cd * fix check for register subscription of reference parameter 2003-10-20 19:29:35 +00:00
peter
6ec273a878 * fix check for typecasting wrong sizes in assignment left 2003-10-20 19:29:12 +00:00
peter
1becfc28b4 * disable inlining when nested procedures are found 2003-10-20 19:28:51 +00:00