Commit Graph

51597 Commits

Author SHA1 Message Date
svenbarth
677c35c083 * better fix for detecting Comp's type
git-svn-id: trunk@36879 -
2017-08-12 09:00:06 +00:00
svenbarth
ff927eb11a * fix test due to WideString = UnicodeString and Comp = Extended on some platforms
git-svn-id: trunk@36878 -
2017-08-12 08:56:10 +00:00
Károly Balogh
e3ffeed1b2 m68k: removed traces of the never obsolete/ancient openbsd-m68k and never existed freebsd-m68k ports
git-svn-id: trunk@36877 -
2017-08-12 08:52:44 +00:00
svenbarth
187ebc6821 * adjust/update guard against older compiler versions
git-svn-id: trunk@36876 -
2017-08-12 08:17:07 +00:00
svenbarth
0b02dab684 + new Delphi-compatible intrinsic GetTypeKind() which returns the TTypeKind of a type as a constant value (and thus can be optimized away in If- and Case-statements)
+ added test

git-svn-id: trunk@36875 -
2017-08-11 22:12:53 +00:00
svenbarth
7e692fac2b + new utility function get_typekind() to retrieve the TTypeKind value of a def
git-svn-id: trunk@36874 -
2017-08-11 22:02:22 +00:00
svenbarth
8b5461367b * move TTypeKind from TypInfo unit to System unit as it's necessary for the future GetTypeKind() intrinsic
* also adjust (P)Byte usages to (P/T)TypeKind where necessary/approbiate

