Commit Graph

13161 Commits

Author SHA1 Message Date
pierre
b279f24f26 Add FPC_SOFT_FPUX80 and FPC_SOFT_FPU128 define handling
git-svn-id: trunk@39732 -
2018-09-11 08:02:48 +00:00
pierre
b219fa9023 pass -D__I8086_SMARTLINK_SECTIONS__ to nasm if FPCOPT contains -dTEST_I8086_SMARTLINK_SECTIONS
git-svn-id: trunk@39726 -
2018-09-10 13:30:42 +00:00
Jeppe Johansen
ba8245dccb argc is a longint.
git-svn-id: branches/laksen/riscv_new@39696 -
2018-09-01 19:46:04 +00:00
svenbarth
a076677336 * instead of a flags field generate a table with all Initialize operators of all fields (nested or not, parent class or not) for class types; objects and records don't use this (yet)
git-svn-id: trunk@39690 -
2018-08-29 19:21:35 +00:00
svenbarth
2e1327b6b2 * use pooled constant references for the parameter locations as more often than not they're equal between multiple methdos (e.g. the Self argument is always the same)
* using this the TypInfo unit can navigate interface methods and VMT method parameters much more quickly as the latter have a constant size now

git-svn-id: trunk@39686 -
2018-08-29 19:20:31 +00:00
svenbarth
029ec93df6 * use pooled constant references for the names of VMT methods in the RTTI
git-svn-id: trunk@39685 -
2018-08-29 19:20:27 +00:00
svenbarth
228d3252cc * use pooled constant references for the parameter names of VMT methods in the RTTI
git-svn-id: trunk@39684 -
2018-08-29 19:20:24 +00:00
marco
0b9ee238b5 * windows unit enhancements from mantis #34184
git-svn-id: trunk@39675 -
2018-08-27 18:11:40 +00:00
svenbarth
d9cb5c4502 + add a Boolean8 alias for Boolean for symmetry's sake (fixes Mantis #34058)
git-svn-id: trunk@39673 -
2018-08-24 15:53:10 +00:00
svenbarth
d8f024a490 * improve DirectoryExists() and FileExists() based on patch by Serge Anvarov in Mantis #32370 so that they also support files/directories that aren't accessible (e.g. the page file) as well as FollowLink = False
git-svn-id: trunk@39672 -
2018-08-24 15:34:09 +00:00
svenbarth
e110d90127 + implement FileGetSymLinkTarget() based on patch by Serge Anvarov in Mantis #32370
git-svn-id: trunk@39671 -
2018-08-24 15:34:04 +00:00
svenbarth
b9721003f0 + add missing defines
git-svn-id: trunk@39670 -
2018-08-24 15:33:55 +00:00
svenbarth
09e5f463dc + add Delphi-compatible FileGetSymLinkTarget functions to all platforms (currently returns False on all platforms); this also includes TSymLinkRec variants for both RawByteString and UnicodeString
git-svn-id: trunk@39669 -
2018-08-24 15:33:45 +00:00
svenbarth
92dcdd8b5b + add Delphi compatible FollowLink parameter (default is True) to FileExists and DirectoryExists; support for it is up to each target
git-svn-id: trunk@39668 -
2018-08-24 15:33:09 +00:00
marco
315fe21718 * deprecations, remove oldlinux.
git-svn-id: trunk@39663 -
2018-08-23 07:57:56 +00:00
marco
096e7d7513 * add prawbytestring.
git-svn-id: trunk@39662 -
2018-08-22 12:26:42 +00:00
marco
1e60364572 * another stat file cleanup.
git-svn-id: trunk@39655 -
2018-08-20 14:27:59 +00:00
florian
70b2e11e6a * fix SetRoundingMode on RiscV64
git-svn-id: branches/laksen/riscv_new@39646 -
2018-08-19 15:26:44 +00:00
florian
4f052e4f90 o fix several issues with floating point exceptions
+ mask underflow and precision on startup
  + check for floating point exceptions after inlined float routine helpers
  - do not check for floating point exceptions after floating point moves 

git-svn-id: branches/laksen/riscv_new@39645 -
2018-08-19 15:26:00 +00:00
marco
bffbff73e1 * remove deprecated parts linux stat records (FPC 1.0 leftovers)
git-svn-id: trunk@39644 -
2018-08-19 15:10:22 +00:00
marco
15fcd0ab61 * remove old ifdefs
git-svn-id: trunk@39642 -
2018-08-19 14:54:58 +00:00
florian
203409ab48 * fixed floating point exception masking support for RiscV64
git-svn-id: branches/laksen/riscv_new@39638 -
2018-08-19 10:55:41 +00:00
marco
98f00acb06 * trunk to 3.3.1
git-svn-id: trunk@39635 -
2018-08-18 15:47:44 +00:00
marco
d143ab60e1 * regenned makefile without date/rev components for easier merging.
git-svn-id: trunk@39630 -
2018-08-18 15:06:25 +00:00
florian
a825a66d01 * IntPower inverts the base first for negative exponents and multiplies then, resolves #34124
git-svn-id: trunk@39621 -
2018-08-16 20:45:35 +00:00
pierre
e4346b264f Add missing alignment in DynArrayIndex function
git-svn-id: trunk@39586 -
2018-08-07 16:34:57 +00:00
pierre
bc75e8547e Improve detect_linuxvcs to allow parsing of /proc/PID/stat even with spaces in exe name
git-svn-id: trunk@39579 -
2018-08-06 16:10:28 +00:00
pierre
76d3893d78 Changes for symbian target OS, adding most of standard units, as empty stubs
git-svn-id: trunk@39578 -
2018-08-06 15:16:55 +00:00
pierre
d0a7e29052 Add character, fpwidestring, unicodedata and unicodenumtable units to allow compilation of uregexpr unit from package regexpr
git-svn-id: trunk@39576 -
2018-08-06 12:23:08 +00:00
pierre
805aaf18d6 Add character, fpwidestring, unicodedata and unicodenumtable units to Makefile to allow compilation of uregexpr unit from pacakge regexpr
git-svn-id: trunk@39575 -
2018-08-06 10:12:37 +00:00
pierre
394b353c34 Add character, fpwidestring, unicodedata and unicodenumtable units to builrtl to allow compilation of uregexpr unit from pacakge regexpr
git-svn-id: trunk@39574 -
2018-08-06 10:11:58 +00:00
pierre
2ad89601e1 Add character, fpwidestring, unicodedata and unicodenumtable units to allow compilation of uregexpr unit from pacakge regexpr
git-svn-id: trunk@39573 -
2018-08-06 09:42:02 +00:00
michael
ab84f09591 * Fix bug #39521. Generic functions only in trunk
git-svn-id: trunk@39525 -
2018-07-29 21:43:03 +00:00
Jeppe Johansen
f781c8942e Write real atomic operations, and add memory barrier operations.
Add support for fence, and acquire/release syntax to assembler reader.
Fix broken register aliases.

