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
peter
d0b13d33c5
* fixed inlining float parameters for i386
2003-10-20 19:28:17 +00:00
florian
13a4e41b0c
* improved speed; reduced memory usage of the interference bitmap
2003-10-19 12:36:36 +00:00
florian
05fcae577a
* some ppc stuff fixed
...
* memory leak fixed
2003-10-19 01:34:30 +00:00
peter
9f54e1b7c5
* made worklists dynamic in size
2003-10-18 15:41:26 +00:00
Tomas Hajny
f70561922d
* Watcom patch by Wiktor Sywula
2003-10-18 09:16:45 +00:00
Tomas Hajny
4c5f5382a1
* upper limit for heapsize removed
2003-10-18 09:14:18 +00:00
Tomas Hajny
8980fce60a
* Watcom target name didn't fit in name field length
2003-10-18 09:04:11 +00:00
olle
4b274401b8
* compiler now defines cpum68k instead of cpu68k (as is used in rtl)
2003-10-17 21:05:27 +00:00
peter
ec7fb064d0
* fixed last commit
2003-10-17 16:16:08 +00:00
florian
5b33ab3643
* fixed more ppc stuff
2003-10-17 15:25:18 +00:00
peter
0939085ab1
* commented out more obsolete constants
2003-10-17 15:08:34 +00:00
peter
ec2e200e42
* fixed ppc build
2003-10-17 14:52:07 +00:00
peter
d0de3b3ea8
* 64k registers supported
...
* fixed some memory leaks
2003-10-17 14:38:32 +00:00
marco
b9dd3b25cc
* new locations for cross-compiler binaries
2003-10-17 14:10:53 +00:00
florian
6a01a7b4a6
* compilation of the powerpc compiler fixed
2003-10-17 01:22:08 +00:00
peter
63c5e8cfdf
+ __HIGH() to retrieve high value
2003-10-16 21:29:24 +00:00
florian
048fbd8228
* fixed 2729: overloading problem with methodvars and procvars
2003-10-14 12:23:06 +00:00
florian
57a2fe6ddb
+ some code for PIC support added
2003-10-14 00:30:48 +00:00
peter
303b5252e4
* removed is_visible_for_proc
...
* search also for class overloads when finding interface
implementations
2003-10-13 14:05:12 +00:00
peter
be740ce9ad
* regenerated
2003-10-13 12:39:32 +00:00
florian
b04af27efc
* fixed forgotten commit
2003-10-13 09:38:22 +00:00
florian
c70c620d9b
* some ideas for mm support implemented
2003-10-13 01:58:03 +00:00
florian
947280d8e2
* some ideas for mm support implemented
2003-10-13 01:23:13 +00:00
florian
46d9a10ecc
* some ideas for mm support implemented
2003-10-13 01:10:01 +00:00
marco
d841f44994
* -Xd
2003-10-11 19:32:04 +00:00
florian
1df13c788c
* fixed some MMX<->SSE
...
* started to fix ppc, needs an overhaul
+ stabs info improve for spilling, not sure if it works correctly/completly
- MMX_SUPPORT removed from Makefile.fpc
2003-10-11 16:06:42 +00:00
peter
fb81b7ebbb
* old trgobj moved to x86/rgcpu and renamed to trgx86fpu
...
* tregisteralloctor renamed to trgobj
* removed rgobj from a lot of units
* moved location_* and reference_* to cgobj
* first things for mmx register allocation
2003-10-10 17:48:13 +00:00
marco
8f92b2f14e
* typo fix from Wiktor
2003-10-10 09:21:53 +00:00
daniel
b2343f4b16
* Register allocator splitted, ans abstract now
2003-10-09 21:31:37 +00:00
peter
94957bca12
* fix check for generatenasmlib
2003-10-09 16:14:49 +00:00
peter
56ebcd1249
* self is not a token anymore. It is handled special when found
...
in a code block and when parsing an method
2003-10-09 15:20:56 +00:00
florian
8fcfcc6606
* fixed constructor call in class methods
2003-10-09 15:00:13 +00:00
peter
a909ffdd35
* allow explicit typecasts from classrefdef, fixes 2728
2003-10-09 14:39:03 +00:00
peter
9fc4e555dd
* regenerated
2003-10-09 14:35:20 +00:00
olle
ac930a13e2
* changed to symbolic const for alignment
...
+ alignment set for function result
2003-10-08 21:16:27 +00:00
olle
3febb20061
* changed to symbolic const for alignment
2003-10-08 21:15:27 +00:00
peter
9647af4066
* allow access to parent locals when the currnet localst has no
...
varsyms
2003-10-08 19:39:58 +00:00
peter
95f132db3d
* set_varstate cleanup
2003-10-08 19:19:45 +00:00
peter
f187323816
* -P to -ap
...
* -V to -vv
2003-10-08 19:17:43 +00:00
peter
fcd16aff24
* -Q back to -P, -L back to -V
2003-10-08 19:16:50 +00:00
florian
0210c33f15
* fixed resource compiler search if no utilty directory was given
2003-10-08 17:54:23 +00:00
mazen
14ac3dc2e2
* test now based on fpc/tests/test
2003-10-08 14:12:17 +00:00
mazen
7668192be0
+ Alignement field added to TParaLocation (=4 as 32 bits archs)
2003-10-08 14:11:36 +00:00
mazen
25dc5f7e80
+ ASMMODE ATT added to bypass fpc.cfg defaults
2003-10-08 14:10:16 +00:00
olle
a8f6986077
* targets now in alfabetical order and lowercase
2003-10-08 11:42:19 +00:00
florian
b3064de6c0
* fixed full bool evalution and bool xor, if the left or right side have LOC_JUMP
2003-10-08 09:13:16 +00:00
peter
e720d73bd9
* compare_paras() has a parameter to ignore hidden parameters
...
* cross unit overload searching ignores hidden parameters when
comparing parameter lists. Now function(string):string is
not overriden with procedure(string) which has the same visible
parameter list
2003-10-07 21:14:32 +00:00
peter
828df46e33
* procvar varargs fixed
2003-10-07 20:52:54 +00:00
peter
d582ff8fca
* inherited forced calling convention
...
* show hints when forward doesn't match
2003-10-07 20:44:22 +00:00
peter
c56c47fbc0
* Add calling convention in fullprocname when it is specified
2003-10-07 20:43:49 +00:00
peter
5fb06316f1
* set calling convention before assembler block is parsed
2003-10-07 20:06:37 +00:00
peter
3e6f799919
* fix crash
...
* allow parameter subscription for register parameters
2003-10-07 18:21:18 +00:00
peter
9365837ecd
* fix register calling for assembler procedures
...
* fix result loading for assembler procedures
2003-10-07 18:18:16 +00:00
peter
197cc64800
* Give message that constant expr is expected when a none constant
...
is passed to get_ordinal_value
2003-10-07 18:17:44 +00:00
peter
81449fa691
* constant expr expected
2003-10-07 17:52:50 +00:00
florian
e3519e3b0c
* x86 supports only mem/reg to reg for movsx and movzx
2003-10-07 16:09:03 +00:00
peter
625de786dc
* tsymlist.def renamed to tsymlist.procdef
...
* tsymlist.procdef is now only used to store the procdef
2003-10-07 16:06:30 +00:00
peter
e27d6f67da
* inline supported again, LOC_REFERENCEs are used to pass the
...
parameters
* inlineparasymtable,inlinelocalsymtable removed
* exitlabel inserting fixed
2003-10-07 15:17:07 +00:00
peter
e55017a946
* fix 2720
2003-10-07 14:30:27 +00:00
florian
6684d2c520
+ added basic olevariant support
2003-10-06 22:23:41 +00:00
peter
da9f5e2319
* c style array of const generates callparanodes
...
* varargs paraloc fixes
2003-10-05 21:21:52 +00:00
peter
c73704be10
* when comparing hidden parameters both must be hidden
2003-10-05 13:05:05 +00:00
peter
1a71e7e02b
* set correct conversion for subranges
2003-10-05 12:57:11 +00:00
peter
4a4c5a6df2
* don't write procdefs that are released to ppu
2003-10-05 12:56:35 +00:00
peter
cedb10116c
* fix assigned(property)
2003-10-05 12:56:04 +00:00
peter
d7d19e4e7f
* allow absolute with value for win32,wdos
2003-10-05 12:55:37 +00:00
peter
d3e0bca919
* don't check for abstract methods when the constructor is called
...
by inherited
* fix private member error instead of wrong number of parameters
2003-10-05 12:54:17 +00:00
florian
550b398f02
* writing of loop nodes fixed
2003-10-05 11:53:57 +00:00
peter
60e2738c22
* temporary fix for compilerprocs on watcom
2003-10-05 11:10:52 +00:00
florian
538164aa0a
* fixed TP 6.0 styled inherited call; fixes IDE with 1.1
2003-10-04 19:00:52 +00:00
marco
feaed02001
* cross compiling fixes to makefile and fpcmake
2003-10-04 13:48:11 +00:00
peter
d319f4f226
* removed paraalign
2003-10-03 22:09:49 +00:00
peter
3a92a2a25a
* parameter alignment fixes
2003-10-03 22:00:33 +00:00
marco
73876b7490
* CROSSCOMPILING stage 2
2003-10-03 21:40:35 +00:00
peter
c63b079d07
* save ESP after pusha and restore before popa for save all registers
2003-10-03 14:45:37 +00:00
peter
6edadf3df5
* more proc directive for procvar fixes
2003-10-03 14:45:09 +00:00
peter
9f2ec4dabd
* fix IE when callnode was firstpassed twice
2003-10-03 14:44:38 +00:00
peter
052f635a45
* don't report unused hidden parameters
2003-10-03 14:43:29 +00:00
marco
487650ab51
* -XP<prefix> support
2003-10-03 14:16:48 +00:00
peter
aed5b53816
* handle_calling_convention removed from parse_proc_directive to
...
separate call
2003-10-02 21:20:32 +00:00
peter
9bdadbf909
* niln is also a constnode
2003-10-02 21:18:44 +00:00
peter
b1863f8fad
* remove asw
2003-10-02 21:18:06 +00:00
peter
6093a37d1b
* fix operand order when a prefix opcode is supplied
2003-10-02 21:17:38 +00:00
peter
4b89bdf738
* use as,ld,ar instead of asw,ldw,arw for win32
2003-10-02 21:17:08 +00:00
peter
7d3f0468e4
* delphi and tp7 mode use intel asm by default
2003-10-02 21:16:18 +00:00
peter
13101d50e8
* delphi mode uses register calling by default for assembler
2003-10-02 21:15:59 +00:00
peter
939b642144
* support nil as default value
...
* when no default property is allowed don't check default value
2003-10-02 21:15:12 +00:00
peter
00801693bb
* protected visibility fixes
2003-10-02 21:13:46 +00:00
peter
2bec6b14fc
* procvar directive parsing fixes
2003-10-02 21:13:09 +00:00
peter
3b771392a1
* fix type parsing in records
2003-10-02 15:12:07 +00:00
marco
de98fa5cb5
* makefile fixes from peter
2003-10-02 11:06:53 +00:00
marco
eaceacb7e2
* remake with new fpc param
2003-10-02 08:50:13 +00:00
peter
70fe77ca7c
* procinfo unit contains tprocinfo
...
* cginfo renamed to cgbase
* moved cgmessage to verbose
* fixed ppc and sparc compiles
2003-10-01 20:34:48 +00:00
peter
7900a544a3
* searchsym_type to search for type definitions. It ignores
...
records,objects and parameters
2003-10-01 19:05:33 +00:00
peter
c1c8c5dbb1
* don't look in objectsymtable when parsing the function return type
2003-10-01 18:28:55 +00:00
florian
d85e1a9bf4
* para items are now reversed for pascal calling conventions
2003-10-01 16:49:05 +00:00
florian
8463d2444f
* fixed FullProcName to handle constructors, destructors and operators correctly
2003-10-01 15:32:58 +00:00
peter
c348bd5a68
* don't write parast,localst debug info for externals
2003-10-01 15:00:02 +00:00
peter
22158bfb99
* updates for inlining
2003-09-30 21:02:37 +00:00
peter
519b74fe2c
* smartlink fix for dlls from Pavel
2003-09-30 20:10:12 +00:00
peter
2581038501
* remove abt reg for vmtreg
2003-09-30 19:55:19 +00:00
peter
2771f49e22
* reuse registers with the least conflicts
2003-09-30 19:54:42 +00:00
peter
b369a7ee9e
* better link on target support
2003-09-30 19:54:23 +00:00
peter
5a7ce9fbe3
* fix pushw reg
2003-09-30 19:53:47 +00:00
marco
957a3d4b36
* -Q=-P and -L=-V
2003-09-30 17:25:01 +00:00
marco
9b39a588c3
* -V support
2003-09-30 11:24:59 +00:00
michael
953269fcff
+ Patch from Wiktor Sywula for watcom support
2003-09-30 08:39:50 +00:00
peter
540691bf02
* optimized releasing of registers
2003-09-29 20:58:55 +00:00
peter
409b982075
* insertbefore added
2003-09-29 20:52:50 +00:00
peter
15446d6522
* removed emitjmp
2003-09-28 21:49:39 +00:00
peter
a028d221cc
* fixed invalid opcode handling in spill registers
2003-09-28 21:49:30 +00:00
peter
9a9d96fe5d
* fix register leak
2003-09-28 21:48:57 +00:00
peter
47d211aa2e
* fix register leaks
2003-09-28 21:48:20 +00:00
peter
2693582200
* register paras and local copies updates
2003-09-28 21:47:18 +00:00
peter
c6f0a5fb0e
* fix allocation of threadvar parameter
2003-09-28 21:46:18 +00:00
peter
75cb52213f
* fix register leak in with debug
2003-09-28 21:45:52 +00:00
peter
2c4df4364e
* fix check that filedef needs var para
2003-09-28 21:44:55 +00:00