Commit Graph

42628 Commits

Author SHA1 Message Date
sergei
fcfed19c84 * Fixed one of the C porting bugs (wonder how many are still left...)
git-svn-id: trunk@27184 -
2014-03-19 15:32:29 +00:00
sergei
ab3ae9cf40 * Fixed comment.
git-svn-id: trunk@27183 -
2014-03-19 12:57:26 +00:00
sergei
4952754184 - i386 and x86_64 no longer use any softfloat stuff.
git-svn-id: trunk@27182 -
2014-03-19 12:14:44 +00:00
florian
0e5cf6529e + peephole optimizations AndMovzToAnd, MovMov2Mov1 and MovMov2MovMov1 for x86-64
git-svn-id: trunk@27181 -
2014-03-18 21:54:42 +00:00
sergei
0255eb880e - Removed mathuh.inc files which are identical for all targets (except m68k, see below), their contents moved into math.pp.
+ m68k/mathu.inc: added stub implementations for missing functions.

git-svn-id: trunk@27180 -
2014-03-18 20:01:15 +00:00
sergei
13da05a778 * Factored direct access to softfloat_exception_flags into a helper procedure.
git-svn-id: trunk@27179 -
2014-03-18 16:36:47 +00:00
lacak
8aa280fd81 fcl-db: tests: add '23:59:59' to test time values
git-svn-id: trunk@27178 -
2014-03-18 08:20:50 +00:00
sergei
e79e038f9c + Win32/Win64 SEH: STATUS_FLOAT_MULTIPLE_(FAULTS|TRAPS) need additional handling. Makes floating-point exceptions consistent between x87 and SSE.
git-svn-id: trunk@27177 -
2014-03-17 22:49:29 +00:00
nickysn
b7d759344d * fixed do_filepos and do_seekend not returning the high 16 bits of the file
offset correctly

git-svn-id: trunk@27176 -
2014-03-17 22:01:09 +00:00
nickysn
d989a42111 * several local variables changed from longint to integer
git-svn-id: trunk@27175 -
2014-03-17 21:58:53 +00:00
sergei
b32579278b * Forgot to increase size of array in r27146
git-svn-id: trunk@27174 -
2014-03-17 21:28:16 +00:00
nickysn
517f802ccc * revert to the initial implementation of GetCommandLine as the code generator
bug mentioned in the comment has been fixed

git-svn-id: trunk@27173 -
2014-03-17 20:33:32 +00:00
sergei
5f985602fb * Replaced fpc_ln_real with modern port from fdlibm/uclibc, it has even better accuracy than damath library.
git-svn-id: trunk@27172 -
2014-03-17 14:54:27 +00:00
sergei
9801288cdc * Removed SysInitFPU/SysResetFPU from (remaining) system units initialization code. It is redundant there because it is called from fpc_cpuinit, or, in case of i386, from fpc_cpucodeinit.
* It fixes regression of tw16283b after r27169. 
* BeOS, Haiku: added fpc_cpucodeinit to compensate for removal of SysInitFPU, it also enables use of CPU features like SSE.

git-svn-id: trunk@27171 -
2014-03-17 10:53:52 +00:00
reiniero
420e0165a2 fcl-db: sqlconnection:
* actually follow default property for Property LogEvents..Default LogAllEvents in constructor
* addresses issue #25867

git-svn-id: trunk@27170 -
2014-03-17 08:01:36 +00:00
sergei
6baba5065c * i386: Perform all CPU-related initialization in fpc_cpucodeinit, instead of having it scattered between fpc_cpuinit,fpc_cpucodeinit and check_sse_support. Simplifies things quite a bit.
- check_sse_support and mmx_support are no longer needed, removed.

