Commit Graph

584 Commits

Author SHA1 Message Date
Jonas Maebe
1e8a7f6853 * added missing register that is destroyed by strecopy
+ some destroyed register lists for procedures that didn't have one yet
2000-03-28 11:14:33 +00:00
florian
95d572ca04 * we don't need to to finit twice ... 2000-02-18 16:16:13 +00:00
florian
ff96d13e5f * fixed constants in rtti
* longjmp does now a finit
2000-02-18 15:23:01 +00:00
florian
2eb62408ae * disabled FIXED data type per default 2000-02-15 14:36:57 +00:00
florian
4dd95e6a80 * longjump does now a finit 2000-02-09 22:12:54 +00:00
peter
6b66a55cd6 * truncated log 2000-02-09 16:59:28 +00:00
Jonas Maebe
7fbe48e245 * fixed warning 2000-01-13 13:06:03 +00:00
pierre
fb2b4f7510 * wrong change for StrPas function corrected 2000-01-11 22:56:57 +00:00
marco
226a728dae * direct params to internal asm. 2000-01-11 21:12:15 +00:00
marco
f2142127d8 * Direct params to internal assembler 2000-01-11 21:11:34 +00:00
marco
e8258f23c9 * Changed some direct asm params to real params 2000-01-11 21:11:04 +00:00
peter
c775ade1d6 * primitives added 2000-01-10 09:54:30 +00:00
daniel
ec29a31834 * copyright 2000 2000-01-07 16:41:28 +00:00
daniel
a79b4a404b * copyright 2000 added 2000-01-07 16:32:21 +00:00
pierre
5f6f1fd669 * typo error if previous commit 1999-12-21 11:48:09 +00:00
pierre
ffc5263bfc + FPC_CHARARRAY_TO_SHORTSTRING added 1999-12-21 11:13:34 +00:00
florian
b8d4922188 * bug #766 fixed 1999-12-18 23:08:33 +00:00
Jonas Maebe
c14811e633 * faster abs() function (no jump anymore) 1999-12-11 18:59:44 +00:00
Jonas Maebe
5ffd2e21d4 * reinstated old random generator, but modified it so the integer
one now has a much longer period
1999-11-20 12:48:09 +00:00
daniel
ec77ff77ee * Committed new random generator. 1999-11-09 20:14:12 +00:00
peter
71d7f4ef38 * memorymanager expanded with allocmem/reallocmem 1999-10-30 17:39:05 +00:00
pierre
e8f2eba064 * fix for FPC_HELP_FAIL_CLASS 1999-10-08 14:40:54 +00:00
peter
11a2d8977e * fixed power(int,int) with negative base
* power(ext,ext) with negative base gives rte 207
1999-10-06 17:44:43 +00:00
pierre
7e716ff478 + code for fail for class 1999-10-05 20:50:06 +00:00
peter
88b7b037b2 + new heap manager supporting delphi freemem(pointer) 1999-09-17 17:14:11 +00:00
florian
47b7b2d321 * some math functions are now coded inline by the compiler 1999-09-15 20:24:11 +00:00
Jonas Maebe
d581decb97 * added dummy local var to boundcheck to force stackframe generation 1999-09-15 13:04:04 +00:00
pierre
7efee9b639 * changes for fail support 1999-08-19 12:50:08 +00:00
pierre
a0e69fbd00 + VMT reset to -1 if getmem called, neede for fail 1999-08-18 10:43:31 +00:00
pierre
e33295ceb0 * loading of esp value corrected 1999-08-18 10:42:13 +00:00
peter
793b28882f * classes vmt changed to only positive addresses
* sharedlib creation is working
1999-08-09 22:19:46 +00:00
peter
c5faa84f92 * saveregister is now working and used for assert and iocheck (which has
been moved to system.inc because it's now system independent)
1999-08-05 23:45:09 +00:00
michael
344a35fec1 Object finalization data fixed 1999-07-31 22:27:28 +00:00
peter
aedeaf9b7e * removed temp defines 1999-07-06 15:35:59 +00:00
peter
82c6138188 * removed temp defines 1999-07-06 10:53:52 +00:00
florian
b49d48c4e0 * int_new_class returned with zero flag=1, if at the entrance eax was zero
and newinstance wasn't called, fixed
1999-07-03 09:03:47 +00:00
pierre
13b4e5f347 * added $define FPC_SYSTEM_HAS_... for use with generic.inc 1999-05-31 22:03:37 +00:00
peter
03535bc427 * smaller sptr function 1999-05-31 12:49:19 +00:00
peter
62effc73d7 * nil check for strpas 1999-04-22 10:52:40 +00:00
florian
e3dc06bceb * the class helper routines doesn't store the registers properly,
fixed
1999-04-19 06:13:28 +00:00
michael
7e68180e14 +Added checking for nil on most functions. 1999-04-09 07:58:41 +00:00
peter
17f26f6577 * removed warnings 1999-04-08 11:30:57 +00:00
pierre
1bbbb8e6ca + no assembler if systemdebug defined 1999-04-07 16:21:10 +00:00
peter
ff7e4f60b5 * use assembler and remove all rets 1999-03-30 16:58:49 +00:00
peter
af8a04a5af * use external names
* removed all direct assembler modes
1999-03-01 15:40:48 +00:00
michael
82d08fba5d + Added header and log 1999-02-25 10:05:07 +00:00
michael
7865673a04 * Joined strings and sysutils 1999-02-25 07:39:17 +00:00
pierre
8c54e5656a * VMT field zeroed at destructor forgot offset !! 1999-02-22 13:23:22 +00:00
pierre
2d311def72 + code for FPC_TESTOBJEXT conditionnal 1999-02-05 12:26:25 +00:00
florian
769b8d8711 * class destructor helper routine for the new calling copnventions fixed 1999-02-02 11:04:27 +00:00
Jonas Maebe
2738539d11 + fixed bug0163 (set1 <= set2 support) 1999-01-20 17:48:02 +00:00
pierre
02a46a6547 * HandleError -> HandleErrorFrame to avoid problem in
assembler code in i386.inc
    (call to overloaded function in assembler block !)
1998-12-21 14:28:20 +00:00
michael
36d5398924 + Finalize fixed after florians fix :) 1998-12-20 14:08:06 +00:00
florian
9af41247e4 * Finalize fixed, constant for ansistrings is 9, not 10 1998-12-19 00:22:09 +00:00
peter
4eeae4e425 * fixed io-error handling 1998-12-18 17:21:32 +00:00
peter
516958a67b * removed temp symbols 1998-12-15 22:42:49 +00:00
pierre
86f0e64b17 * vmt address pushed for CHECK_OBJECT was not removed from stack 1998-11-30 15:27:28 +00:00
michael
5f21062312 + Adjusted typeinfo constants 1998-11-30 10:07:34 +00:00
peter
842c6be313 * NOATTCDQ define 1998-11-28 14:09:48 +00:00
Jonas Maebe
fc52d94323 * changed cdq to cltd in AT&T assembler block 1998-11-26 23:14:52 +00:00
peter
d2ba96eeac + FPC_BOUNDCHECK 1998-11-26 21:33:58 +00:00
peter
24cb89c2bd * removed all explicit leave;ret commands and let them generate by
the compiler (needed for stack alignment)
1998-11-24 12:54:57 +00:00
peter
06209a3be3 + FPC_SET_CREATE_ELEMENT 1998-11-24 12:54:01 +00:00
peter
7aeb09d89d * renamed string functions 1998-11-17 00:41:08 +00:00
pierre
ec5cec5909 * changed fsqrtl to fsqrt (needed by as v2.9.4 for win32) 1998-11-16 14:26:03 +00:00
peter
a990cb8ab6 * fixes for 0.99.8 1998-11-16 12:21:47 +00:00
peter
c42ce9d1d0 * ATT reader 1998-11-13 10:10:54 +00:00
pierre
7e1942412d + added FPC_SET_UNSET_BYTE for exclude of normsets 1998-10-22 14:50:08 +00:00
peter
4967811717 * fixed for stackaligment also on 4 bytes, never use 'ret $..' direct 1998-10-22 12:48:29 +00:00
pierre
5c9acf66ad * removed old code forgotten about vmtoffset 1998-10-19 08:49:16 +00:00
pierre
850e611770 * added code for vmt_offset in destructors 1998-10-16 13:37:45 +00:00
peter
852db81fd0 * fill_object in constructor changed to 'inline' code to overcome
pushw/pushl problem
1998-10-16 08:53:50 +00:00
pierre
2312760103 + first step of variable vmt offset
offset is stored in R_EDI (R_D0)
   if objectvmtoffset is defined
