Commit Graph

83 Commits

Author SHA1 Message Date
florian
3ce72907c2 + implementation of WriteBarrier
git-svn-id: trunk@13554 -
2009-08-18 16:31:18 +00:00
florian
f17943371c * assembler implementation of SwapEndian on x86-64, resolves #14203
git-svn-id: trunk@13455 -
2009-07-26 14:01:32 +00:00
yury
bba2b87064 * Use RIP relative symbol addressing in assembler blocks. Finally bug #13657 is fixed.
git-svn-id: trunk@13137 -
2009-05-13 10:45:54 +00:00
florian
50b63884cb + applied a fix similar to 11820 to x86-64
git-svn-id: trunk@11821 -
2008-09-25 19:31:16 +00:00
Jonas Maebe
032352d98b + darwin/x86_64 support
git-svn-id: trunk@9180 -
2007-11-10 18:33:09 +00:00
florian
7da7364ee7 * refactored SysResetFPU into SysInitFPU and SysResetFPU
git-svn-id: trunk@8966 -
2007-10-28 12:06:49 +00:00
peter
2e47433989 * fix typo
git-svn-id: trunk@8241 -
2007-08-08 06:00:18 +00:00
micha
d95b9082bb * add memory barrier prototypes + implementation for i386 and sparc + use lwsync for powerpc64
git-svn-id: trunk@8240 -
2007-08-07 20:37:08 +00:00
daniel
b293a9bdd4 - Revert patch by Alex Raine.
git-svn-id: trunk@7669 -
2007-06-15 14:13:26 +00:00
daniel
14f2edc56e + Assembler implementation of min/max by Alex Rayne.
git-svn-id: trunk@7668 -
2007-06-15 13:59:20 +00:00
florian
605e82489a * reset fpu on win64 as well, certain operations like ln use it
git-svn-id: trunk@6920 -
2007-03-18 20:25:58 +00:00
florian
87bc8a4471 * fixed InterlockedCompareExchange(64) of x86_64.inc for win64 too
git-svn-id: trunk@6798 -
2007-03-11 22:28:08 +00:00
ivost
f1e218ffe0 * fixed InterlockedCompareExchange(64) of x86_64.inc (I dont know if win64 version is wrong also!)
git-svn-id: trunk@6751 -
2007-03-08 22:27:34 +00:00
florian
b3137786e2 * forgotten commit
git-svn-id: trunk@6027 -
2007-01-17 18:33:04 +00:00
florian
a94a681603 * use system unit for SSECSR setter and getter
git-svn-id: trunk@6019 -
2007-01-17 08:08:49 +00:00
florian
b3a1868ff0 * correct masking of exceptions in genmath code
git-svn-id: trunk@5965 -
2007-01-14 10:44:10 +00:00
florian
9619f4c09d * fixed Math.SetRoundingMode
git-svn-id: trunk@5863 -
2007-01-09 09:44:02 +00:00
florian
538e1bb8e8 * fixed broken Math.SetExceptionMask
git-svn-id: trunk@5858 -
2007-01-08 22:46:12 +00:00
florian
2c17dbcda2 * save rdi on win64
git-svn-id: trunk@5783 -
2007-01-02 00:32:19 +00:00
Jonas Maebe
5acc8b44a8 * activated internal get_frame for x86
* turn off stackframe optimizations on x86 if get_frame is called
    in the current routine, or if the address of a nested function
    is taken in the current routine
  + test for the above
  * this fixes the IDE when compiled with stackframe optimizations
    on x86

git-svn-id: trunk@5146 -
2006-11-01 12:48:53 +00:00
florian
0ade2e487d * cleaned up and fixed (from mftq75) sse unit initialization, fixes #7268
git-svn-id: trunk@4501 -
2006-08-24 20:00:06 +00:00
peter
4c065bce45 * move InterLocked functions to system unit
git-svn-id: trunk@3933 -
2006-06-25 09:26:23 +00:00
daniel
ebec34c224 * Add {$IFNDEF INTERNAL_BACKTRACE}
git-svn-id: trunk@3525 -
2006-05-14 13:12:23 +00:00
florian
47fac4ee6e * moved *SSECSR to system unit
* exposed cpu feature detection on i386 from system unit
+ SafeLoadLibrary

git-svn-id: trunk@3481 -
2006-05-11 19:13:54 +00:00
florian
729cd9a773 * swapped parameters of InterlockedCompareExchange
git-svn-id: trunk@3366 -
2006-04-29 17:57:40 +00:00
florian
a0ab5d7fb5 * fixed register name
git-svn-id: trunk@3361 -
2006-04-29 15:50:49 +00:00
florian
593c23be6e + InterlockedCompareExchange which is a compiler intrinsic for win64
git-svn-id: trunk@3360 -
2006-04-29 15:10:35 +00:00
florian
1c896d4d4c * fixed routines for win64
git-svn-id: trunk@3354 -
2006-04-29 13:04:28 +00:00
florian
d3ed764102 + sse support for rounding and exception masking
git-svn-id: trunk@3305 -
2006-04-20 21:15:32 +00:00
florian
0b0ed3f0f2 * fixed some calling conventions in assembler routines for win64
git-svn-id: trunk@3250 -
2006-04-17 17:17:29 +00:00
florian
398cb8e0fe * fixed calling conventions for winx64
git-svn-id: trunk@3230 -
2006-04-16 14:32:35 +00:00
florian
dff1eef6e6 * system exception handling cleaned up
* fixed setjmp for win64

git-svn-id: trunk@3228 -
2006-04-16 12:53:51 +00:00
florian
89f8474388 * unified and moved some win32/win64 stuff
+ more units on win64 compile

git-svn-id: trunk@3131 -
2006-04-02 20:52:17 +00:00
florian
8711adb9d1 * fixed exp to be pic safe
git-svn-id: trunk@1573 -
2005-10-23 13:37:08 +00:00
florian
78abb1603d * synched with i386
git-svn-id: trunk@1373 -
2005-10-13 20:59:00 +00:00
florian
6a279f8569 * small compilation fixes for win64 system unit
git-svn-id: trunk@373 -
2005-06-10 17:04:02 +00:00
florian
bffd9f2cc7 * killed legacy x87 code for Win64
git-svn-id: trunk@288 -
2005-06-08 19:12:23 +00:00
florian
ad3b9b9464 * windows rtl restructuring to share code between win32 and win64
* BeginThread can take a qword on 64 bit targets as stacksize

git-svn-id: trunk@287 -
2005-06-08 19:08:49 +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
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
michael
ffb55c4254 + Removed VER1_0 defines
git-svn-id: trunk@33 -
2005-05-19 21:14:45 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
58202bd7d5 * some ifdef'ed pic code 2005-04-25 09:40:27 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
florian
29532aa635 * some PIC ifdefs 2005-02-05 22:30:50 +00:00
florian
992876d041 + completed SSE exception masks 2005-02-05 16:19:44 +00:00
peter
29ed3f6d29 * add fnclex before loading old CW 2005-01-30 18:41:53 +00:00
peter
7fb8c3dfbd * signal cleanup for linux
* sigactionhandler instead of tsigaction for bsds
  * sigcontext moved to cpu dir
2005-01-30 18:01:15 +00:00