git-svn-id: trunk@36873 -
2017-08-11 20:37:36 +00:00
svenbarth
5deca8ed7b * copy and include rttih.inc (even though the functions are not available currently)
git-svn-id: trunk@36872 -
2017-08-11 20:28:51 +00:00
svenbarth
2095cca98f * ensure that source info is set correctly on Win64 by including i_win for all Windows targets (this is especially important when cross compiling (e.g. Java) as otherwise the utilities won't be found correctly)
git-svn-id: trunk@36871 -
2017-08-11 20:27:43 +00:00
pierre
6a416a6aa1 use --32/--64 for Darwin GNU assembler calls
git-svn-id: trunk@36870 -
2017-08-11 16:04:40 +00:00
pierre
2ccf7682b5 Fix RTL compilation of wii OS (with -Sfresources only)
git-svn-id: trunk@36869 -
2017-08-11 15:44:07 +00:00
Károly Balogh
a1c879d093 * some tabs-to-spaces and whitespace cleanup. no functional changes
git-svn-id: trunk@36868 -
2017-08-10 11:10:45 +00:00
nickysn
3c96090d3c + optimized avr code generation for shr by shiftcount=size*8-1 and sar by
shiftcount>=size*8-1. This is commonly used by code, that extracts the sign
  bit and improves code generation for signed division by power-of-2 as well.
  This also fixes building avr-embedded (mantis #32241), which was caused by an
  infinite loop in the register allocator, when regvars are enabled, due to too
  much register pressure, when building charset.pp after r36842.

git-svn-id: trunk@36867 -
2017-08-09 15:53:06 +00:00
nickysn
1476b5168d + added F_PL and F_MI to TResFlags for avr. This allows generating the BRPL and
BRMI instructions via a_jmp_cond

git-svn-id: trunk@36866 -
2017-08-09 15:14:33 +00:00
pierre
225c4f33e9 Use old -m68020 architecture option for m68k-palmos assembler (version 2.14 from PRC tools)
git-svn-id: trunk@36865 -
2017-08-09 13:37:17 +00:00
pierre
d5b314ca52 Fix EMX rtl compilation
git-svn-id: trunk@36864 -
2017-08-08 22:36:16 +00:00
Károly Balogh
fed07e6643 m68k-palmos: yet another broken-over-a-decade platform build fixed
git-svn-id: trunk@36863 -
2017-08-08 19:10:27 +00:00
Károly Balogh
5f2dce07d3 m68k-palmos: skeleton for a recent system unit
git-svn-id: trunk@36862 -
2017-08-08 19:09:23 +00:00
pierre
4c7b73d48d Adjust string size for CpuTxt and Targets string arrays
git-svn-id: trunk@36861 -
2017-08-08 18:17:20 +00:00
pierre
90e846a470 Obsolete system_i386_qnx and remove last references to system_i386_qnx
git-svn-id: trunk@36860 -
2017-08-08 18:00:02 +00:00
Károly Balogh
914ac30919 netbsd/powerpc: made it to build at least. resulting executables probably still crash & burn
git-svn-id: trunk@36859 -
2017-08-08 14:31:57 +00:00
marco
d98065d706 * change external name of wait to wait instead of waitpid. Reported
by Toshihiko Okuhara, mantis #32288

git-svn-id: trunk@36858 -
2017-08-08 10:56:54 +00:00
pierre
b74c805c49 Fix singlezipinstall for systems that set NoNativeBinaries to 1
git-svn-id: trunk@36857 -
2017-08-07 16:14:09 +00:00
pierre
527d2dea4f Set EXEEXT to SRCEXEEXT if NoNativeBinaries is set (allow snapshot of jvm-java on linux)
git-svn-id: trunk@36856 -
2017-08-07 10:35:07 +00:00
pierre
5718fba573 Partial fix for symbian rtl Makefile problems
git-svn-id: trunk@36855 -
2017-08-07 08:46:06 +00:00
pierre
82aa8c4d2f Use REPE prefix instead of REP before CMPS{B,W,L} instruction (wasm generates an error for REP)
git-svn-id: trunk@36854 -
2017-08-05 19:50:18 +00:00
joost
fd8072e525 * When available, try to negotiate a TLS connection, if not available, use the deprecated way (sslv23)
git-svn-id: trunk@36853 -
2017-08-04 22:51:09 +00:00
joost
84635bcffa * Added OpenSSL's SslTLSMethod
git-svn-id: trunk@36852 -
2017-08-04 22:45:04 +00:00
joost
4d2d45da0b * When InitContext fails, TSSLSocketHandler.Connect should return false.
git-svn-id: trunk@36851 -
2017-08-04 21:40:27 +00:00
pierre
c98e9b230f Some watcom assembler wasm improvements
git-svn-id: trunk@36850 -
2017-08-04 21:15:10 +00:00
pierre
38704411b2 Define conditional FASTMOVE_DISABLE_SSE3 to discard SSE specific code, needed for Watcom Assembler support
git-svn-id: trunk@36849 -
2017-08-04 20:53:09 +00:00
pierre
f4ecf87a50 Add conditional FASTMOVE_DISABLE_SSE3 to be able to discard SSE specific code, needed for Watcom Assembler support
git-svn-id: trunk@36848 -
2017-08-04 20:51:58 +00:00
nickysn
ee79ff3635 * improved the optimization of signed modulus by power-of-2, so it uses less
operations. Previously generated code:
    sign:=sar(left,sizeof(left)*8-1);
    result:=((((left xor sign)-sign) and right) xor sign)-sign;
  New code:
    mask:=sar(left,sizeof(left)*8-1) and ((1 shl power)-1);
    result:=((left+mask) and right)-mask;

git-svn-id: trunk@36847 -
2017-08-04 16:20:50 +00:00
svenbarth
8ffc035a86 * inline for simple methods
git-svn-id: trunk@36846 -
2017-08-04 15:51:08 +00:00
nickysn
a1928859b3 * in the optimization of signed division by power-of-2 constant in
tmoddivnode.firstoptimize, replaced tordconstnode(right).value-1 with
  tcgint((qword(1) shl power)-1), so that it becomes independent from the sign
  of right, so that in the future, we can also apply this optimization for
  negative power-of-2 divisors as well (only a unary minus node would have to
  be inserted in this case).

git-svn-id: trunk@36845 -
2017-08-04 15:50:33 +00:00
pierre
42bfa3967c Fix compilation of sysutils unit
git-svn-id: trunk@36844 -
2017-08-04 15:10:05 +00:00
pierre
ee4956be40 Define FPC_ANSI_TEXTFILEREC for watcom OS
git-svn-id: trunk@36843 -
2017-08-04 14:58:58 +00:00
nickysn
277026ffd4 * perform the high level signed division by power-of-2 optimization for all
int types, larger than the ALU of the CPU, instead of just for 64-bit ints on
  32-bit or smaller CPUs.

git-svn-id: trunk@36842 -
2017-08-04 14:34:42 +00:00
pierre
afab9524f2 Add missing SharedSuffix constant to system unit
git-svn-id: trunk@36841 -
2017-08-04 14:17:28 +00:00
pierre
a07d649343 Fix compilation of sysutils unit for netware
git-svn-id: trunk@36840 -
2017-08-04 14:13:39 +00:00
nickysn
b9fdca6f49 + better high level optimization for 64-bit signed division by 2 on 32-bit and
lower CPUs. Instead of the (sar(temp,sizeof(temp)*8-1) and 1) expression, use
  the equivalent, but simpler (temp shr (sizeof(temp)*8-1))

git-svn-id: trunk@36839 -
2017-08-04 13:51:51 +00:00
pierre
1aab7e7ee2 Fix compilation of netware system unit
git-svn-id: trunk@36838 -
2017-08-04 13:51:07 +00:00
svenbarth
c9be061921 * put test files that are outside of the tests directory into a "root" subdirectory of tests
git-svn-id: trunk@36837 -
2017-08-04 13:49:02 +00:00
pierre
5dec40d089 Add more CPU options to embedded/rtl.cfg
git-svn-id: trunk@36836 -
2017-08-04 13:38:07 +00:00
pierre
987dd2754c Add explicit object file name (required when using linux wasm executable, for which default object extension is .o not .obj
git-svn-id: trunk@36835 -
2017-08-04 13:26:17 +00:00
pierre
4626db1814 Adapt to DoDirSeparators declaration change
git-svn-id: trunk@36834 -
2017-08-04 13:25:16 +00:00
pierre
d7cdbcd71e m68k CPU also needs -SfSOFTFPU option
git-svn-id: trunk@36833 -
2017-08-04 13:09:37 +00:00
pierre
7966957ec9 Add configuration options for i8086 and m68k CPUs
git-svn-id: trunk@36832 -
2017-08-04 12:56:15 +00:00
pierre
db00b1e554 Fix two obvious compilation errors
git-svn-id: trunk@36831 -
2017-08-04 12:26:24 +00:00
pierre
a1b956f778 Remove erroneous directory prefixes for PPU files in dependencies
git-svn-id: trunk@36830 -
2017-08-04 12:18:35 +00:00