git-svn-id: branches/laksen/riscv_new@39524 -
2018-07-29 16:43:09 +00:00
Jeppe Johansen
f2670bc8fb Fix missing alignment call.
git-svn-id: branches/laksen/riscv_new@39523 -
2018-07-29 14:18:19 +00:00
Jeppe Johansen
90d5f5e760 Added library search paths.
Removed GP and TP from allocatable registers for now. GP should not be overwritten.
Ported dllprt0.as
Fixed register usage in cprt0.as

git-svn-id: branches/laksen/riscv_new@39522 -
2018-07-29 13:08:15 +00:00
michael
1e3f44965f * Added generic IfThen, as proposed by Thaddy de Koning, bug id #34012
git-svn-id: trunk@39521 -
2018-07-29 09:35:54 +00:00
Jeppe Johansen
27ab039366 Fixed _fini and _init references in cprt0.as
Add RiscV to fcl-res and fpcres.
Check that constant is a valid imm12 when doing overflow checking.

git-svn-id: branches/laksen/riscv_new@39494 -
2018-07-23 11:40:55 +00:00
Jeppe Johansen
b98eb3daa9 Changed order in stack unravelling RTL code, to match the most common cases.
Fixed unsigned conditions for branch conditions.
Added some additional const loading cases.
Changed the temporary register used during calls because it could otherwise clash with the argument passing registers.

git-svn-id: branches/laksen/riscv_new@39492 -
2018-07-23 01:11:31 +00:00
florian
65a415c13e * fix assembling with official binutils
* fix compilation on 32 bit hosts
+ compile with -Sew

git-svn-id: branches/laksen/riscv_new@39482 -
2018-07-22 13:10:24 +00:00
marco
a94205280c * fixes mantis 34008, some copy paste errors in -A and -W suffixes.
Note that the enumfont* functions seem to use the var prototypes, while only redef functions should use them. Probably not worth breaking compat for though (in since 2016)

git-svn-id: trunk@39480 -
2018-07-21 12:29:18 +00:00
Jeppe Johansen
dcb0f4fdb5 Fixed setjmp that overwrote a callee save register.
Disable relaxation for the gp load part of the prt0 code.
Fixed up some syscall definitions.

git-svn-id: branches/laksen/riscv_new@39478 -
2018-07-20 15:00:14 +00:00
Jeppe Johansen
2aaf481d89 Regenerated makefiles.
git-svn-id: branches/laksen/riscv_new@39476 -
2018-07-20 10:40:57 +00:00
Jeppe Johansen
6352328f3a Update packages with information about RiscV.
Fix g_external_wrapper, since it uses a register.
Fixed calling of gas.
Ported cprt0.

git-svn-id: branches/laksen/riscv_new@39475 -
2018-07-20 10:40:28 +00:00
Jeppe Johansen
ceb38833f2 Added RiscV32/64 target, from a cleaned up version of branches/laksen/riscv/trunk.
git-svn-id: branches/laksen/riscv_new@39474 -
2018-07-20 08:21:15 +00:00
svenbarth
38c30a557d * deprecate MaxGListSize; it's no longer used by the generic types
git-svn-id: trunk@39465 -
2018-07-17 19:30:29 +00:00
svenbarth
2ec7a5acff * change declaration of TTypeList from a static array to a pointer to T as the static array might breach the
limits for static arrays if the used type is too large (especially on 32-bit systems); as FPC supports indexing
of typed pointers like arrays this should be mostly backwards compatible

git-svn-id: trunk@39464 -
2018-07-17 19:30:26 +00:00
michael
53e10c99d4 * Fix bug #33984, fix for correct string definition in unicodestringreplace
git-svn-id: trunk@39452 -
2018-07-14 16:27:52 +00:00
nickysn
374a8281e7 + added unit ports for win16
git-svn-id: trunk@39441 -
2018-07-12 14:24:46 +00:00
nickysn
a8f466c400 * updated the CSeg, DSeg and SSeg rtl functions on i8086 to use the new x86
intrinsics for reading the segment registers

git-svn-id: trunk@39434 -
2018-07-11 14:34:05 +00:00
nickysn
9272bf59b2 + added x86 (i8086, i386 and x86_64) intrinsics fpc_x86_get_cs/ss/ds/es/fs/gs
for getting the value of x86 segment registers

git-svn-id: trunk@39433 -
2018-07-11 14:19:40 +00:00
pierre
81a14c5a5a Remove obsolete -DNOMOUSE (used only in packages/rtl-console)
git-svn-id: trunk@39428 -
2018-07-10 10:25:58 +00:00
nickysn
db0b6adef8 + add the ports[] access to the go32v2 system unit as well
git-svn-id: trunk@39423 -
2018-07-09 16:26:52 +00:00
nickysn
62fe6cb5d3 + integrated the port access via Port[] in the i8086-msdos system unit to ease
porting TP7 code. The ports unit also remains for compatibility with code that
  has already been ported to FPC.

git-svn-id: trunk@39422 -
2018-07-09 15:40:12 +00:00
nickysn
8e6205aca6 * changed the visibility of the writeport and readport methods in the ports unit
objects to private (since they should be accessed only through the default
  indexed property)

git-svn-id: trunk@39421 -
2018-07-09 14:55:20 +00:00
nickysn
7df861487b * use include files in the unix ports unit as well
+ add portsh.inc and ports.inc for x86_64 as well

git-svn-id: trunk@39420 -
2018-07-09 14:42:01 +00:00
nickysn
3673f03841 * set the stdcall calling convention explicitly for each method, that requires
it, instead of using {$calling stdcall} in the go32v2 ports unit

git-svn-id: trunk@39402 -
2018-07-06 15:59:26 +00:00
nickysn
0ea3570b96 * moved the interface and implementation parts of the go32v2 ports unit to
include files portsh.inc and ports.inc in the i386 rtl directory

git-svn-id: trunk@39397 -
2018-07-06 15:52:18 +00:00
nickysn
5318a04a5b * moved the interface and implementation parts of the i8086-msdos ports unit to
include files portsh.inc and ports.inc in the i8086 rtl directory

git-svn-id: trunk@39396 -
2018-07-06 15:41:44 +00:00
pierre
18cc1f1709 Try to implement CheckPointer exclusion range for FreeBSD OS
git-svn-id: trunk@39394 -
2018-07-06 09:08:54 +00:00
pierre
7d96c2a368 Add --32 or --64 to GNU assembler call for i386 or x86_64 cpu
git-svn-id: trunk@39393 -
2018-07-06 09:06:19 +00:00
nickysn
5a84f21ba1 + use the new cli/sti intrinsics in go32.enable and go32.disable
git-svn-id: trunk@39389 -
2018-07-04 17:02:07 +00:00
nickysn
ff2fff365f + added x86 compiler intrinsics fpc_x86_sti and fpc_x86_cli, which generate the
'sti' and 'cli' instructions

