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
pierre
67dba7efc3
+ added conversion from exceptions into run time error
...
(only if syswin32 compiled with -ddebug for now !)
* added HandleError(errno,frame)
where you specify the frame
needed for win32 exception handling
1998-12-01 14:00:08 +00:00
Jonas Maebe
5271ef0830
* changed RandSeed and OldRandSeed to Cardinal to avoid negative random numbers
1998-11-26 23:16:13 +00:00
michael
62952be3eb
+ renamed astrings.pp to astrings.inc
1998-11-17 10:36:07 +00:00
peter
dbbdb79dfe
* fixes for H+
1998-11-16 10:21:24 +00:00
pierre
c1b6f90bcf
* fix for length(char) in const expressions
1998-11-05 10:29:34 +00:00
michael
233c8c8c79
+ Removed ifdef useansistrings
1998-11-04 20:34:01 +00:00
Jonas Maebe
3aca7519c9
* fixed RandSeed bug
1998-10-12 22:11:28 +00:00
florian
26635465aa
* made FPC_HANDLEERROR public
1998-10-12 12:43:37 +00:00
Jonas Maebe
7688b443a8
* changed seed2 and seed3 to cardinal to prevent overflow
1998-10-07 11:40:08 +00:00
peter
369e79adf9
+ assert() support
1998-10-05 12:32:44 +00:00
peter
96159c617a
* more constant expression evals
1998-10-02 09:25:09 +00:00
peter
e47964d613
* shortstring=string type added
1998-09-22 15:30:54 +00:00
michael
ac4ac905aa
Added AbstractErrorHandler
1998-09-16 13:08:03 +00:00
michael
c3781fba38
Added FPC_ prefix to abstracterror
1998-09-16 12:37:07 +00:00
michael
2ec08b84f3
+ Merged changes from fixes branch
1998-09-15 17:12:32 +00:00
peter
4620a73a9b
* FPC_ names
...
* Heap manager is now system independent
1998-09-14 10:48:00 +00:00
peter
b8ff0c3320
+ internconst
1998-09-01 17:36:17 +00:00
carl
1dd8fe99d5
+ important comment added
1998-08-17 12:24:16 +00:00
Jonas Maebe
bee0c9d3b4
* random now returns a value between 0 and max-1 instead of between 0 and max
1998-08-13 16:22:11 +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
michael
8cc8cb80b2
+ added setjmp/longjmp and exception support
1998-07-28 20:37:45 +00:00
michael
e639e7b163
+ Adapted assert to Delphi format
1998-07-23 19:53:20 +00:00
michael
72b2ff141f
+ Implemented DO_ASSERT function.
1998-07-23 13:08:41 +00:00
carl
44820af8cb
* would not compile under FPC v0.99.5
1998-07-15 12:09:35 +00:00
florian
ba57d2813b
* some problems with ansi string support fixed
1998-07-13 21:19:07 +00:00
carl
4f8884b466
* randon and Random(l) now work correctly - don't touch it works!
1998-07-08 11:56:55 +00:00
carl
004bb57ae9
* hmmm... it is luck (BSS zeroed with GAS) that DoError and ErrorBase work.
...
Now they are initilized instead.
1998-07-02 13:01:55 +00:00
carl
a546945c4d
* DOERROR RESOTRED! DON'T TOUCH :)
1998-07-02 12:53:09 +00:00
carl
5434ee6d4c
* no SINGLE in m68k and other processors!
1998-07-02 12:11:50 +00:00
peter
b5203c5b09
* fixed do_error in runtimeerror
1998-07-02 09:25:05 +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
4ac8e5d18f
+ internal inc/dec
1998-06-25 14:04:17 +00:00
daniel
c43a386001
+ RTLLITE directive to compile minimal RTL.
1998-06-25 09:44:19 +00:00
daniel
c48b67d0b3
* RTLLITE conditional added to produce smaller RTL
1998-06-15 15:16:26 +00:00
michael
504b4faf62
+ Forgot to commit some changes
1998-06-10 07:46:45 +00:00
michael
05b01ddb00
Implemented rtti, inserted ansistrings again
1998-06-08 12:38:21 +00:00
peter
d0ce4085d3
* comp,extended are only i386 added support_comp,support_extended
1998-06-04 23:45:56 +00:00
cvs
ac974a7634
* test commit. Shouldn't be allowed.
1998-05-20 11:23:09 +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
4594d7ae04
+ inc(pchar), dec(pchar), incc(pchar,a),dec(pchar,a)
1998-04-16 12:30:47 +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
florian
4a9ba91007
* complete Object Pascal support moved to objpas unit
1998-03-25 23:39:17 +00:00
root
d1a1f501c8
Initial revision
1998-03-25 11:18:12 +00:00