git-svn-id: trunk@27169 -
2014-03-16 22:20:39 +00:00
sergei
a9b0a92873 * cpuid_support: translated to ATT syntax and optimized a bit.
git-svn-id: trunk@27168 -
2014-03-16 22:05:04 +00:00
Jonas Maebe
4dfc731bdc + support for nested classes in the WPO devirtualisation and VMT
optimization infrastructure (mantis #25869)

git-svn-id: trunk@27167 -
2014-03-16 19:46:17 +00:00
Jonas Maebe
80863a8361 * fixed warning/compilation
git-svn-id: trunk@27166 -
2014-03-16 19:46:10 +00:00
Jonas Maebe
5dd4389f78 * made internalerror unique
git-svn-id: trunk@27165 -
2014-03-16 19:45:56 +00:00
sergei
17b5359db0 * Win32 SEH: handle 'Athlon prefetch bug' and SSE detection exceptions in __FPC_default_handler.
git-svn-id: trunk@27164 -
2014-03-16 17:53:29 +00:00
nickysn
a176c2d4f5 + add overloaded versions of HexStr(pointer) for i8086 near and far pointers
- rm ifdefs for i8086 far code memory model when doing stack traces. The
  compiler will now choose the correct overload of HexStr according to the
  CodePointer type.

git-svn-id: trunk@27163 -
2014-03-16 17:40:31 +00:00
sergei
3fb304cbe2 - Removed Win64 SEH code specific to results of managed types returned in registers. Since r26228 managed types are always returned in parameters.
git-svn-id: trunk@27162 -
2014-03-16 15:48:49 +00:00
sergei
1d5dc8c3bd * More comments can never harm.
git-svn-id: trunk@27161 -
2014-03-16 15:37:40 +00:00
nickysn
1ef9a0509b - rm packset 1, because that's already the default in delphi mode
git-svn-id: trunk@27160 -
2014-03-16 15:32:35 +00:00
nickysn
238c4f91d8 * fixed dos.getftime returning a wrong value for 'time' on i8086-msdos
git-svn-id: trunk@27159 -
2014-03-16 15:22:49 +00:00
nickysn
ee34761646 * changed some longint vars to integer and cleaned up some unused vars from the
msdos dos unit.

git-svn-id: trunk@27158 -
2014-03-16 13:55:00 +00:00
nickysn
ac6611ceb9 - rm unused variable from LFNFindFirst
git-svn-id: trunk@27157 -
2014-03-16 12:46:04 +00:00
nickysn
044a744ba8 + implemented dos.SwapVectors for i8086-msdos
git-svn-id: trunk@27156 -
2014-03-16 12:37:52 +00:00
nickysn
07c3762164 + ported the go32v2 CD-ROM support code for dos.disksize and dos.diskfree to
i8086-msdos

git-svn-id: trunk@27155 -
2014-03-16 12:23:22 +00:00
Jonas Maebe
8d4c372d50 * removed ifdef jvm from ncgvmt
git-svn-id: trunk@27154 -
2014-03-16 11:24:44 +00:00
Jonas Maebe
73a3f5ced4 * moved ncgutil.maybechangeloadnodereg() to hlcg.maybe_change_load_node_reg()
and moved ifdef'd jvm code to overridden method

git-svn-id: trunk@27153 -
2014-03-16 11:24:40 +00:00
Jonas Maebe
dab8754bb6 * moved joinreg64 from cg64f32 to cgobj (joinreg128 is also declared
there)

git-svn-id: trunk@27152 -
2014-03-16 11:24:36 +00:00
Jonas Maebe
d8e228e82d - removed unnecessary JVM-specific code
git-svn-id: trunk@27151 -
2014-03-16 11:24:32 +00:00
Jonas Maebe
d46c353849 * migrated JVM-specific second_nil_to_methodprocvar code to njvmcnv
git-svn-id: trunk@27150 -
2014-03-16 11:24:29 +00:00
Jonas Maebe
84442d05f9 * renamed fobjcforcedprocname to fforcedprocname and also use it for the
JVM target to force virtual method calls to be name-based rather than
    VMT-entry-based

git-svn-id: trunk@27149 -
2014-03-16 11:24:25 +00:00
Jonas Maebe
908bbed312 * moved jvm-specific tarrayreftype from cgutils to jvm/cpubase
git-svn-id: trunk@27148 -
2014-03-16 11:24:21 +00:00
sergei
c003f934c5 * Included cs_opt_peephole into genericlevel1optimizerswitches, so it is re-enabled for all targets after r27106.
- Removed cs_opt_peephole from level1optimizerswicthes on i386 and i8086, it is redundant due to the above change.

git-svn-id: trunk@27147 -
2014-03-15 21:23:29 +00:00
sergei
d728a1636d + Implemented back-tracing with Win32 SEH (not very clean, but works).
git-svn-id: trunk@27146 -
2014-03-15 17:40:07 +00:00
reiniero
fb8cbfdc92 fcl-db: dbtestframework: cosmetic
git-svn-id: trunk@27145 -
2014-03-15 14:24:53 +00:00
nickysn
41d28f91e5 - rm asmmode intel from the i8086-msdos rtl, as that is the default asm mode on
that platform

git-svn-id: trunk@27144 -
2014-03-15 13:01:05 +00:00
nickysn
2425eb243a * DebugWrite and DebugWriteLn moved to the implementation part of the system
unit. No need to expose them anymore, as the regular Write/WriteLn have been
  quite stable on i8086-msdos for a long time now.

git-svn-id: trunk@27143 -
2014-03-15 12:31:01 +00:00
nickysn
3ec4c378aa + added the ObjpasInt type (an integer type equivalent to Objpas.Integer) to the
system unit implementation part.

git-svn-id: trunk@27142 -
2014-03-15 12:19:04 +00:00
sergei
baa18dfcb4 * Introduced a new function CaptureBacktrace, using it to handle most of back-tracing in heaptrc unit.
* Use StackTop instead of StackBottom+StackLength in a few remaining locations.

git-svn-id: trunk@27141 -
2014-03-15 05:16:37 +00:00
nickysn
015c7e951a * Changed the default packset setting to 1 and disabled the padding of 3-byte
sets to 4 bytes on 16 and 8-bit CPUs. This is compatible with Turbo Pascal 7
  and Delphi 1.

git-svn-id: trunk@27140 -
2014-03-14 23:51:14 +00:00
pierre
29cb3a19c2 Fix undefined result for GetShiftState on linux non-console
git-svn-id: trunk@27135 -
2014-03-14 16:09:00 +00:00
sergei
76e5970993 * Clarified comments regarding TIB layout and stack bounds on OS/2.
git-svn-id: trunk@27134 -
2014-03-14 15:18:23 +00:00
lacak
1c12fd4268 fcl-db: base: CompareBookmarks() should return 0 if one of two bookmarks is nil. Test for CompareBookmarks(nil,nil) already exists.
git-svn-id: trunk@27133 -
2014-03-14 12:19:31 +00:00
michael
e3cdbbe099 * Fix redeclaration of property which is default
git-svn-id: trunk@27132 -
2014-03-14 08:33:57 +00:00
lacak
848e650189 fcl-db: tests: comment
git-svn-id: trunk@27131 -
2014-03-14 08:31:16 +00:00