git-svn-id: trunk@39388 -
2018-07-04 16:48:34 +00:00
nickysn
de3d14b606 + enabled the port intrinsics in the go32v2 unit ports as well
git-svn-id: trunk@39387 -
2018-07-04 16:05:58 +00:00
nickysn
25cd354f87 * updated the go32 unit port access functions to use the new x86 port access
compiler intrinsics

git-svn-id: trunk@39385 -
2018-07-04 15:47:15 +00:00
michael
844a9b0ca6 * Actually observe TStringStream.OwnsEncoding in destructor
git-svn-id: trunk@39379 -
2018-07-04 11:03:21 +00:00
nickysn
65d8836952 * updated dependencies of unit ports (objpas and x86 is no longer required on
certain platforms) and regenerated makefiles

git-svn-id: trunk@39373 -
2018-07-04 00:33:12 +00:00
nickysn
f733e0a31c + use the x86 inline intrinsics for port access in the unix ports unit as well
git-svn-id: trunk@39372 -
2018-07-04 00:17:18 +00:00
nickysn
3ed284953b * use the new x86 port access intrinsics in the x86 unit for unix
git-svn-id: trunk@39371 -
2018-07-03 23:25:18 +00:00
nickysn
2c8853f239 + added the fpc_x86_*port* intrinsics to the x86_64 system unit as well
git-svn-id: trunk@39370 -
2018-07-03 22:53:48 +00:00
nickysn
a1bf5e2f07 + also added the fpc_x86_*port* intrinsics to the i386 system unit
git-svn-id: trunk@39369 -
2018-07-03 22:42:03 +00:00
nickysn
1c9d0d445b * moved the compiler intrinsics for the i8086 'in' and 'out' instructions to the
system unit (with a 'fpc_x86_' prefix added)

git-svn-id: trunk@39368 -
2018-07-03 22:32:17 +00:00
nickysn
26a3ac3fd4 * moved the fpc_in_x86_*port* constants to the system unit in cpuinnr.inc in the
i8086, i386 and x86_64 rtl directories. This is done for consistency with
  other compiler internal function numbers (which are declared in innr.inc).

git-svn-id: trunk@39367 -
2018-07-03 21:30:43 +00:00
nickysn
f93bda6e15 + also add {$inline on} to unit ports in order to enable inlining
git-svn-id: trunk@39366 -
2018-07-03 20:37:13 +00:00
nickysn
8b55c071fa + declare the readport and writeport methods as inline in the interface part of
the ports unit, so the new inlining of in and out instructions actually works

git-svn-id: trunk@39364 -
2018-07-03 20:14:05 +00:00
svenbarth
ddb501bddf * use a TObject constraint for TFPGObjectList and TFPGObjectMap to ensure that only TObject and its descendants
are used (allows for a better error message)

git-svn-id: trunk@39363 -
2018-07-03 18:34:41 +00:00
nickysn
fdc896ad0a + inline support for the x86 'in' and 'out' instructions. Currently only enabled
in the i8086-msdos 'ports' unit, but will be enabled on other targets (e.g.
  go32v2) in the future as well. 32-bit 'in' and 'out' not inlined on i8086, but
  will be on i386 and x86_64.

git-svn-id: trunk@39362 -
2018-07-03 17:01:42 +00:00
florian
781ecf4a59 * modified patch by Bart Broersma to resolves #33932: fixes compilation error with FPC_SOFT_FPUX80 in TExtended80Rec.BuildUp
git-svn-id: trunk@39354 -
2018-07-01 12:54:30 +00:00
florian
2406bd052e * by default, TExtended80Rec.Mantissa should not return the hidden bit (the binary representation of the data type contains it always
git-svn-id: trunk@39348 -
2018-06-30 11:25:43 +00:00
michael
a9205c9fba * Fix bug ID #32837, correct Mantissa and Fraction in float helpers, patch from Bart Broersma
git-svn-id: trunk@39346 -
2018-06-29 20:51:32 +00:00
michael
58b480e0b2 * Fix bug ID #33860
git-svn-id: trunk@39330 -
2018-06-28 12:41:49 +00:00
nickysn
46b82e3208 + added the necessary changes for section based smartlinking to the msdos
startup code, behind ifdef __I8086_SMARTLINK_SECTIONS__

git-svn-id: trunk@39278 -
2018-06-22 15:42:19 +00:00
svenbarth
8536abce8a * as the management operator feature is not platform specific using a specific define for it aside from a
version check is unnecessary, thus remove the FPC_HAS_MANAGEMENT_OPERATOR define and instead check for VER3_0

git-svn-id: trunk@39257 -
2018-06-20 19:00:24 +00:00
svenbarth
4d0ab82ef7 * optimize class initialization by calling RTTIRecord() only when required for a non-trivial initialization
git-svn-id: trunk@39256 -
2018-06-20 19:00:21 +00:00
svenbarth
ac0322c323 + add a flags field to the record init RTTI which declares whether
a) the current record contains a field with non-trivial initialization
    b) and of the parents contains such a field (only relevant for objects and classes)

git-svn-id: trunk@39255 -
2018-06-20 19:00:17 +00:00
svenbarth
eb06ac8ce8 * set up $MinEnumSize and $PackSet so that it matches the compiler's settings for types added in the future
git-svn-id: trunk@39254 -
2018-06-20 19:00:14 +00:00
svenbarth
393d1c2256 * move RTTI related types from rtti.inc to rttidecl.inc
git-svn-id: trunk@39250 -
2018-06-20 19:00:03 +00:00
svenbarth
bbf578b193 * move definition of USE_PACKED from rtti.inc to rttidecl.inc
git-svn-id: trunk@39249 -
2018-06-20 19:00:00 +00:00
svenbarth
b75324a4f2 * move RTTI declarations to their own header file
git-svn-id: trunk@39248 -
2018-06-20 18:59:57 +00:00
svenbarth
44b15350fb * disable RTTI declarations if RTTI feature is disabled
git-svn-id: trunk@39247 -
2018-06-20 18:59:54 +00:00
florian
400861a907 * fixed TBits.NotBits, it is just an Xor operation, resolves #33706
git-svn-id: trunk@39243 -
2018-06-19 20:38:15 +00:00
marco
43d7b23555 * fix for #33817, also p* marshalledstring for Delphi compat.
git-svn-id: trunk@39165 -
2018-06-04 10:58:23 +00:00
florian
f03a396757 * target classic MacOS builds again
git-svn-id: trunk@39156 -
2018-05-31 19:31:36 +00:00
svenbarth
8a195c44ba + add overloads of IsInfinite() for Single and Extended (compatible with Delphi)
git-svn-id: trunk@39135 -
2018-05-28 15:36:18 +00:00
nickysn
b18602485a * fixed base segment calculation on i8086 (code moved after call to OpenDwarf,
because it needs to have e.processsegment initialized)

