sergei
4ebc34c5e7
* Promoted result type of FPC_PCHAR_LENGTH and FPC_PWIDECHAR_LENGTH to SizeInt.
...
+ Check for nil pointer in FPC_PWIDECHAR_LENGTH
git-svn-id: trunk@17733 -
2011-06-13 04:59:17 +00:00
Jonas Maebe
5cbe12c622
* don't overwrite the target value of interlockedcompareexchange*() if the
...
value is different from the comparand (patch by "FVI", mantis #18082 )
* sign extend the loaded value of interlockedcompareexchange() on PowerPC64,
because the function arguments are longints
git-svn-id: trunk@16475 -
2010-11-29 12:53:10 +00:00
Jonas Maebe
c14574bb56
* don't change the fpu control word in the initialisation code of dynamic
...
libraries (mantis #16263 , #16801 )
git-svn-id: trunk@16347 -
2010-11-14 16:00:25 +00:00
Jonas Maebe
a527b6b2b4
* optimized ppc memory barrier implementations
...
git-svn-id: trunk@14803 -
2010-01-25 14:49:33 +00:00
Jonas Maebe
a24db8854c
* fixed return value of InterlockedCompareExchange(64) for ppc/ppc64,
...
bug exposed by tw13281
git-svn-id: trunk@13133 -
2009-05-11 07:26:48 +00:00
micha
83b7f81f81
+ add no-fpu support to compiler/rtl for powerpc-linux (-Cfnone)
...
git-svn-id: trunk@10422 -
2008-03-02 12:59:02 +00:00
peter
2a479654f1
* remove asm for simple math functions so the generic inlined function is
...
taken. This generates smaller optimized code
git-svn-id: trunk@9796 -
2008-01-19 20:23:27 +00:00
florian
7da7364ee7
* refactored SysResetFPU into SysInitFPU and SysResetFPU
...
git-svn-id: trunk@8966 -
2007-10-28 12:06:49 +00:00
Jonas Maebe
e64b973cf9
* fixed ppc and ppc64 compilation after r8898
...
git-svn-id: trunk@8906 -
2007-10-21 22:15:19 +00:00
Jonas Maebe
107682e148
* fixed comparedword
...
* fixed properties
git-svn-id: trunk@8811 -
2007-10-15 10:54:49 +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
micha
7475f656f8
+ add memory barrier routines for powerpc/64
...
git-svn-id: trunk@8179 -
2007-07-28 12:47:48 +00:00
florian
fc027d16c5
* syntax error in last commit fixed
...
git-svn-id: trunk@5966 -
2007-01-14 10:45:21 +00:00
florian
b3a1868ff0
* correct masking of exceptions in genmath code
...
git-svn-id: trunk@5965 -
2007-01-14 10:44:10 +00:00
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
tom_at_work
aa8d214759
* 2.0.4 fix: fixed move()/fillchar() for linux, avoiding use of dcbz which causes crashes on G5
...
git-svn-id: trunk@4137 -
2006-07-09 18:25:41 +00:00
Jonas Maebe
bf1e95e024
+ InterlockedCompareExchange (+ changed line endings from dos to unix)
...
git-svn-id: trunk@3945 -
2006-06-25 18:16:32 +00:00
peter
4c065bce45
* move InterLocked functions to system unit
...
git-svn-id: trunk@3933 -
2006-06-25 09:26:23 +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
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
tom_at_work
9e7d550455
* fixed last commit (1337) which broke some files in the repository
...
git-svn-id: trunk@1338 -
2005-10-08 17:23:44 +00:00
tom_at_work
f7f0f9c426
* makefile adaption to be able to cycle compiler and RTL on PowerPC64 target
...
* some fixes for PowerPC64 target in the code generator and the RTL
* stabs generation for PowerPC64 is okay now (untested)
git-svn-id: trunk@1337 -
2005-10-08 15:48:39 +00:00
Károly Balogh
ccc29a13f3
* added SysResetFPU, which is required for MorphOS
...
git-svn-id: trunk@1279 -
2005-10-03 22:49:44 +00:00
Jonas Maebe
4292e7f939
- removed obsolete FPC_MTFSB0_CORRECTED macro
...
git-svn-id: trunk@487 -
2005-06-24 18:34:58 +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
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
olle
381f243243
* Fixed bug in stack crawling routines for macos
2005-04-28 18:29:01 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
olle
beecc57e21
* Fixed stack frame access for macos
2005-01-31 20:57:41 +00:00
Jonas Maebe
cfeaa8aa65
* some compilation fixes for powerpc after all the internconst and
...
internproc changes, still crashes with internalerror(88) for ppc1
on real2str.inc(193,39)
2004-11-20 15:49:21 +00:00
Jonas Maebe
42b6daebee
* use "round to nearest" rounding mode again, just like C (affects
...
results of divisions as well)
2004-11-08 08:54:51 +00:00
Jonas Maebe
94caa0761e
* fixed redzone usage in fillchar
2004-10-24 14:43:26 +00:00
Jonas Maebe
296013d111
* fixed default rounding mode
2004-10-24 14:20:21 +00:00
Jonas Maebe
fb693982b1
+ "nostackframe" modifier, because the automatic detection in the
...
compiler to determine that a stack frame is not needed no longer works
2004-10-19 18:51:15 +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
Jonas Maebe
f1fcf6dc6e
* use some more string routines from libc if FPC_USE_LIBC is used
2004-05-01 17:02:37 +00:00
peter
269d24955a
* inclocked_longint ifdef fixed
2004-04-29 20:00:47 +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
4c7c8b9c3a
* fixed mtfsb0 instruction for assembler reader/writer
...
* fixed initialisation of fpscr register to avoid spurious SIGPFE's
(uses mtfsb0 instruction, so added extra define in options.pas to avoid
requiring to start with a cross compiler)
2004-01-10 00:16:20 +00:00
Jonas Maebe
14670f4065
* fixed syntax error caught by Mac OS X' as :)
2004-01-03 19:46:29 +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
e9a522fdae
* fixed fillchar for SYSV abi
2003-12-28 21:06:56 +00:00
florian
acade4f561
* fixed compilation with sysv calling conventions
2003-12-21 21:23:09 +00:00
Jonas Maebe
f66a3775c5
* fixed buffer overflow bug in fpc_shortstr_append_shortstr in case
...
the result was already 255 characters long
2003-12-09 20:08:30 +00:00
Jonas Maebe
2eef2eae81
* fixed buffer overrun error in fillchar
2003-12-07 14:27:45 +00:00
Jonas Maebe
aac321199b
+ added FPC_MOVE alias to move for open array support
2003-12-07 13:29:02 +00:00