Commit Graph

122 Commits

Author SHA1 Message Date
peter
2f0ce31751 * string concat changed from function to procedure to
allow runtime optimization if the destination is the
    same as a source parameter
  * tassignmentnode now sets aktassignmentnode global that can be used
    to use the left node as a destination parameter and
    skip the assignment
  * disabled all cpu specific shortstr concat/append

git-svn-id: trunk@4770 -
2006-10-02 20:00:06 +00:00
yury
11576fd24b * fixed warnings and notes while compiling system unit for wince.
git-svn-id: trunk@4250 -
2006-07-18 15:00:09 +00:00
peter
fc3e5f68c8 * align needs to be unsigned, patch from Burkhard Carstens
git-svn-id: trunk@4090 -
2006-07-04 16:38:19 +00:00
florian
069ac7d163 * endian conversion functions
git-svn-id: trunk@3543 -
2006-05-15 19:42:13 +00:00
peter
2d3c01d83a * basic work to make Move() and FillChar() internal under ifdef INTERNALMOVEFILLCHAR
git-svn-id: trunk@3021 -
2006-03-24 17:32:39 +00:00
peter
340cf721b5 * faster int_str
* removed i386 int_str since the generic implementation is faster

git-svn-id: trunk@2646 -
2006-02-20 08:31:20 +00:00
daniel
3a60adb3a1 * var back to out
git-svn-id: trunk@2607 -
2006-02-16 08:03:13 +00:00
daniel
b2202654ca * It could be done even better.
git-svn-id: trunk@2606 -
2006-02-16 00:18:21 +00:00
daniel
3adcaaad36 * Faster and more compact integer str routines
git-svn-id: trunk@2605 -
2006-02-15 23:43:27 +00:00
Jonas Maebe
58381ff7b6 * made chararray handling 98% TP-compatible, fixes web bugs 3012
and 4080. The compatibility differences are:
      a) writing a chararray which is zero-based but not zero-
         terminated does not cause a buffer overflow
      b) non-zero-based chararrays can also be read

    The difference was that previously, all chararrays were treated
    as pchars. In TP/Delphi (and now also in FPC), this is only done
    for zero-based chararrays. For non-zero-based ones, the entire
    contents of the array should always be used (including #0's).

    The default parameters in the system unit for the chararray
    helpers are to avoid having to use a define for bootstrapping.

git-svn-id: trunk@2152 -
2006-01-04 10:05:10 +00:00
Jonas Maebe
5b9f58ef73 * reverted r2037 because of braindead "out" semantics for refcounted
types

git-svn-id: trunk@2045 -
2005-12-24 01:06:05 +00:00
Jonas Maebe
9a08cdccf0 * several changes of var parameters into out parameters to avoid
useless warnings: code parameter of val(), destination of str(),
    destinations of ansi2wide and wide2ansi

git-svn-id: trunk@2041 -
2005-12-23 22:25:26 +00:00
Jonas Maebe
84aab46550 * changed formal "var" paramters of move, movechar0 and fill* into
"out" parameters to avoid wrong "uninitialized" warnings

git-svn-id: trunk@2037 -
2005-12-23 20:59:08 +00:00
michael
5cafc069b5 + Removed NOSAVEREGISTERS define
git-svn-id: trunk@307 -
2005-06-09 17:58:20 +00:00
michael
033e38b8df + Removed NOCLASSHELPERS define
git-svn-id: trunk@299 -
2005-06-09 17:46:56 +00:00
michael
3a2eaa94b1 + Removed INTERNCONSTINTF define
git-svn-id: trunk@267 -
2005-06-07 22:04:18 +00:00
michael
93ba0409be + Removed HASCOMPILERPROC define
git-svn-id: trunk@265 -
2005-06-07 21:41:02 +00:00
michael
db5d9d75aa + Removed INTERNCOPY define
git-svn-id: trunk@259 -
2005-06-07 21:11:49 +00:00
michael
8a226bba52 + Removed HASWIDESTRING/HASWIDECHAR defines
git-svn-id: trunk@241 -
2005-06-07 20:42:22 +00:00
michael
23ad0ae1ec + Removed HASINTF and VER1_0 defines
git-svn-id: trunk@239 -
2005-06-07 20:30:03 +00:00
peter
4ace790492 * remove $Log
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
peter
f13ab0667c * missing typecast in indexchar0 2004-12-12 12:39:02 +00:00
michael
06668dda22 + Fixed IndexChar0 2004-12-05 12:41:00 +00:00
peter
14eb8f59b4 internconst, internproc and some external declarations moved to interface 2004-11-17 22:19:04 +00:00
florian
c9e17321d7 * fixed software longint mod operation 2004-11-06 13:36:42 +00:00
florian
5972f89919 * changed maxlongint to high(sizeint) 2004-11-02 08:50:40 +00:00
florian
ef25f06e1c * fixed array sizes 2004-11-02 08:46:50 +00:00
peter
fd759e521f * saveregisters calling convention is obsolete 2004-10-24 20:01:41 +00:00
florian
8c85454cf9 + added system.align
+ threadvars are now aligned
2004-10-14 17:39:33 +00:00
Jonas Maebe
0f26252376 + cgenmath with libc math functions. Faster than the routines in genmath
and also have full double support (exp() only has support for values in
    the single range in genmath, for example). Used in FPC_USE_LIBC is
    defined
  * several fixes to allow compilation with -dHASINLINE, but internalerrors
    because of missing support for inlining assembler code
2004-10-09 21:00:46 +00:00
florian
7a7c34e1b7 + several unicode (to/from utf-8 conversion) stuff added
* some longint -> SizeInt changes
2004-07-18 20:21:44 +00:00
peter
3094258825 * removed warnings 2004-05-31 20:25:04 +00:00
peter
62850815bd * fix arguments for shortstr_compare 2004-05-02 15:15:45 +00:00
peter
4917058b59 * fixed compile with 1.0.x 2004-05-02 00:31:03 +00:00
peter
81b6d9f16c * replace strlenint with sizeint 2004-05-01 23:55:18 +00:00
peter
b5df63e617 * ValSInt fixed for 64 bit 2004-05-01 20:52:50 +00:00
Jonas Maebe
dedf697f3a * use some more string routines from libc if FPC_USE_LIBC is used 2004-05-01 15:26:33 +00:00
peter
53ec165e68 * x86-64 fixes 2004-04-29 19:50:13 +00:00
florian
704ce8035c * tvmt fixed (longint -> ptrint) 2004-04-28 21:01:29 +00:00
peter
8c60c6f93e * ordinal-pointer conversions fixed 2004-04-28 20:48:20 +00:00
peter
b4474438d9 * FPC_MOVE alias 2004-04-26 15:55:01 +00:00
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