git-svn-id: trunk@39114 -
2018-05-25 00:52:14 +00:00
nickysn
45bcbca71b * fixed reading of DW_FORM_ref_addr on i8086
git-svn-id: trunk@39113 -
2018-05-25 00:21:53 +00:00
nickysn
2a5fbd4598 * continue reading the segment when walking the dwarf arange tuples on i8086
git-svn-id: trunk@39076 -
2018-05-20 22:51:52 +00:00
nickysn
d1cdd8be7c * do not emit padding bytes after the dwarf arange header on i8086 for
compatibility with Open Watcom (also, the dwarf spec is not very clear about
  the alignment requirements on segmented architectures, so that's why we do
  this by default, instead of putting it behind a -go debug switch)

git-svn-id: trunk@39075 -
2018-05-20 22:50:46 +00:00
nickysn
6fedf7e930 + debug dump the address size from the header in ParseCompilationUnitForFunctionName
git-svn-id: trunk@39070 -
2018-05-20 20:41:13 +00:00
nickysn
a598e17c8a * fix loading of i8086-msdos ELF when the MZ binary in front of it exceeds 64kb
git-svn-id: trunk@39069 -
2018-05-20 20:18:00 +00:00
nickysn
2955ee2dc4 + i8086-msdos implementation of exeinfo.GetModuleByAddr
git-svn-id: trunk@39068 -
2018-05-20 20:03:58 +00:00
nickysn
1d3ad2b078 + also take the segment portion of the address in lnfodwrf.ParseCompilationUnit
git-svn-id: trunk@39067 -
2018-05-20 17:20:29 +00:00
nickysn
4ce5db5188 + also check the arange segment in ParseCompilationUnitForDebugInfoOffset
git-svn-id: trunk@39066 -
2018-05-20 17:00:56 +00:00
nickysn
81d5483ab1 * subtract the process load segment from the code segment on i8086
git-svn-id: trunk@39064 -
2018-05-20 16:55:18 +00:00
nickysn
875330d84f + pass a segment (0 on non-i8086) to all ParseCompilationUnit* functions in unit
lnfodwrf

git-svn-id: trunk@39063 -
2018-05-20 16:51:49 +00:00
nickysn
d7a3f755e4 + also read arange segments on i8086
git-svn-id: trunk@39062 -
2018-05-20 16:07:28 +00:00
nickysn
3989e57fed * take into account the address size in lnfodwrf.ReadAddress on i8086; support
2-byte and 4-byte addresses

git-svn-id: trunk@39060 -
2018-05-20 15:48:58 +00:00
nickysn
a7f5a69000 + added an address size parameter to lnfodrwf.ReadAddress(); pass the expected
address size, as taken from the dwarf header structure

git-svn-id: trunk@39059 -
2018-05-20 15:43:19 +00:00
nickysn
dc8b78abe6 + debug print the arange address and segment sizes
git-svn-id: trunk@39058 -
2018-05-20 14:58:09 +00:00
nickysn
1f76f52996 * use hexstr(addr) in the dwarf backtrace function, so it displays always a good
value, according to the x86 pointer type

git-svn-id: trunk@39057 -
2018-05-20 14:42:17 +00:00
nickysn
96b53c168c * use hexstr(baseaddr) to print out the pointer value, regardless of its x86 type (near/far, etc.)
git-svn-id: trunk@39056 -
2018-05-20 14:39:28 +00:00
nickysn
abe61d0daa * the 'addr' and 'baseaddr' parameters of exeinfo.GetModuleByAddr changed to
far pointers on i8086
* the 'addr' parameter of lnfodwrf.OpenDwarf changed to codepointer

git-svn-id: trunk@39055 -
2018-05-20 14:33:17 +00:00
nickysn
443980b7ac * moved the morphos code for exeinfo.GetModuleByAddr to a separate ifdef section
git-svn-id: trunk@39054 -
2018-05-20 14:09:57 +00:00
nickysn
0ceb1244bf * changed the type of the first parameter ('addr') of lnfodwrf.GetLineInfo to
CodePtrUInt instead of PtrUInt

git-svn-id: trunk@39053 -
2018-05-20 13:41:10 +00:00
nickysn
2c000d1e74 * processaddress's type changed to word on i8086 (ptruint changes size between
memory models and we only need the offset; the segment is tracked separately)
+ introduce texefile.processsegment on i8086
* initialize processaddress and processsegment properly on i8086-msdos (for .exe
  files; .com files are not supported yet)

git-svn-id: trunk@39052 -
2018-05-20 13:19:49 +00:00
nickysn
2411cb3f24 * fix save/restore of base/index/pos on i8086
git-svn-id: trunk@39050 -
2018-05-20 12:55:22 +00:00
nickysn
0ca05f042b + parse the openwatcom dwarf extension DW_LNE_SET_SEGMENT and also track segment
data in the dwarf state machine on i8086

git-svn-id: trunk@39049 -
2018-05-20 12:43:53 +00:00
nickysn
60d49d696a * fix for ReadLEB128 on 16-bit CPUs
git-svn-id: trunk@39047 -
2018-05-20 12:06:36 +00:00
nickysn
994783db95 + introduce the TFilePos type for storing file offsets; use longint instead of
sizeint on i8086, because sizeint is 16-bit and file offsets are 32-bit there

git-svn-id: trunk@39046 -
2018-05-20 11:55:47 +00:00
svenbarth
8606293028 * assume that dynamic arrays with a negative reference count are immutable (at least regarding their metadata)
git-svn-id: trunk@39037 -
2018-05-20 11:50:06 +00:00
nickysn
c8cbb1daea * changed the sechdrofs,secstrofs and ImgOffset types to 32-bit to prevent
overflow errors on i8086 (ptruint is 16-bit in certain i8086 memory models;
  file offsets, however, still remain 32-bit)

git-svn-id: trunk@39036 -
2018-05-20 11:26:40 +00:00
nickysn
db3c88c871 + enabled compilation of unit lnfodwrf on i8086-msdos
- disabled compilation of unit lineinfo on i8086-msdos (no stabs support on this target)

git-svn-id: trunk@39035 -
2018-05-20 11:25:27 +00:00
nickysn
8364b1f4ca * changed the result of function Pos() to SizeInt (same type as the 'index'
variable it returns). Fixes the register allocation failure error when
  compiling on i8086.

