florian
6cd2cddd33
+ added prefetch(const mem)
2004-02-02 20:39:27 +00:00
florian
87f13990e5
* alignment handling of generic fillbyte/word fixed
2004-01-31 16:14:24 +00:00
florian
0b8ffc2fb2
* fixed a couple of broken generic routines
2004-01-28 17:02:13 +00:00
florian
83127c2889
* improved generic int. div routines
2004-01-21 01:25:02 +00:00
florian
44368ca0e1
+ created generic versions of software dword/longint mod/div
2004-01-20 23:16:56 +00:00
Jonas Maebe
6fe31d0d90
* changed index* to conform to the assembler implementations (interpret
...
negative upper bound as maximum)
2004-01-10 17:01:29 +00:00
daniel
fd86e14b01
* Use of 0 instead of nil fixed
2003-12-16 09:43:04 +00:00
Jonas Maebe
2b28a58c6d
* fixed longint/cardinal comparison in int_str
2003-12-06 13:25:30 +00:00
florian
8d771df2d4
* arm fixes to the common rtl code
...
* some generic math code fixed
* ...
2003-09-03 14:09:37 +00:00
Jonas Maebe
f0227e6a17
* fpc_shortstr_append_shortstr has to use high(s1) instead of 255 as
...
maxlen
+ ppc version of fpc_shortstr_append_shortstr
2003-06-01 14:50:17 +00:00
peter
84f2b74142
* FPC_SHORTSTR_APPEND_SHORTSTR public added
2003-05-26 21:18:13 +00:00
peter
60407e302b
* fpc_shortstr_concat is now the same for all targets
...
* fpc_shortstr_append_shortstr added for optimized code generation
2003-05-26 19:36:46 +00:00
florian
35bb4d682f
* fixed generic shortstr_compare
2003-05-16 22:40:11 +00:00
peter
e5b48ec83d
* extra check for self and empty objects
2003-05-13 20:52:50 +00:00
peter
163e06f93b
* fpc_help_fail compilerproc
...
* fpc_new_class, fpc_dispose_class not needed by latest compiler
2003-05-13 19:18:08 +00:00
peter
f272c18e94
* remvoe objectsize loading from help_destructor
...
* implement fpc_check_object
* saveregistrers for check_object
2003-04-23 13:10:09 +00:00
peter
c412dedb8c
* undo previous commit
2003-04-02 14:05:45 +00:00
mazen
9f66d3bc05
* making sparc compiling again by adapting compilerproc declarations after the
...
last change of compilerproc by i386 team.
2003-04-01 21:12:40 +00:00
peter
ea9e883802
* generic constructor/destructor fixes
2003-03-26 00:17:34 +00:00
Jonas Maebe
15419c49a6
- removed buggy i386-specific FPC_CHARARRAY_TO_SHORTSTR
...
* fixed generic FPC_CHARARRAY_TO_SHORTSTR (web bug #2382 )
* fixed some potential range errors in indexchar/word/dword
2003-02-18 17:56:06 +00:00
mazen
c3321868d5
* many stuff related to RTL fixed
2003-01-20 22:21:36 +00:00
florian
6432af8a76
* fixed helper declarations
2003-01-09 20:14:20 +00:00
mazen
9e5d6dc00b
- space removed
2003-01-07 22:04:12 +00:00
mazen
a5e2afbbb3
* functions headers modified in generic.inc to make it possible compiling sparc
...
RTL based on generic code
2003-01-06 23:04:21 +00:00
mazen
215880afe8
* fixing several bugs compiling the RTL
2003-01-05 21:32:35 +00:00
peter
0c2feff146
* fix wrong var names for shortstr_compare
2002-12-23 21:27:13 +00:00
carl
c5783607c3
* avoid crashes with negative len counts on fills/moves
...
* movechar0 was wrong and did not do the behavior as
described in docs
2002-10-20 11:51:54 +00:00
peter
5fff238567
* threads unit added for thread support
2002-10-14 19:39:16 +00:00
carl
2d8417cdfc
* RunError 220 -> RunError 219 to be more consistent with as operator
2002-10-12 20:32:41 +00:00
florian
c6ea429567
+ several widestring/pwidechar related helpers added
2002-10-10 16:08:50 +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
ab9e07a2d7
* fix 2GB limit problem
2002-09-27 21:10:40 +00:00
carl
933d28f62b
* FPC_HELP_FAIL : reset _self to nil
2002-09-13 19:13:06 +00:00
Jonas Maebe
a3e6f8cb66
* added some missing compilerproc directives
2002-09-10 21:29:44 +00:00
carl
cd50814a64
* cardinal -> longword
...
- remove generic boundcheck (does not exist in v1.1)
2002-09-07 21:08:42 +00:00
peter
01dfac4a4e
* old logs removed and tabs fixed
2002-09-07 15:06:34 +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
53a0b662b9
* several fixes to get further with linux/ppc system unit compilation
2002-07-29 21:28:16 +00:00
Jonas Maebe
00801d2c76
* fixed some datastructures > 2GB
2002-07-29 09:23:11 +00:00
florian
6d4e01d74f
* made abs a compiler proc if it is generic
2002-07-28 21:39:28 +00:00
florian
7ac5c3743d
* several fixes for linux/powerpc
...
* several fixes to MT
2002-07-28 20:43:47 +00:00
carl
3525611583
* bugfix of FPC_NEW_CLASS (was not creating correct instance)
...
+ FPC_HELP_FAIL_CLASS now tested (no longer required)
2002-06-16 08:19:03 +00:00
carl
4669fcc7e2
+ generic FPC_HELP_FAIL
...
+ generic FPC_HELP_DESTRUCTOR instated (original from Pierre)
+ generic FPC_DISPOSE_CLASS
2002-05-22 18:48:29 +00:00
carl
fbf499b13d
* generic constructor implemented
2002-05-16 19:58:05 +00:00
carl
4e782284ba
* memory corruption bugfix in FPC_HELP_CONSTRUCTOR if object cannot be allocated
2002-03-30 13:08:54 +00:00
peter
c3f645769a
* add internconst for all overloaded types of Odd/Abs/Sqr
2002-01-25 17:38:55 +00:00
Jonas Maebe
2b3898aeff
* adapted ranges of native types to int64 (e.g. high cardinal is no
...
longer longint($ffffffff), but just $fffffff in psystem)
* small additional fix in 64bit rangecheck code generation for 32 bit
processors
* adaption of ranges required the matching talgorithm used for selecting
which overloaded procedure to call to be adapted. It should now always
select the closest match for ordinal parameters.
+ inttostr(qword) in sysstr.inc/sysstrh.inc
+ abs(int64), sqr(int64), sqr(qword) in systemh.inc/generic.inc (previous
fixes were required to be able to add them)
* is_in_limit() moved from ncal to types unit, should always be used
instead of direct comparisons of low/high values of orddefs because
qword is a special case
2002-01-24 12:33:52 +00:00
Jonas Maebe
f256a47f04
* compilerproc implementation of set addition/substraction/...
...
* changed the declaration of some set helpers somewhat to accomodate the
above change
* i386 still uses the old code for comparisons of sets, because its
helpers return the results in the flags
* dummy tc_normal_2_small_set type conversion because I need the original
resulttype of the set add nodes
NOTE: you have to start a cycle with 1.0.5!
2001-09-03 13:27:41 +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
13db04fb8b
* small cleanup of commented code (merged)
2001-07-31 19:36:51 +00:00
peter
bc74424ab1
* m68k updates merged
2001-07-29 13:49:15 +00:00
peter
ca8d604964
* various widestring updates, it works now mostly without charset
...
mapping supported
2001-07-08 21:00:14 +00:00
peter
51e528796b
* more saveregisters added (merged)
2001-05-28 20:43:17 +00:00
peter
12a3b11cdb
* merged fixes branch fixes
2001-05-18 22:59:59 +00:00
Jonas Maebe
d811aeedf7
+ odd() for cardinal, int64 and qword (merged)
2001-05-16 17:44:25 +00:00
peter
8bf13fd185
*** empty log message ***
2001-05-09 19:57:07 +00:00
peter
b06b389b67
* int_str cardinal fix (merged)
2001-04-21 12:16:28 +00:00
peter
22db4256ce
* removed rtllite define
2001-04-13 18:06:28 +00:00
Jonas Maebe
3eb9c758fb
* changed typecast in FPC_STR_TO_CHARARRAY so that no temp ansistring is
...
generated anymore (merged)
2001-03-05 17:10:40 +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
michael
619dac6c93
+ Merged from fixbranch
2000-10-01 13:17:35 +00:00
Jonas Maebe
3aab08cba8
+ FPC_STR_TO_CHARARRAY routine necessary for string -> chararray
...
conversions fix (merged fropm fixes branch)
2000-08-09 11:29:01 +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
marco
f5fd205ab5
* Changed move (var source;var dest) to move (const source;var dest)
2000-07-07 18:23:41 +00:00
pierre
4bbbb33cf1
* small fixes
2000-03-10 13:45:31 +00:00
peter
6b66a55cd6
* truncated log
2000-02-09 16:59:28 +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
bb70445e8a
* some assembler functions translated to pascal
...
WARNING these are not yet TESTED !!!
+ FPC_CHARARRAY_TO_SHORTSTRING added
1999-12-21 11:12:16 +00:00
peter
ebd738f2f5
* removed temp defines
1999-07-05 20:04:21 +00:00
pierre
9a21e0d1e2
+ generic.inc added
1999-05-31 21:59:58 +00:00