florian
|
3baa79797b
|
* first version, all planned processors (?) added
|
1998-12-15 22:16:03 +00:00 |
|
Jonas Maebe
|
2b0c6c2951
|
* uncommented OpsEqual & added to interface because popt386 uses it now
|
1998-12-15 19:33:58 +00:00 |
|
peter
|
c7230805a2
|
* fixed const s : ^string
* first things for const pchar : @string[1]
|
1998-12-15 17:16:00 +00:00 |
|
peter
|
4fbc61f5ea
|
* fix for tp7
|
1998-12-15 17:14:17 +00:00 |
|
peter
|
6b4aa2289a
|
* pointer+ord not allowed in tp mode
|
1998-12-15 17:12:35 +00:00 |
|
peter
|
a22d732459
|
* string:=pchar not allowed in tp mode
|
1998-12-15 17:11:37 +00:00 |
|
florian
|
9c7239cfbe
|
+ first version, derived from old routines
|
1998-12-15 16:32:58 +00:00 |
|
Jonas Maebe
|
5da43943cd
|
* fixed bug in shr/shl optimization
|
1998-12-15 15:43:20 +00:00 |
|
peter
|
9a889d1750
|
* removed commentlevel
|
1998-12-15 11:53:54 +00:00 |
|
peter
|
ff335d3911
|
* fixed dup release of statement label in case
|
1998-12-15 11:52:18 +00:00 |
|
peter
|
02904d8319
|
+ -iSO, -iSP, -iTO, -iTP
|
1998-12-15 10:23:23 +00:00 |
|
Jonas Maebe
|
30fa4efbd4
|
- removed {$ifdef ver0_99_11}'s
|
1998-12-14 22:01:45 +00:00 |
|
peter
|
c91c9bb341
|
* version 0.99.11
|
1998-12-14 12:58:45 +00:00 |
|
florian
|
6283947c69
|
+ again more stuff for int64/qword:
- comparision operators
- code generation for: str, read(ln), write(ln)
|
1998-12-11 23:36:06 +00:00 |
|
florian
|
d439e323fd
|
* fixed previous commit bug fix of getexplicitregister32
(usableregs32 was decremented twice, thnaks Pierre for that hint)
|
1998-12-11 17:22:40 +00:00 |
|
florian
|
1b4cf9afb5
|
+ typed const int64 and qword
+ unary minus-operator q1:=-q2;
+ not-operator
|
1998-12-11 16:50:22 +00:00 |
|
florian
|
8534a40b75
|
+ shifting for 64 bit ints added
* bug in getexplicitregister32 fixed: usableregs wasn't decremented !!
|
1998-12-11 16:10:07 +00:00 |
|
pierre
|
1b4990c597
|
* #0 char removed
|
1998-12-11 10:48:11 +00:00 |
|
pierre
|
ad717054b5
|
* internal gdb types for booleans and 64bit integers
|
1998-12-11 08:57:22 +00:00 |
|
peter
|
1bae98d429
|
* splitted from globals.pas
|
1998-12-11 00:05:27 +00:00 |
|
peter
|
1b369bb4bb
|
+ globtype,tokens,version unit splitted from globals
|
1998-12-11 00:02:37 +00:00 |
|
pierre
|
4a85a1b59e
|
* fix for operators
|
1998-12-10 14:57:52 +00:00 |
|
florian
|
467c0de643
|
* bug with p(const a : ansistring) fixed
* duplicate constant ansistrings were handled wrong, fixed
|
1998-12-10 14:39:29 +00:00 |
|
florian
|
86b17cd44f
|
+ some basic operations with qwords and int64 added: +, xor, and, or;
the register allocation works fine
|
1998-12-10 11:16:00 +00:00 |
|
florian
|
4244dda54b
|
+ basic operations with int64/qord (compiler with -dint64)
+ rtti of enumerations extended: names are now written
|
1998-12-10 09:47:13 +00:00 |
|
Jonas Maebe
|
2fcfb2ce50
|
* corrected small syntax error in part between {ifdef ver0_99_11}
+ added fistp/fild optimization between {ifdef ver0_99_11}
|
1998-12-09 18:16:13 +00:00 |
|
Jonas Maebe
|
f6e600a839
|
* replaced two "in [A_...]" constructs I had missed before
* for shrd/shld: "if operands[1].operandtype = OPR_CONSTANT" instead of
"if operands[3].operandtype ..."
|
1998-12-09 13:23:40 +00:00 |
|
Jonas Maebe
|
7aaa973e8f
|
* allow constant offsets for go32v2 in assembler blocks
|
1998-12-08 23:03:46 +00:00 |
|
peter
|
6e7f776c4f
|
+ -gh for heaptrc unit
|
1998-12-08 10:18:07 +00:00 |
|
pierre
|
917fc582ad
|
+ constructor destructor info for gdbpas
|
1998-12-08 09:06:30 +00:00 |
|
florian
|
061be51016
|
* better code generation for classes which are passed as parameters to
subroutines
|
1998-12-06 13:12:44 +00:00 |
|
florian
|
df1edc9bc0
|
* some stuff for procedures of object added
* bug with overridden virtual constructors fixed (reported by Italo Gomes)
|
1998-12-04 10:18:06 +00:00 |
|
peter
|
37c2997e50
|
* target_os.use_bound_instruction boolean
|
1998-12-03 10:17:32 +00:00 |
|
Jonas Maebe
|
242244016d
|
* changed "if longintvar in set" to case or "if () or () .." statements
* tree.pas: changed inlinenumber (and associated constructor/vars) to a byte
|
1998-12-02 16:23:29 +00:00 |
|
pierre
|
9cfedd8bb0
|
* writing of .edata was wrong for indexes above number of exported items
* importing by index only did not work !
|
1998-12-02 10:26:13 +00:00 |
|
pierre
|
c89458e721
|
* new try for correct debug info generation
|
1998-12-01 23:40:53 +00:00 |
|
pierre
|
44f5d0a911
|
* postprocessexec for win32 changed
|
1998-12-01 23:39:46 +00:00 |
|
pierre
|
f61d574389
|
* function type problem for gdb fix
|
1998-12-01 23:37:39 +00:00 |
|
pierre
|
49e2d0ad2d
|
* zero padded alignment was buggy
|
1998-12-01 23:36:31 +00:00 |
|
pierre
|
0505500441
|
* alignment fixes
|
1998-12-01 23:35:43 +00:00 |
|
peter
|
2d524e51a2
|
* fixed placing of ppas.sh and link.res when using -FE
|
1998-12-01 12:51:19 +00:00 |
|
peter
|
895c8b8d77
|
* fixed range problem with in [tasmop]
|
1998-12-01 11:19:38 +00:00 |
|
peter
|
144544f8c2
|
* some more rangecheck fixes
|
1998-11-30 19:48:54 +00:00 |
|
pierre
|
65e4bc90c1
|
* corrected problems with rangecheck
+ added needed code for no rangecheck in CRC32 functions in ppu unit
* enumdef lso need its rangenr reset to zero
when calling reset_global_defs
|
1998-11-30 16:34:45 +00:00 |
|
pierre
|
00229cc405
|
* the code for ordering the exported procs/vars was buggy
+ added -WB to force binding (Ozerski way of creating DLL)
this is off by default as direct writing of .edata section seems
OK
|
1998-11-30 13:26:23 +00:00 |
|
pierre
|
a1f1003555
|
* some range check bugs fixed (still not working !)
+ added DLL writing support for win32 (also accepts variables)
+ TempAnsi for code that could be used for Temporary ansi strings
handling
|
1998-11-30 09:42:52 +00:00 |
|
peter
|
e0b2f65f9a
|
* fixed constant ansistring -> pchar
|
1998-11-29 22:37:30 +00:00 |
|
florian
|
67d932c449
|
* problem with arrays with init tables fixed
|
1998-11-29 21:45:48 +00:00 |
|
peter
|
1b481e1cca
|
* fixes for 'asm sti end;'
|
1998-11-29 12:47:21 +00:00 |
|
peter
|
a53f6ba9d4
|
* hack for arraydef.size overflow
|
1998-11-29 12:45:59 +00:00 |
|
peter
|
6df97708c1
|
* check for constants with array decl
|
1998-11-29 12:42:24 +00:00 |
|
peter
|
d02a24bc75
|
* newcnv -> not oldcnv
|
1998-11-29 12:40:19 +00:00 |
|
peter
|
b4045fe57e
|
+ support for dll variables
|
1998-11-28 16:20:48 +00:00 |
|
michael
|
cdd4a7a793
|
Fixed generation of constant ansistrings
|
1998-11-28 15:36:02 +00:00 |
|
michael
|
5aecf1085b
|
+ Added catch unit again
|
1998-11-27 22:54:52 +00:00 |
|
peter
|
a41f61713d
|
+ open strings, $P switch support
|
1998-11-27 14:50:30 +00:00 |
|
peter
|
162124d10c
|
* give error when string[0] decl is found
|
1998-11-27 14:34:41 +00:00 |
|
Jonas Maebe
|
31cc13417a
|
- removed A_CLTD opcode (use A_CDQ instead)
* changed cbw, cwde and cwd to cbtw, cwtl and cwtd in att_op2str array
* in daopt386: adapted AsmInstr array to reflect changes + fixed line too long
|
1998-11-26 21:45:29 +00:00 |
|
peter
|
99b1865d05
|
- removed
|
1998-11-26 21:37:26 +00:00 |
|
peter
|
9d460fac9d
|
* rangecheck updates
|
1998-11-26 21:33:06 +00:00 |
|
peter
|
66f37e9d4a
|
* fix for valuepara
|
1998-11-26 21:30:03 +00:00 |
|
Jonas Maebe
|
f4b8ab9e61
|
* several small fixes in the AsmInstr table (concerning reading/writing from
regs/mem, doesn't affect current optimizer)
|
1998-11-26 15:43:24 +00:00 |
|
Jonas Maebe
|
a7e2ff769e
|
+ change "setxx mem; movb mem, reg8" to "setxx reg8" if mem is a local
variable/parameter or function result (between {$ifdef ver0_99_11})
|
1998-11-26 15:41:45 +00:00 |
|
michael
|
4b33489b11
|
+ Fixed RTTI constants
|
1998-11-26 14:47:00 +00:00 |
|
peter
|
df89c828e5
|
* ansistring -> pchar fixed
* ansistring constants fixed
* ansistring constants are now written once
|
1998-11-26 14:39:10 +00:00 |
|
peter
|
38e8f2f2a6
|
* set also library flag if smartlinking and outputname is different
|
1998-11-26 14:36:02 +00:00 |
|
peter
|
a62eb86cde
|
* new int - int conversion -dNEWCNV
* some function renamings
|
1998-11-26 13:10:39 +00:00 |
|
peter
|
13d2cb30b0
|
* update status also for internalerrors
|
1998-11-26 13:08:19 +00:00 |
|
florian
|
a9d8c411a3
|
* for classes no init/final. code is necessary, fixed
|
1998-11-26 09:53:36 +00:00 |
|
pierre
|
4201ea4903
|
* var:=new(pointer_type) support added
|
1998-11-25 19:12:51 +00:00 |
|
florian
|
6b71ea1c62
|
* writting of rtti for properties fixed
|
1998-11-25 14:35:28 +00:00 |
|
peter
|
d008da6845
|
* handle array of char the same as strings
|
1998-11-24 22:59:05 +00:00 |
|
Jonas Maebe
|
4df2da0cc7
|
* fixed problems posiible with 3 operand instructions
|
1998-11-24 19:47:22 +00:00 |
|
peter
|
cd9ec74eb5
|
* fixed length(char) when char is a variable
|
1998-11-24 17:04:27 +00:00 |
|
peter
|
ab71649027
|
* fixed exactmatch removings
|
1998-11-24 17:03:51 +00:00 |
|
peter
|
6d0f6718fa
|
* removed obsolete version.inc
|
1998-11-24 17:03:24 +00:00 |
|
peter
|
6f9679f1d2
|
* release smallsetord, so small sets constant are handled like longints
|
1998-11-24 13:40:59 +00:00 |
|
peter
|
6756b4ec78
|
* sets are not written twice anymore
* optimize for emptyset+single element which uses a new routine from
set.inc FPC_SET_CREATE_ELEMENT
|
1998-11-24 12:52:40 +00:00 |
|
peter
|
d3946024c8
|
* fixed crash
|
1998-11-24 12:50:09 +00:00 |
|
pierre
|
c921c95996
|
* fix for bug0182
|
1998-11-23 18:26:44 +00:00 |
|
pierre
|
83a1c209c5
|
* added checking before dispose of reference string
|
1998-11-23 17:51:58 +00:00 |
|
pierre
|
c93531b63f
|
* ansistring support in extdebug code
|
1998-11-23 17:49:03 +00:00 |
|
peter
|
0c1ba21ada
|
* initital version
|
1998-11-23 13:41:18 +00:00 |
|
florian
|
d5aea5e17f
|
* problems with rtti fixed, hope it works
|
1998-11-20 15:35:54 +00:00 |
|
Jonas Maebe
|
ae04ea5143
|
+ gathering of register reading data, nowhere used yet (necessary for instruction scheduling)
|
1998-11-18 17:58:22 +00:00 |
|
peter
|
e413f19a4d
|
* fixes for VALUEPARA
|
1998-11-18 17:45:24 +00:00 |
|
peter
|
0cadc4f3c3
|
* VALUEPARA for tp7 compatible value parameters
|
1998-11-18 15:44:05 +00:00 |
|
pierre
|
50ccd479d2
|
+ automatic loading of profile unit with -pg option
in go32v2 mode (also defines FPC_PROFILE)
* some memory leaks removed
* unreleased temp problem with sets solved
|
1998-11-18 09:18:01 +00:00 |
|
peter
|
41ac2b8a59
|
* optimize str:='' in H+ mode
+ -! to test ansistrings
|
1998-11-17 11:32:44 +00:00 |
|
peter
|
dabc19f0ff
|
* H+ fixes
|
1998-11-17 10:40:15 +00:00 |
|
peter
|
85726fcb35
|
* more ansistring fixes
|
1998-11-17 00:36:38 +00:00 |
|
peter
|
e0f66581eb
|
* fixed for $H+
|
1998-11-17 00:26:09 +00:00 |
|
peter
|
bf08db9b7b
|
* fixed ansistring temp which forgot a reset
|
1998-11-16 16:17:16 +00:00 |
|
peter
|
752857f403
|
* tp7 didn't like my ifopt H+ :(
|
1998-11-16 15:41:39 +00:00 |
|
peter
|
83d1beb321
|
* fixed instruct not in table msg
|
1998-11-16 15:38:54 +00:00 |
|
peter
|
3df27389c0
|
* rename laod/copystring -> load/copyshortstring
* fixed int-bool cnv bug
+ char-ansistring conversion
|
1998-11-16 15:35:35 +00:00 |
|
pierre
|
006cb9f6d0
|
* added error for with if different segment
|
1998-11-16 15:35:09 +00:00 |
|
peter
|
ac94abe823
|
* fixed return for ansistrings
|
1998-11-16 15:33:05 +00:00 |
|
pierre
|
0be2deee56
|
+ shorter cycle for win32 with cygnus b20
|
1998-11-16 15:30:19 +00:00 |
|
Jonas Maebe
|
c85141c23a
|
+ readded ait_marker support
|
1998-11-16 12:38:05 +00:00 |
|