git-svn-id: trunk@39033 -
2018-05-20 10:40:00 +00:00
nickysn
0d8ba2ddfa * skip the MZ exe in order to reach the ELF32 image on i8086-msdos
git-svn-id: trunk@39032 -
2018-05-20 10:11:14 +00:00
nickysn
ccf5aaeebb + enable the ELF32 reader in unit exeinfo for i8086-msdos
git-svn-id: trunk@39031 -
2018-05-20 10:01:19 +00:00
nickysn
537fbefb9e * add texeheader.ImgOffset to all file offsets when reading an ELF file. This
will be useful for reading i8086-msdos dwarf debug info, because it is
  appended after the regular dos MZ exe in an ELF32 image by the watcom linker.

git-svn-id: trunk@39030 -
2018-05-20 09:43:08 +00:00
nickysn
3bcd21663e * replaced nested ifdefs in unit exeinfo with a chain of {$if defined(...)} ...
{$elseif defined(...)}

git-svn-id: trunk@39027 -
2018-05-19 21:04:30 +00:00
svenbarth
7990b2e3f3 * apply patch from J. Gareth Moreton to implement Int() for SSE (currently only used on Win64)
+ added test

git-svn-id: trunk@38993 -
2018-05-14 21:08:04 +00:00
pierre
5f8f00dcd3 Allow to use CPU specific code for move procedure for systems using libc code with -dUSE_CPU_MOVE (allows easier testing for AIX, no effect by default)
git-svn-id: trunk@38976 -
2018-05-11 15:52:48 +00:00
pierre
7778c7d8ae Disable dcbz code for AIX also
git-svn-id: trunk@38975 -
2018-05-11 15:49:35 +00:00
pierre
dfcb34aef2 * Ansi2UnicodeMove:
- Avoid calling Utf8ToUnicode with only three parameters,
  as this is not reliable if the ansitring contains embedded #0 chars.
  Use explicit high(SizeUInt) or allocated length explicitly.
  - Change destLen type to SizeUInt.
  * UpperAnsiString, LowerAnsiString:
  Also avoid call to Utf8ToUnicode with only three parameters.
  Change type of slen and ulen local variables to SizeUInt.
  * CompareStrAnsiString:
  Fix sign of return value if l2=0 (was returning negative value)

git-svn-id: trunk@38972 -
2018-05-11 12:12:37 +00:00
pierre
26cc97745a Fix wrong starting index in CompareStrAnsiString function
git-svn-id: trunk@38963 -
2018-05-09 23:14:45 +00:00
svenbarth
abd893cac4 * fix for Mantis #33635: correctly working SSE2 based Frac() implementation by J. Gareth Moreton
+ added test

git-svn-id: trunk@38903 -
2018-05-04 15:44:40 +00:00
michael
7aa7f1b96f * Fix bug #33681
git-svn-id: trunk@38896 -
2018-05-03 07:09:05 +00:00
marco
8c854cedee * more case fixes, mantis #32832 manually done.
git-svn-id: trunk@38865 -
2018-04-29 14:05:09 +00:00
svenbarth
e3ea46d1cb * disable SSE optimized Frac() for Win64; it has a much lower supported range than the existing Pascal implementation which uses Int() (in essence Round() and Trunc() should be corrected as well)
git-svn-id: trunk@38856 -
2018-04-27 15:18:36 +00:00
Károly Balogh
c840c4d6a8 athreads: add a custom API to retrieve underlying process ID from AThreads. this makes it possible to combine some Amiga API features like Signaling with FPC's thread handling
git-svn-id: trunk@38848 -
2018-04-26 11:28:38 +00:00
michael
e4ef17b5c0 * Use SizeInt, let StartsWith/EndsWith handle #0 characters (bug ID 33559)
git-svn-id: trunk@38769 -
2018-04-14 12:06:48 +00:00
pierre
b917533a9f Fix SetFAttr function
git-svn-id: trunk@38764 -
2018-04-13 22:18:21 +00:00
pierre
d6be56e225 Regenerated Makefile's after addition of ppas and ppaslink script removal in rev 38745
git-svn-id: trunk@38750 -
2018-04-12 15:23:03 +00:00
nickysn
c7e5b3f197 * convert tabs to spaces in the go32 unit
git-svn-id: trunk@38733 -
2018-04-11 12:33:36 +00:00
florian
254aa0e9e1 * consistent naming of lData field in NEWCPLINFO
git-svn-id: trunk@38694 -
2018-04-06 09:59:22 +00:00
pierre
a69942852f Fix to avoid access of memory outside of array size if overlap is true
git-svn-id: trunk@38674 -
2018-04-03 21:02:49 +00:00
florian
add418db0e * properly define Min/Max values of Native*Int helpers, resolves #33543
git-svn-id: trunk@38664 -
2018-04-02 21:31:23 +00:00
pierre
4026644278 Add explicit registers to fcomip to allow compilation with clang (bug report 33547)
git-svn-id: trunk@38661 -
2018-04-02 17:14:42 +00:00
michael
8b19eddd13 * Remove scrollh again, Lazarus solved it another way
git-svn-id: trunk@38658 -
2018-04-01 08:19:17 +00:00
michael
616d8073f2 * Implement flushbuffer abstract method in TFiler (part 2) (bug ID 33062)
git-svn-id: trunk@38656 -
2018-04-01 07:19:34 +00:00
michael
a137486439 * Implement flushbuffer abstract method in TFiler (bug ID 33062)
git-svn-id: trunk@38655 -
2018-04-01 07:16:34 +00:00
michael
6d49a7b93f * Put Collection.Assign loop in beginupdate/endupdate (bug ID 33517)
git-svn-id: trunk@38628 -
2018-03-26 19:02:51 +00:00
michael
31a354a3bc * Fix bug #33516
git-svn-id: trunk@38627 -
2018-03-26 16:31:28 +00:00
pierre
921b406c05 Fix for webtbs/tw11006.pp and test/tbs/tb0632.pp instability.
* Add ThreadQueueLockCounter variable to
  postpone call to DoneCriticlSection to the last thread
  that decrements back the counter to zero.
  * CommonCleanup:
  Protect ThreadQueue emptying within
  a Enter/Leave-CriticalSection to avoid access y other
  threads at the same time.

