Commit Graph

195 Commits

Author SHA1 Message Date
peter
55486446a3 * fix 64bit address printing 2004-04-22 19:43:43 +00:00
peter
0fbb1fe9e8 * random(int64) added 2004-04-22 17:10:38 +00:00
daniel
173d1a2554 * Applied 2004-02-20 11:01:20 +00:00
daniel
f9efd57801 * Use $ for hex numbers instead of alien 0x 2004-02-06 20:17:12 +00:00
florian
f65558b4c4 * fixed syscall number 2004-01-22 20:12:37 +00:00
Jonas Maebe
4a8d1bcb06 * fixed wrong include filename 2004-01-11 12:21:06 +00:00
Jonas Maebe
5439babeb5 + cgeneric.inc: implementations of rtl routines based on libc
* system.inc: include cgeneric.inc before powerpc.inc/i386.inc/... if
    FPC_USE_LIBC is defined
  * powerpc.inc, i386.inc: check whether the routines they implement aren't
    implemented yet in another include file (cgeneric.inc)
2004-01-11 11:10:07 +00:00
Jonas Maebe
6bd3eccdac + fpc_cpuinit procedure to allow cpu/fpu initialisation before any unit
initialises
  + fpu exceptions for invalid operations and division by zero enabled for
    ppc
2004-01-02 17:21:50 +00:00
Jonas Maebe
c2efd86268 + integer division-by-zero detection support for ppc
+ compilerproc FPC_DIVBYZERO
2004-01-01 17:58:16 +00:00
marco
b15ba0a5ae * Peter's Cardinal<->Longint fixes patch 2003-11-03 09:42:27 +00:00
Jonas Maebe
34e1c9af8f * hack to allow repeatable random sequences using the new random number
generator
  * fixed range warning/error
2003-10-29 18:23:45 +00:00
Tomas Hajny
a3636fc097 * minor fix for new Random 2003-10-26 21:15:43 +00:00
Jonas Maebe
3f4f17e1f6 * replaced random generator with the Mersenne twister, which is about
3.5 times faster
2003-10-26 18:46:02 +00:00
peter
abbc3fa755 * moved int64 asm code to int64p.inc
* save ebx,esi
2003-09-14 11:34:13 +00:00
florian
8d771df2d4 * arm fixes to the common rtl code
* some generic math code fixed
  * ...
2003-09-03 14:09:37 +00:00
olle
f384584ac7 - removed parameter from fpc_iocheck
* changed processor compiler directive * to cpu*
2003-08-21 22:10:55 +00:00
peter
1e86b585f9 * changed address parameter/return values to pointer instead
of longint
2003-03-17 14:30:11 +00:00
mazen
92f035d47f * fixing run time errors related to unimplemented abstract methods in CG
+ giving empty emplementations for some RTL functions
2003-02-05 21:48:34 +00:00
carl
781415a0da - avoid warnings (add typecast) 2002-12-07 14:34:30 +00:00
peter
ef708fdab9 * Swap(QWord) constant support 2002-11-18 18:33:51 +00:00
peter
5fff238567 * threads unit added for thread support 2002-10-14 19:39:16 +00:00
carl
23f2c80911 * assert now halts with exitcode 227 (as Delphi does) 2002-09-18 18:32:01 +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
7ac5c3743d * several fixes for linux/powerpc
* several fixes to MT
2002-07-28 20:43:47 +00:00
florian
05a95ba5bc * interface of system unit for Linux/PowerPC compiles 2002-07-26 22:46:06 +00:00
florian
b6fe4bdebd * endian directive for PowerPC fixed 2002-07-26 16:42:00 +00:00
florian
95c6c8f430 + some x86-64 support added 2002-07-04 20:40:09 +00:00
carl
1b88940d62 * StackError is now a typed constant
+ $S can be used under unix
2002-04-21 15:51:50 +00:00
peter
dd7bc0dbdd * stackcheck protected against infinite recursive after stack error
* stackcheck requires saveregisters, because it can be called from
    iocheck and then will destroy the result of the original function