1998-10-15 11:35:02 +00:00
peter
96159c617a * more constant expression evals 1998-10-02 09:25:09 +00:00
michael
7b19196a21 + Corrections in record and array handling. 1998-09-29 08:38:25 +00:00
peter
8b2c09d032 * added some more $ifdef FPCNAMES 1998-09-28 11:02:34 +00:00
florian
c27d0bd2e0 * FPC_NEW_CLASS optimized: addl $0,%eax => orl %eax,%eax 1998-09-28 10:23:43 +00:00
michael
afa6b37391 + Bugreport from Gertjan Schouten 1998-09-28 08:40:47 +00:00
peter
03ba16b03f + fpc_pchar_to_str alias for strpas 1998-09-22 15:32:00 +00:00
florian
41efdfd57d * some ansistring fixes 1998-09-20 17:49:07 +00:00
peter
4620a73a9b * FPC_ names
* Heap manager is now system independent
1998-09-14 10:48:00 +00:00
pierre
e283510c19 merge for fixes branch 1998-09-11 17:38:48 +00:00
peter
b95cabdc60 * much more readable :) 1998-09-08 15:02:48 +00:00
pierre
5342205224 * small corrections 1998-09-04 17:27:48 +00:00
peter
b8ff0c3320 + internconst 1998-09-01 17:36:17 +00:00
pierre
d5df96ef6a * corrected a bug introduced by my last change
(allocating 1Mb but only using a small part !!)
1998-08-25 14:15:51 +00:00
florian
f2b23a48b9 * corrected exp() function 1998-08-25 08:49:05 +00:00
pierre
69aed4ad5c * bug allocation of more than 1 MB failed corrected 1998-08-24 14:44:04 +00:00
florian
cb2b504eb1 + rtti for objects and classes
+ TObject.GetClassName implemented
1998-08-23 20:58:50 +00:00
peter
515764fec4 + set_load_small
* fixed set_set_range
1998-08-14 18:13:44 +00:00
peter
de0a5038f9 * splitted default_extended from support_extended 1998-08-11 21:39:04 +00:00
peter
bd57e42086 * $ifdef ver0_99_5 updates 1998-08-11 00:04:46 +00:00
peter
7bf6c1a006 * removed dup power(longint) 1998-08-10 15:54:50 +00:00
florian
29a7bb1314 * a lot small fixes to the extended data type work 1998-08-08 12:28:09 +00:00
michael
6a11ae5e72 reverted to non-assmebler version, florians fix is applied. 1998-08-05 08:59:53 +00:00
pierre
b495ca5d7d * problem with asmmode for bugfix branch 1998-08-04 18:22:02 +00:00
florian
c9c4bfe19e * stricomp and strlicomp were buggy (unworkable :(), should be fixed now 1998-08-03 11:46:07 +00:00
michael
4e11459938 + Added support for ErrorProc variable. All internal functions are required
to call HandleError instead of runerror from now on.
  This is necessary for exception support.
1998-07-30 13:26:14 +00:00
michael
ae929aed5a + changed wehere possible, procs to assembler procs 1998-07-29 23:46:37 +00:00
michael
11cbb1fd82 + Initial implementation 1998-07-28 20:36:41 +00:00
michael
eb9df35117 Undid carls changes, but renamed _heapsize to _internal_heapsize. Make cycle now works 1998-07-02 14:24:08 +00:00
carl
fbe85528a9 * Put back DoError, DO NOT TOUCH! 1998-07-02 12:55:04 +00:00
carl
91a581342c + IO-Error and Overflow now print address in hex 1998-07-02 12:19:32 +00:00
carl
a60397c5d1 - removed function heapsize, CAUSED conflicts with HEAPSIZE var 1998-07-02 12:18:46 +00:00
peter
5a638754f4 * better readln/writeln 1998-07-01 15:29:56 +00:00
daniel
8a84b20446 - Doerror removed. 1998-06-26 08:20:57 +00:00
daniel
2abf9ca1b3 * Removed some more tabs 1998-06-25 09:26:10 +00:00
florian
811044754a * better rtti 1998-06-25 08:41:41 +00:00
daniel
336bf10c88 * Removed some tabs. 1998-06-24 11:53:26 +00:00
michael
553665456a + Small patch: forgot to make alias public 1998-06-17 11:50:43 +00:00
daniel
ef51eedac3 * Optimizations 1998-06-16 14:55:49 +00:00
daniel
a07500f360 * Brought my policy into practive that the RTL should output only runtime
errors and no other texts when things go wrong.
1998-06-15 15:15:13 +00:00
michael
504b4faf62 + Forgot to commit some changes 1998-06-10 07:46:45 +00:00
michael
b36e918420 + Implemented DecRef 1998-06-08 19:26:53 +00:00
michael
4b73216117 + Split rtti according to processor. Implemented optimized i386 code. 1998-06-08 15:32:08 +00:00
peter
12f6e38140 * force to use ATT or direct parsing 1998-05-31 14:15:47 +00:00
peter
769d7ee21a * this needs also direct mode :( 1998-05-30 15:01:28 +00:00
peter
a9e0837f1e * force att reading 1998-05-30 14:30:21 +00:00
pierre
2719fa44c6 * CR0 works now (written using DB to allow to use it we INTEL and ATT output)
* floating_emulation bit set correctly
1998-05-25 10:51:27 +00:00
peter
53be2cf842 * remake3 works again on tflily 1998-05-25 10:40:48 +00:00
peter
1b68629d67 + I386_ATT switch 1998-05-23 01:14:06 +00:00
peter
d26106d745 * fixed the optimizes of daniel 1998-05-22 12:34:06 +00:00
peter
70f8a1ac12 * .FILL_OBJECT and FILL_OBJECT are not the same names ;) 1998-05-20 11:01:52 +00:00
daniel
3ffd393399 * Some extra use of ;assembler;. 1998-05-20 08:09:24 +00:00
peter
e64becf81c * moved getopts to inc/, all supported OS's need argc,argv exported
+ strpas, strlen are now exported in the systemunit
  * removed logs
  * removed $ifdef ver_above
1998-05-12 10:42:41 +00:00
michael
dbe0135764 Changed makefile system to use -I compiler option, and streamlined i a bit 1998-05-06 09:09:07 +00:00
peter
f11a6ba390 * some cleanup and i386_att usage 1998-04-29 13:28:19 +00:00
peter
e4328d08e2 + heapblocks 1998-04-21 10:22:48 +00:00
florian
0e34e8a6ce + some small comments added 1998-04-10 15:41:54 +00:00
michael
c297ae8bfa - Removed so-called better random function 1998-04-10 15:25:23 +00:00
daniel
3a2a212930 * Optimized some code. 1998-04-09 08:32:14 +00:00
michael
62001bab9a + Changed Random() function. Moved from system to processor dependent files (from Pedro Gimeno) 1998-04-08 07:53:31 +00:00
daniel
274d8885d3 * Replaced 'mod 8' with 'and 7'. Generates more efficient code. 1998-03-31 19:01:41 +00:00
root
d1a1f501c8 Initial revision 1998-03-25 11:18:12 +00:00