git-svn-id: trunk@38626 -
2018-03-25 20:32:25 +00:00
michael
e46b89c8bb * Patch from Ondrej Pokorny to fix camelcase (bug ID 4b46872)
git-svn-id: trunk@38619 -
2018-03-24 14:39:56 +00:00
michael
16ba47be46 * Patch from Ondrej Pokorny to convert unit names to CamelCase (bug ID 33481)
git-svn-id: trunk@38616 -
2018-03-23 22:06:36 +00:00
michael
baa76163b3 * Need types in write declatations, or fpdoc chokes
git-svn-id: trunk@38612 -
2018-03-23 21:36:28 +00:00
Károly Balogh
f200f9edce netbsd: add a set of new syscalls to be used on ARM, because the recent ARM/EABI kernels doesn't seem to support the older calls
git-svn-id: trunk@38602 -
2018-03-22 23:47:55 +00:00
Károly Balogh
ff28ce84b2 netbsd: arm also needs USE_SIGACTION_SIGTRAMP
git-svn-id: trunk@38592 -
2018-03-22 01:11:33 +00:00
Károly Balogh
b06105c893 netbsd: startup code, first working version for arm
git-svn-id: trunk@38591 -
2018-03-22 01:10:37 +00:00
pierre
5cd984b0cb Use RTE 234 insterad of 233 which is for SigQuit in unimplementedunicodestring
git-svn-id: trunk@38588 -
2018-03-21 10:30:26 +00:00
michael
bf3e437dd6 * Fix bug #33475, add AddPair for Delphi compatibility, modified patch by Silvio Clecio
git-svn-id: trunk@38587 -
2018-03-21 10:30:02 +00:00
pierre
31620a9c94 Add ESigQuit Exception class and use it in exceptmap
git-svn-id: trunk@38586 -
2018-03-21 10:28:33 +00:00
pierre
250e924ad3 + Add RTE 236 for thread errors:
inc/systemh.inc and java/jsystemh.inc:
    + Add reThreadError (and also reNoDynLibsSupport) to TRuntimeError.
    * Add new values to RuntimeErrorExitCodes after extension of TRuntimeError
  inc/system.inc and java/jsystem.inc:
    * use RTE 236 in fpc_threaderror.
  objpas/sysconst.pp and objpas/sysutils/stre.inc:
    + Add SThreadError string constant.
  objpas/sysutils/sysutilh.inc:
    + Add EThreadError class.
  objpas/sysutils/sysutils.inc
    + Add 236 to EThreadError conversion to exeptmap.

git-svn-id: trunk@38584 -
2018-03-21 10:19:04 +00:00
florian
71e71ad267 * fix currency division on non x86 32 bit targets
* disable fix for #33439 during bootstrapping with 3.0.x, as 3.0.x cannot compile the currency division without the fix above

git-svn-id: trunk@38558 -
2018-03-17 22:44:44 +00:00
michael
a877616dd5 * Fix bug #33441 (patch from Silvio Clécio)
git-svn-id: trunk@38539 -
2018-03-17 00:01:51 +00:00
Károly Balogh
604829bdfd netbsd: support syscall offsetting for EABI. primarily to support NetBSD on ARM EABI
git-svn-id: trunk@38529 -
2018-03-15 13:44:12 +00:00
Károly Balogh
3a78ff1ee4 m68k: on setjmp/longjmp also save/restore the FPCR register when FPU support is enabled
git-svn-id: trunk@38522 -
2018-03-13 23:44:54 +00:00
pierre
af5d27e083 Fix compilation wtih range check: STD_INPUT_HANDLE must be a DWORD
git-svn-id: trunk@38460 -
2018-03-08 17:41:11 +00:00
Károly Balogh
77b97abe61 arm-netbsd: regenerated the required Makefiles
git-svn-id: trunk@38413 -
2018-03-05 15:44:49 +00:00
Károly Balogh
dbb91b5ef0 arm-netbsd: added platform define and dummy rtl files so the build passes for this platform. port not functional yet
git-svn-id: trunk@38412 -
2018-03-05 15:38:46 +00:00
florian
b24eb3cce7 * x86_64-linux uses now pascal init code
git-svn-id: trunk@38409 -
2018-03-04 18:22:04 +00:00
florian
c230f81719 + support for <dyn. array>+<dyn. array>, resolves #30463
git-svn-id: trunk@38406 -
2018-03-04 16:12:43 +00:00
florian
05a92d55e4 * partly reverted #38320, the code was correct
git-svn-id: trunk@38402 -
2018-03-03 16:41:52 +00:00
florian
c6af4e42c0 * ensure that the stack is aligned after haltproc, should resolve #33311
git-svn-id: trunk@38400 -
2018-03-03 16:14:51 +00:00
marcus
ae184f4665 Amicommon: Implemented GetTempDir() for all Amiga systems ('T:' as default)
git-svn-id: trunk@38393 -
2018-03-01 18:04:40 +00:00
florian
8a2cf56d51 * fixed operator mod for floats as proposed by wp in #33167, resolves #33167
git-svn-id: trunk@38332 -
2018-02-24 18:23:06 +00:00
michael
ccbaf748b8 * Fix bug ID #33133 (use newer Windows API if available)
git-svn-id: trunk@38328 -
2018-02-24 12:18:55 +00:00
michael
77caa28bab * Fix bug #33204
git-svn-id: trunk@38327 -
2018-02-24 11:12:11 +00:00
florian
92776e1864 * keep stack aligned when using profiler stubs
git-svn-id: trunk@38320 -
2018-02-23 19:35:20 +00:00
Károly Balogh
2968ce41e1 aros: do not specify dos as an explicity dependency for extpas. depend on buildrtl instead.
git-svn-id: trunk@38313 -
2018-02-22 12:25:04 +00:00
Károly Balogh
f731f33fea morphos: do not specify dos as an explicity dependency for extpas. depend on buildrtl instead.
git-svn-id: trunk@38312 -
2018-02-22 12:19:27 +00:00
Károly Balogh
a0975a70dd amiga: do not specify dos as an explicity dependency for extpas. depend on buildrtl instead.
git-svn-id: trunk@38311 -
2018-02-22 12:15:41 +00:00
Károly Balogh
467349c5ee atari: do not reference DOS unit explicitly as a dependency. it's now built by buildrtl. add an rtl.cfg for easy features override
git-svn-id: trunk@38310 -
2018-02-22 12:09:44 +00:00
florian
be158cec7a * reset I/O result before and after the implicit close calls in ISO pascal mode,
this avoids further I/O operations to be carried out, resolves issue #32743

git-svn-id: trunk@38301 -
2018-02-20 21:30:30 +00:00
florian
055a49b202 * patch by Christo Crause: the subarch type for atmega 8, 8A, 16 & 32 was incorrect. Atmega8A was also listed under the wrong subarch type in the makefile, also fixed.
* atmega8a needs to use rjmp now

git-svn-id: trunk@38282 -
2018-02-18 10:54:59 +00:00
florian
4d63945b8d + handle also STATUS_FLOAT_MULTIPLE_FAULTS, resolves #32822
git-svn-id: trunk@38269 -
2018-02-17 16:16:16 +00:00
florian
b421ed0db1 * fixed TranslateMxcsr
+ correctly handle sse exceptions on i386, resolves #32671
+ test

