mazen
675f2770da
+ defining FPC_SYSTEM_HAS_DECLOCKED and FPC_SYSTEM_HAS_INCLOCKED to avoid
...
compilation error on generic.inc
2003-01-06 23:03:13 +00:00
peter
69ec4efe4d
* fix possible overflow when array len > 255 when converting to
...
shortstring
2003-01-03 17:14:54 +00:00
peter
8bb7e03d19
* fixed return value when len=0 for indexchar,indexword
2002-12-15 22:32:25 +00:00
carl
dec8b274f3
* avoid crashes with negative len counts on fills/moves
2002-10-20 11:50:57 +00:00
carl
9afe6d5835
* Replace 220 -> 219
2002-10-15 19:23:43 +00:00
peter
5fff238567
* threads unit added for thread support
2002-10-14 19:39:16 +00:00
peter
ea8118b37c
* fpc_pchar_length compilerproc and strlen alias
2002-10-05 14:20:16 +00:00
peter
603b3bc48b
* Copy() changed to internal function calling compilerprocs
...
* FPC_SHORTSTR_COPY renamed to FPC_SHORTSTR_ASSIGN because of the
new copy functions
2002-10-02 18:21:51 +00:00
carl
5ed7522ade
- removed unused defines
2002-09-07 21:32:08 +00:00
peter
9f31783a0a
* old logs removed and tabs fixed
2002-09-07 16:01:16 +00:00
peter
685caf03b6
* add alias for fpc_dispose_class so it can be called from
...
fpc_help_fail_class
2002-09-03 15:43:36 +00:00
peter
c3af3cda9b
* SYSTEMINLINE define that will add inline directives for small
...
functions and wrappers. This will be defined automaticly when
the compiler defines the HASINLINE directive
2002-08-19 19:34:02 +00:00
florian
3f2a82784e
* changed multi threading define: it's MT instead of MTRTL
2002-07-26 15:45:33 +00:00
carl
dfa44b9f00
+ added TEST_GENERIC to test generic version
2002-07-06 20:31:59 +00:00
carl
2604402b16
+ TEST_GENERIC to test generic versions of code
2002-06-16 08:21:26 +00:00
Jonas Maebe
0d606ac980
* fixed memory corruption bug in fpc_help_constructor
2002-06-09 12:54:37 +00:00
peter
90ff7a6db8
* fpc_freemem and fpc_getmem compilerproc
2002-04-21 18:56:59 +00:00
carl
fe48bc8f27
- no need for runerror 203, already fixed!
2002-04-01 14:23:17 +00:00
carl
16b2fe5095
* cause runtime error 203 on failed class creation
2002-03-30 14:52:04 +00:00
peter
7484da248d
* freemem(var) -> freemem(value)
2001-12-03 21:39:19 +00:00
carl
901072c39e
* bugfix #1639 (IsMultiThread varialbe setting)
2001-10-09 02:42:05 +00:00
Jonas Maebe
41a57028b9
* converted adding/comparing of strings to compileproc. Note that due
...
to the way the shortstring helpers for i386 are written, they are
still handled by the old code (reason: fpc_shortstr_compare returns
results in the flags instead of in eax and fpc_shortstr_concat
has wierd parameter conventions). The compilerproc stuff should work
fine with the generic implementations though.
* removed some nested comments warnings
2001-08-30 15:43:14 +00:00
Jonas Maebe
06f9cd4c96
* some fixes in compilerprocs for chararray to string conversions
...
* conversion from string to chararray is now also done via compilerprocs
2001-08-29 19:49:03 +00:00
Jonas Maebe
fc92c3b336
+ compilerproc implementation of most string-related type conversions
...
- removed all code from the compiler which has been replaced by
compilerproc implementations (using {$ifdef hascompilerproc} is not
necessary in the compiler)
2001-08-28 13:24:46 +00:00
Jonas Maebe
b9f6efc85b
+ "compproc" helpers
...
* renamed several helpers so that their name is the same as their
"public alias", which should facilitate the conversion of processor
specific code in the code generator to processor independent code
* some small fixes to the val_ansistring and val_widestring helpers
(always immediately exit if the source string is longer than 255
chars)
* fixed fpc_dynarray_high and fpc_dynarray_length if the dynarray is
still nil (used to crash, now return resp -1 and 0)
2001-08-01 15:00:09 +00:00
peter
ca8d604964
* various widestring updates, it works now mostly without charset
...
mapping supported
2001-07-08 21:00:14 +00:00
florian
a4755024cc
* some fixes for widestrings and variants
2001-05-31 22:42:56 +00:00
peter
64b57cd77d
* add nop after popa (merged)
2001-04-21 12:18:09 +00:00
peter
73a59b9ca3
* merged popal fix
2001-04-16 11:22:53 +00:00
Jonas Maebe
547bc5f275
* optimized FPC_HELP_CONSTRUCTOR a bit
2001-04-08 13:19:28 +00:00
Jonas Maebe
ab2ea0a472
* moved implementations of strlen and strpas to separate include files
...
(they were duplicated in i386.inc and strings.inc/stringss.inc)
* strpas supports 'nil' pchars again (returns an empty string)
(both merged)
2001-03-05 17:10:04 +00:00
Jonas Maebe
18de59f50c
* fixed all implementations of strpas
2001-03-04 17:31:34 +00:00
Jonas Maebe
af38291233
* simplified and optimized range checking code, FPC_BOUNDCHECK is no longer necessary
2001-03-03 12:41:22 +00:00
florian
5da658c6db
* interfaces basically running
2000-11-12 23:23:34 +00:00
florian
f79644d9ca
+ AfterConstruction and BeforeDestruction implemented
...
+ TInterfacedObject implemented
2000-11-07 23:42:21 +00:00
michael
586c4cea50
+ Conditionals fixed
2000-07-14 10:33:09 +00:00
michael
650fbb86aa
+ removed logs
2000-07-13 11:32:24 +00:00
michael
e7aca136a1
+ Initial import
2000-07-13 06:29:38 +00:00
Jonas Maebe
be0deb8185
- removed fpc_strconcat_len for -dnewoptimizations since it's not
...
used anymore (because the strconcat optimizations have been
disabled quite a while ago)
2000-07-08 09:09:35 +00:00
marco
f5fd205ab5
* Changed move (var source;var dest) to move (const source;var dest)
2000-07-07 18:23:41 +00:00
pierre
bf20aa47d9
* fix ingnored assembler error in IndexDWord
2000-05-09 06:21:58 +00:00
Jonas Maebe
ff9782d70c
+ FPC_SHORTSTR_CONCAT_LEN (temporary, for -dnewoptimizations)
2000-04-23 09:26:51 +00:00
Jonas Maebe
ec08464c80
+ added destroyed registers list for move procedure (it doesn't destroy
...
edx)
2000-04-10 09:47:15 +00:00
florian
33f3467ef0
* the bounds check error gets now a correct stack frame
2000-04-06 08:39:22 +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
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
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
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
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
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
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
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
af8a04a5af
* use external names
...
* removed all direct assembler modes
1999-03-01 15:40:48 +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
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
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
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
7aeb09d89d
* renamed string functions
1998-11-17 00:41:08 +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
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
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
b8ff0c3320
+ internconst
1998-09-01 17:36:17 +00:00
peter
bd57e42086
* $ifdef ver0_99_5 updates
1998-08-11 00:04:46 +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
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
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
peter
12f6e38140
* force to use ATT or direct parsing
1998-05-31 14:15:47 +00:00
peter
a9e0837f1e
* force att reading
1998-05-30 14:30:21 +00:00
peter
53be2cf842
* remake3 works again on tflily
1998-05-25 10:40:48 +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
peter
f11a6ba390
* some cleanup and i386_att usage
1998-04-29 13:28:19 +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
michael
62001bab9a
+ Changed Random() function. Moved from system to processor dependent files (from Pedro Gimeno)
1998-04-08 07:53:31 +00:00
root
d1a1f501c8
Initial revision
1998-03-25 11:18:12 +00:00