2002-04-15 19:38:40 +00:00
carl
b6da7bd8a2 + generic stack checking can be overriden 2002-04-15 18:51:20 +00:00
carl
7d6edd04b2 + generic stack checking 2002-04-12 17:34:05 +00:00
michael
bec30ba1b5 + Added double2real function from main branch 2001-12-13 20:23:19 +00:00
carl
6c657fe80e + don't print stack information if previous frame = 0 2001-11-19 02:40:24 +00:00
florian
6476fbf2fe * fixed and added a lot of stuff to get the Jedi DX( headers
compiled
2001-08-19 21:02:01 +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
e7c86006db * m68k updates merged 2001-07-30 21:38:54 +00:00
peter
eb32168592 * include lowmath for m68k (merged) 2001-07-29 14:05:55 +00:00
peter
bc74424ab1 * m68k updates merged 2001-07-29 13:49:15 +00:00
peter
db87f86f00 * Length made internal
* Add array support for Length
2001-07-09 21:15:40 +00:00
peter
ca8d604964 * various widestring updates, it works now mostly without charset
mapping supported
2001-07-08 21:00:14 +00:00
peter
69b8e3ad44 * big endian updates (merged) 2001-06-13 18:32:05 +00:00
peter
675b517bbe * lib_exit added 2001-06-03 15:15:58 +00:00
peter
8bf13fd185 *** empty log message *** 2001-05-09 19:57:07 +00:00
peter
22db4256ce * removed rtllite define 2001-04-13 18:06:28 +00:00
Jonas Maebe
4f791d04b4 - removed all ifdef cardinalmulfix code 2000-12-16 15:56:18 +00:00
Jonas Maebe
75ad22bf64 * support for range checking when converting from 64bit to something
smaller (32bit, 16bit, 8bit)
  * fixed range checking between longint/cardinal and for array indexing
    with cardinal (values > $7fffffff were considered negative)
2000-11-13 14:47:46 +00:00
peter
24b631132e * ptr returns farpointer 2000-11-11 16:12:01 +00:00
peter
2660e94c5f * removed some warnings 2000-11-06 21:35:59 +00:00
florian
8dc903fc3b * fixed linker errors 2000-11-04 17:52:46 +00:00
peter
b8461475c8 * FPC_BREAK_ERROR added 2000-10-13 12:04:03 +00:00
michael
7aa1e88a5d + Added some delphi compatibility types 2000-08-13 17:55:14 +00:00
marco
e817560f04 * fixes for val(int64 or qword) to ansistring 2000-08-09 19:31:18 +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
pierre
2f715a886a * disable check in Exit and Error code 2000-05-23 20:35:41 +00:00
peter
ebbf2e578f * backtraces for exceptions are now only generated from the place of the
exception
  * frame is also pushed for exceptions
  * raise statement enhanced with [,<frame>]
2000-04-24 11:11:50 +00:00
pierre
f1ab3ebad2 + get longer backtrace when redirected to file 2000-04-14 12:17:12 +00:00
florian
548f14e16d * halt in the finalization statement of a unit lead to an endless loop; fixed 2000-04-02 09:39:25 +00:00
pierre
dafcbea824 + HandleErrorAddrFrame 2000-03-14 07:31:57 +00:00
Jonas Maebe
0b02714817 + new str_real which is completely TP compatible regarding output
format and which should have no rounding errors anymore
2000-02-26 15:49:40 +00:00
peter
6b66a55cd6 * truncated log 2000-02-09 16:59:28 +00:00
peter
6c15031ffd * moved halt to system.inc
* syslinux doesn't use direct asm anymore
2000-02-09 12:17:51 +00:00
peter
78cb6bfa89 * lineinfo unit added which uses stabs to get lineinfo for backtraces 2000-02-06 17:19:22 +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
8b91888fc2 * allow v09912 to compile system 1999-12-21 11:10:22 +00:00
florian
89c403c529 * very basic widestring support 1999-12-18 14:54:34 +00:00
Jonas Maebe
047a68614f * remove "random(longint): longint" if cardinalmulfixed is defined 1999-12-12 13:29:34 +00:00
Jonas Maebe
7f899914bc + function random(longint): longint 1999-12-01 12:37:13 +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
peter
78d5e706ac * exception address fixes 1999-11-15 21:49:47 +00:00
pierre
36912a7a2b + get also first BackTrace address with ' 0x' prefix 1999-11-09 22:40:12 +00:00
daniel
ec77ff77ee * Committed new random generator. 1999-11-09 20:14:12 +00:00
peter
aa083c5b4d * truncated log 1999-11-06 14:35:38 +00:00
peter
6eafc25151 * *errorproc are not procvars instead of pointers which allows better
error checking for the parameters (shortstring<->ansistring)
1999-10-26 12:31:00 +00:00
Jonas Maebe
cd47cbb67a * dump_stack now actually dumps its info to f (was still hardcoded
to stderr)
1999-09-18 16:05:12 +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
00c8bda3b2 * fixed assert() to push/pop registers 1999-07-28 12:58:22 +00:00
peter
ebd738f2f5 * removed temp defines 1999-07-05 20:04:21 +00:00
peter
a3bcef25cc * $ifdef int64 1999-07-03 01:24:19 +00:00
florian
01aceb4f07 + qword/int64: lo/hi/swap 1999-07-02 18:06:40 +00:00
florian
404cffaad4 + qword/int64 type released 1999-07-01 15:39:50 +00:00
peter
dc8c1c62bd * random doesn't rte 200 with random(0) 1999-06-11 11:47:00 +00:00
michael
2ffca0ba47 + AbstractErro should call HandleError, not runerror. 1999-06-05 20:45:12 +00:00
florian
e905aeea04 * most of the Object Pascal stuff moved to the system unit 1999-05-17 21:52:33 +00:00
peter
dc1f9b5bbb * addr() internal 1999-04-17 13:10:23 +00:00
peter
6120616a20 + finalization support 1999-04-15 12:19:59 +00:00
peter
af8a04a5af * use external names
* removed all direct assembler modes
1999-03-01 15:40:48 +00:00
florian
e207d78d70 + functions lo/hi for DWord type implemented 1999-02-01 00:05:14 +00:00
pierre
1cd9b0fb0e * Fillchar(..,..,boolean) added 1999-01-29 09:23:09 +00:00
pierre
ab763cd69c + added text arg for dump_stack 1999-01-22 12:39:19 +00:00
pierre
33aac9b556 + system_exit procedure added 1999-01-18 10:05:47 +00:00
peter
f11d46a93e + stdout, which is needed when you write something in the system unit
to the screen. Like the runtime error
1998-12-28 15:50:42 +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
peter
f2b6d631e5 * removed warnign 1998-12-10 23:59:56 +00:00