git-svn-id: trunk@38268 -
2018-02-17 15:40:49 +00:00
marco
14b14f3bda * fixes sysctl also with 3.0.4 as starting compiler.
M    rtl/bsd/sysctl.pp
M    compiler/systems.pas

git-svn-id: trunk@38250 -
2018-02-16 17:58:20 +00:00
svenbarth
c87cee09fd * use the type information *parameter* not the unitialized parameter
git-svn-id: trunk@38234 -
2018-02-13 19:26:21 +00:00
Károly Balogh
c1f368f8d9 rtl: removed the long obsolete README section mentioning FPC 1.0
git-svn-id: trunk@38220 -
2018-02-12 10:58:54 +00:00
florian
6726150147 + embedded uses also FPC_STDOUT_TRUE_ALIAS to save memory
git-svn-id: trunk@38212 -
2018-02-11 19:06:46 +00:00
florian
c63c3e99c7 * load environment on msdos if parameters are loaded, so paramstr(0) is loaded as well
git-svn-id: trunk@38205 -
2018-02-11 17:49:17 +00:00
florian
22df9cde3e * halt and runerror never return
git-svn-id: trunk@38202 -
2018-02-11 10:21:16 +00:00
Károly Balogh
3d16d38f10 atari: enable FPC_STDOUT_TRUE_ALIAS and groom some of the other defines
git-svn-id: trunk@38198 -
2018-02-10 23:01:54 +00:00
Károly Balogh
444d032607 msdos: enable FPC_STDOUT_TRUE_ALIAS by default
git-svn-id: trunk@38197 -
2018-02-10 22:46:48 +00:00
Károly Balogh
07513150e0 * make StdOut/StdErr optionally a true alias of Output/ErrOutput, so they share the same underlying TextRec. this reduces data segment usage on small systems by more than 1K.
git-svn-id: trunk@38196 -
2018-02-10 22:45:51 +00:00
florian
961f7fd25b * msdos target uses already non 8.3 file names, so it makes no sense to get in trouble by using rtlconst instead of rtlconsts
git-svn-id: trunk@38194 -
2018-02-10 22:20:02 +00:00
florian
37c987c3ea * dependencies fixed
git-svn-id: trunk@38193 -
2018-02-10 22:20:00 +00:00
marco
19b47e54bb * win32/64 stdio handles don't have fixed numbers, remove very old check
on handle <=4. Mantis #27221, by Anton Rzheshevski

git-svn-id: trunk@38189 -
2018-02-10 13:53:20 +00:00
svenbarth
640480272f * adjust TThread.Synchronize so that it also works correctly if the passed in thread instance is not the instance of the current thread
+ added test

git-svn-id: trunk@38124 -
2018-02-05 21:50:00 +00:00
svenbarth
2d52536460 * only check for the method if one is given at all (otherwise everything would be skipped)
git-svn-id: trunk@38115 -
2018-02-04 20:20:32 +00:00
michael
94b6fe6ad3 * added O_CLOEXEC
git-svn-id: trunk@38100 -
2018-02-02 10:33:13 +00:00
florian
7d1d91e9cc * compile math (and sysutils as a a dependency) unit on m68k-embedded, resolves #33068
* some more features having only minimal impact on memory requiremets and needed for math/sysutils enabled on m68k-embedded

git-svn-id: trunk@38092 -
2018-01-31 20:57:07 +00:00
svenbarth
9240e0c2e6 * fix 32-bit * 32-bit => 64-bit for Coldfire
git-svn-id: trunk@38060 -
2018-01-27 14:26:18 +00:00
svenbarth
8522474457 * correctly allocate the space for the 5 registers that are stored
git-svn-id: trunk@38054 -
2018-01-26 21:48:07 +00:00
svenbarth
ea193bc993 * enable explicit Pointer overloads of Interlocked* functions for M68k as that has a calling convention where the passing of Pointer values differs from ordinal values (address vs. int registers). Fixes e.g. usage of the Classes unit
git-svn-id: trunk@38053 -
2018-01-26 21:37:58 +00:00
svenbarth
e09ec0e36b + add ability to have explicitely implemented Pointer overloads of the Interlocked* routines instead of forwarding them to the ones with suitable size.
git-svn-id: trunk@38052 -
2018-01-26 21:36:35 +00:00
svenbarth
bd57af5b19 * as Coldfire does not support ADD.W save the (original) lower word and restore it after D0 is swapped back (I hope the algorithm still works then O.o)
git-svn-id: trunk@38044 -
2018-01-25 20:02:16 +00:00
svenbarth
b7cdec3a2a * Coldfire does not support EXG, so do it the old fashioned way (but before restoring the stored registers)
git-svn-id: trunk@38043 -
2018-01-25 19:59:50 +00:00
svenbarth
9822374680 * Coldfire does not support MOVEM together with pre-decrement or post-increment, so abuse TST for that which is only a single instruction word
git-svn-id: trunk@38042 -
2018-01-25 19:58:59 +00:00
svenbarth
00141749d5 * Coldfire does not support sub.w, so use sub.l instead for that CPU
git-svn-id: trunk@38041 -
2018-01-25 19:56:28 +00:00
michael
56fae4697a * Accidentally removed keyword virtual from loadfromfile
git-svn-id: trunk@37966 -
2018-01-14 11:52:13 +00:00
michael
cbc50c5fe6 * Restore signature of loadfromstream/loadfromfile, make default delphi compatible
git-svn-id: trunk@37965 -
2018-01-14 10:11:56 +00:00
michael
5c1df42fa4 * Fix bug #32871
git-svn-id: trunk@37962 -
2018-01-13 18:21:44 +00:00
michael
f6a08a2c74 * Patch from Ondrej Pokorny to allow correct nodefault/stored for strings
git-svn-id: trunk@37954 -
2018-01-13 10:22:16 +00:00
marco
af85960d62 * East Asian locales era patch from Mantis #33003
git-svn-id: trunk@37944 -
2018-01-11 10:29:32 +00:00
maciej-izak
8aaa3c0fd5 + added additional OpaquePointer type for the system unit (mantis #32977).
git-svn-id: trunk@37942 -
2018-01-09 21:45:03 +00:00
maciej-izak
f719f81c06 + added new types for the system unit: opaque data type (TOpaqueData) and related opaque pointer (POpaqueData) (mantis #32977)
git-svn-id: trunk@37940 -
2018-01-09 21:18:26 +00:00
Károly Balogh
7c3702d3b0 palmos: make it easy to disable certain features, also disable some which are not needed now. hello, world! is about 6K with these settings, about 5K smaller than otherwise
git-svn-id: trunk@37937 -
2018-01-09 15:17:10 +00:00
Károly Balogh
d03e0d3bfb palmos: bail out earlier when we're not in NormalLaunch mode, should fix Fatal Exception crash when installing the app on a real device using HotSync
git-svn-id: trunk@37931 -
2018-01-07 16:17:00 +00:00
pierre
bdd3b4e695 * Move rtl.cfg content to system.cfg
+ New rtl.cfg containg non-feature options of former file (i8086 only)
  * Use system.cfg for system unit compilation
  + add @rtl.cfg option for i8086 CPU

git-svn-id: trunk@37920 -
2018-01-06 12:27:28 +00:00
florian
273045c295 * use the first element of the filrec._private array to track eof for typed files in iso mode (this will not hurt as iso mode does not specify the _private field), resolves #32938
git-svn-id: trunk@37915 -
2018-01-05 22:10:39 +00:00
pierre
2130c43685 Add @rtl.cfg to FPC_SYSTEM_OPT to cope with new restriction for -Sf option
git-svn-id: trunk@37907 -
2018-01-04 16:35:55 +00:00
pierre
3e92219f21 Add RESOURCES to the list of features iin rtl.cfg
git-svn-id: trunk@37906 -
2018-01-04 16:35:12 +00:00
Károly Balogh
a371b39ee9 palmos: updated the RTL readme
git-svn-id: trunk@37902 -
2018-01-04 09:02:19 +00:00
Károly Balogh
d2f051be8f palmos: include the new startup code in the build
git-svn-id: trunk@37901 -
2018-01-04 08:44:56 +00:00
Károly Balogh
b8474bab0d palmos: fixed startup code to properly relocate the data segment when requested by the OS
git-svn-id: trunk@37893 -
2018-01-04 07:34:00 +00:00
pierre
595938637e Add explicit FPC_SYSTEM_OPT variable that is only used for compilation of system units, thus allowing to explicitly pass -Sf option
git-svn-id: trunk@37890 -
2018-01-02 16:50:58 +00:00
marco
d385546d71 * CB_GETCOMBOBOXINFO from patch mantis #32890
git-svn-id: trunk@37884 -
2017-12-30 22:06:49 +00:00
florian
d315d3cc96 * after r34939, it was not taken care of the extra storage needed for the size field, fixed, should fix #32875
git-svn-id: trunk@37883 -
2017-12-30 16:38:13 +00:00
marco
acf6fde3cf * fix widestringreplace, shared routine missed some *sizeof(srchar) here and there.
patch from Cyrax, Mantis #32649

git-svn-id: trunk@37882 -
2017-12-30 15:51:53 +00:00
Károly Balogh
888e59d34d amiga: added some code to compile the Amiga RTL with tinyheap. will be useful for Kickstart 1.3 and better very-low-end systems support. disabled by default. also added ifdefs around DynLibs support
git-svn-id: trunk@37879 -
2017-12-30 06:57:15 +00:00
Károly Balogh
8dd14b92a2 objcbase: as discussed on the mailing list - still allow a dummy version to be built. this allows darwin to be built without objectivec feature
git-svn-id: trunk@37875 -
2017-12-30 05:01:29 +00:00
marco
b20dd5cdbb * fpslist.deleterange mantis #32807
git-svn-id: trunk@37871 -
2017-12-29 18:05:13 +00:00
Jeppe Johansen
4a169e6b1a Changed subarch of at90pwm161
git-svn-id: trunk@37858 -
2017-12-29 11:30:35 +00:00
michael
e160d4c530 * Fix bug ID #32889, handle ReadInterfaceRaw in TReader
git-svn-id: trunk@37856 -
2017-12-29 10:54:14 +00:00
michael
5e40444272 * Free component on error (bug ID 32626)
git-svn-id: trunk@37851 -
2017-12-29 09:37:57 +00:00
Károly Balogh
07ac64bf09 * no longer allow to compile objcbase without the objc1 feature enabled.
git-svn-id: trunk@37847 -
2017-12-28 19:03:53 +00:00
florian
16738aa458 * fix feature handling, resolves #32892
git-svn-id: trunk@37846 -
2017-12-28 15:58:37 +00:00
florian
5bedaf11f4 * fpcmake.inc and Makefiles renerated after last commit
git-svn-id: trunk@37834 -
2017-12-27 15:08:18 +00:00
Károly Balogh
5cbdf4d30c atari: moved the target to use tinyheap, and various cleanups
git-svn-id: trunk@37827 -
2017-12-27 02:57:25 +00:00
Károly Balogh
c054117870 m68k: an assembly optimized longint to int64 implementation. removed the sarint64 helper from here
git-svn-id: trunk@37825 -
2017-12-26 22:41:06 +00:00
Károly Balogh
8326543918 m68k: apparently, the right place for the sar qword helper is still in the CPU include, not the 64bit helper include. this fixes linux m68k build.
git-svn-id: trunk@37820 -
2017-12-26 18:05:34 +00:00
Károly Balogh
7659b347cd m68k: assembly optimized helper for the SarInt64 intrinsic
git-svn-id: trunk@37819 -
2017-12-26 16:34:01 +00:00
florian
a207dfbb6b * pass feature switches only to the compiler when compiling the system unit, resolves #32809
git-svn-id: trunk@37810 -
2017-12-25 21:54:51 +00:00
florian
82f452bb7c * declare pointers to variants only if the variant feature is available
git-svn-id: trunk@37809 -
2017-12-25 21:20:05 +00:00
michael
fb7d2d9ebd * Patch from Anton Shepelev to fix variance and standard deviation calculation (bug ID 32804)
git-svn-id: trunk@37791 -
2017-12-24 10:02:02 +00:00
pierre
29b52824cf Try to fix TRect problem for wince
git-svn-id: trunk@37783 -
2017-12-22 11:50:59 +00:00
pierre
ec45d8617c Fix wince rtl compilation (fix for bug report 32859)
git-svn-id: trunk@37778 -
2017-12-21 17:45:20 +00:00
marco
f9364648c1 * some update to filechange attributes by Pascal Riekenberg, mantis #32833
git-svn-id: trunk@37774 -
2017-12-21 14:22:36 +00:00
marco
615b50fadf * change trect.contains(tpoint) to not have bottom and right borders inclusive.
Mantis #32861.  trect.contains(trect) still pending

git-svn-id: trunk@37773 -
2017-12-21 11:25:46 +00:00
nickysn
29f307589e + added an i8086-specific procedure MoveData, that allows moving of far data,
regardless of the memory model; procedure interface is the same as a similar
  Turbo C (and DJGPP) function

git-svn-id: trunk@37741 -
2017-12-15 21:47:21 +00:00