nickysn
db7b743139
* yet another longint replaced with objpasint in fpc_shortstr_compare_equal
...
git-svn-id: trunk@32098 -
2015-10-19 16:53:40 +00:00
nickysn
b561b3c2ba
* use objpasint (generates better code on 16-bit and 8-bit cpus) instead of
...
longint in several generic shortstr helpers
git-svn-id: trunk@32097 -
2015-10-19 16:36:12 +00:00
pierre
854d04bb46
Fix missing aarch64 CPU in ShowHistory for one test
...
git-svn-id: trunk@32096 -
2015-10-19 14:47:50 +00:00
yury
325a79b81b
* tinterlockedmt test: Another fix to improve threads synchronization. Should fix slow execution on some systems.
...
git-svn-id: trunk@32095 -
2015-10-19 11:34:52 +00:00
pierre
89f5b65bbf
New aarch64-linux gcc compiled objects generated on GCC Compile Farm gcc115 machine
...
git-svn-id: trunk@32094 -
2015-10-19 10:40:35 +00:00
blikblum
9aa6ea2255
Implement OnFilterRecord
...
git-svn-id: trunk@32093 -
2015-10-18 18:53:47 +00:00
sergei
72f60de3c4
* Added two test cases from Mantis #28584 . The issue itself has been fixed with r31475 and r31582.
...
git-svn-id: trunk@32092 -
2015-10-18 14:48:36 +00:00
yury
3344188f3e
* tinterlockedmt: Minor improvement.
...
git-svn-id: trunk@32091 -
2015-10-18 12:41:35 +00:00
Jeppe Johansen
14020b044c
Fix bug in gen_load_cgpara_loc for 64bit registers on 8bit architectures.
...
Added a workaround in a_load_const_reg to allow compilation for AVR.
git-svn-id: trunk@32090 -
2015-10-18 11:36:58 +00:00
yury
3fcbb7d2d4
* tinterlockedmt: Fix race conditions in the InterLockedCompareExchange test.
...
git-svn-id: trunk@32089 -
2015-10-18 11:07:29 +00:00
Jeppe Johansen
1a285a7d24
Fixed an off-by-one error in a_load_const_cgpara which caused some problems.
...
Added some minor CG optimizations.
git-svn-id: trunk@32088 -
2015-10-18 11:03:57 +00:00
sergei
be6bcb71dc
* Fixed test on 64-bit targets, was always using i386 code due to incorrect CPU selection symbol (must be "cpux86_64", not "x86_64").
...
git-svn-id: trunk@32087 -
2015-10-18 10:02:21 +00:00
Jeppe Johansen
7fc3ed2644
Fix a broken OpCp2Op optimization. It needed the added NR_DEFAULTFLAGS allocation to not break subsequent optimizations.
...
Updated the code for a_load_const_cgpara in case it needed stack parameters. This was completely broken before. Now it should allow things to compile at least.
git-svn-id: trunk@32086 -
2015-10-17 23:29:15 +00:00
yury
9193954d1c
* pas2jni: Detect the default units path.
...
git-svn-id: trunk@32084 -
2015-10-17 20:36:29 +00:00
yury
ab4c8623ec
* pas2jni: Fixed reading of the ppudump's output in some cases.
...
git-svn-id: trunk@32083 -
2015-10-17 18:40:21 +00:00
joost
3ec197480b
* Re-generated Makefile for r32081
...
git-svn-id: trunk@32082 -
2015-10-17 18:03:20 +00:00
joost
a0d1296d2a
* Re-created Makefile.fpc for libmicrohttpd with standard template
...
git-svn-id: trunk@32081 -
2015-10-17 18:01:09 +00:00
yury
36622eaba9
* arm-android: Compile for ARMv5T by default to be compatible with all versions of Android.
...
git-svn-id: trunk@32078 -
2015-10-17 16:27:53 +00:00
yury
2dafb8d674
* arm-android: Use kuser_memory_barrier by default.
...
git-svn-id: trunk@32077 -
2015-10-17 16:07:04 +00:00
yury
44777f3797
* Use ThreadSwitch.
...
git-svn-id: trunk@32076 -
2015-10-17 16:03:18 +00:00
yury
c9a0c5e7a6
* arm: Support for the kuser_memory_barrier kernel function for memory barriers.
...
git-svn-id: trunk@32075 -
2015-10-17 15:40:05 +00:00
joost
55f47e0efc
* Added missing include file to fpmake.pp
...
git-svn-id: trunk@32074 -
2015-10-17 15:05:27 +00:00
yury
e3d06cdba7
+ Stress test for Interlocked* functions using multiple threads.
...
git-svn-id: trunk@32073 -
2015-10-17 14:48:04 +00:00
yury
0d9d730efe
* arm-android: Use kuser_cmpxchg for Interlocked* functions when RTL is compiled for the ARMv5t CPU.
...
git-svn-id: trunk@32072 -
2015-10-17 14:38:17 +00:00
joost
57204b2404
* Fixed fppkg --config-file option
...
git-svn-id: trunk@32071 -
2015-10-17 13:39:29 +00:00
Jeppe Johansen
4c8fc04a24
Fix a bunch of alignment problems for arm-embedded, mostly armv6m which uses the generic Move and FIllChar routines.
...
git-svn-id: trunk@32070 -
2015-10-17 12:11:32 +00:00
joost
56c9903c0c
* Fixed compilation of libmicrohttpd on Linux
...
git-svn-id: trunk@32069 -
2015-10-17 09:37:35 +00:00
michael
5a13124fec
* Fix dependency on rtl-extra for windows
...
git-svn-id: trunk@32068 -
2015-10-17 09:02:22 +00:00
michael
de800d14cb
* Added libmicrohttpd, from Silvio Clecio.
...
git-svn-id: trunk@32067 -
2015-10-17 08:13:58 +00:00
Jonas Maebe
1294dc1ede
* when inserting a non-empty ansistring into an empty ansistring, the
...
destination must get the code page of the source (mantis #28850 )
git-svn-id: trunk@32066 -
2015-10-16 19:15:40 +00:00
Jonas Maebe
b2144d1da0
* give an internalerror if we try to write a tdef that doesn't belong to any
...
symtable to a ppufile
git-svn-id: trunk@32065 -
2015-10-16 19:15:37 +00:00
Jonas Maebe
9b310ea9b4
* simplified tx86pointerdef.createx86
...
git-svn-id: trunk@32064 -
2015-10-16 19:15:34 +00:00
Károly Balogh
c81290bc94
fix InterlockedCompareExchange on ARM-Linux: kuser_cmpxchg destroys r3, which needs to be restored, if we have to loop
...
git-svn-id: trunk@32063 -
2015-10-16 18:53:35 +00:00
nickysn
7e6ba9db2a
* do an even better optimization (swap registers in the result, saving 2 mov
...
instructions) on i8086 for 64-bit shl/shr with a constant in the range 32..47
git-svn-id: trunk@32062 -
2015-10-15 21:13:28 +00:00
nickysn
ff5eed1c00
* user xor reg,reg to zero out registers in the i8086 optimized 64-bit shl code
...
git-svn-id: trunk@32061 -
2015-10-15 21:02:53 +00:00
nickysn
6ece867305
* in the i8086 64-bit shl code, use jcxz instead of test cx,cx+jz when
...
optimization target is 386 or earlier (or when optimizing for size)
git-svn-id: trunk@32060 -
2015-10-15 20:51:20 +00:00
nickysn
dc92c3eb09
+ i8086 optimization for the code generated for 64-bit shl/shr with a constant in the range 32..47
...
git-svn-id: trunk@32059 -
2015-10-15 15:59:27 +00:00
nickysn
44f6f607c5
* optimized the generated code on i8086 for 64-bit shl/shr with constant >=48
...
git-svn-id: trunk@32058 -
2015-10-15 15:15:11 +00:00
nickysn
457107d165
* check UseIncDec before generating an INC instruction in tx86addnode.emit_generic_code
...
git-svn-id: trunk@32057 -
2015-10-15 13:11:47 +00:00
Jonas Maebe
d80e318945
* adapted ppudump to the changes in r32031
...
git-svn-id: trunk@32056 -
2015-10-14 16:44:05 +00:00
Jonas Maebe
231039b224
* since T(Tag)HashSet always forces the size to a power of 2, use "and"
...
rather than "mod" to select the hash bucket
git-svn-id: trunk@32055 -
2015-10-14 16:44:02 +00:00
yury
9431648b6c
* Fixed conversion from float to currency when the currency type is 64-bit integer. Issue #28748 .
...
git-svn-id: trunk@32054 -
2015-10-13 22:30:46 +00:00
joost
6e1ae237c3
* Fix for compilation of fpmake.pp by fppkg without libtar unit
...
git-svn-id: trunk@32053 -
2015-10-13 20:49:32 +00:00
yury
7688639a10
* Return a real base address for ELF executables by GetModuleByAddr() instead of hard-coded 0.
...
* Obtain a real processaddress for ELF images by OpenExeFile() instead of hard-coded 0.
* It fixes line info information for Position Independent Executables (PIE).
git-svn-id: trunk@32052 -
2015-10-13 20:08:03 +00:00
Jonas Maebe
1e1e4b96e0
* don't store node trees for inline generic routines, as they contain
...
references to defs that are not stored in the ppu files (causing
errors) and are never used for inlining (only the specialisations
may be inlined) (fixes webtbs/tw27658.pp after r32031)
git-svn-id: trunk@32050 -
2015-10-13 15:59:18 +00:00
Jonas Maebe
cebcf0afa8
* add "doregister" parameter to tfloatdef.create, and don't register temporary
...
defs created in the scanner for evaluating compile time expressions
git-svn-id: trunk@32049 -
2015-10-13 15:59:15 +00:00
Jonas Maebe
b22e2ef400
* add "doregister" parameter to tsetdef.create, and don't register temporary
...
defs created in the scanner for evaluating compile time expressions
git-svn-id: trunk@32048 -
2015-10-13 15:59:12 +00:00
Jonas Maebe
e921d7847a
* add "doregister" parameter to tstringdef.create*, and don't register
...
temporary defs created in the scanner for evaluating compile time
expressions
git-svn-id: trunk@32047 -
2015-10-13 15:59:09 +00:00
Jonas Maebe
2778bf55c7
* add "doregister" parameter to torddef.create, and don't register temporary
...
defs created in the scanner for evaluating compile time expressions, or in
the code generator for range checking
git-svn-id: trunk@32046 -
2015-10-13 15:59:06 +00:00
Jonas Maebe
91be1d0f2d
* removed the DWARF label fields from tdef/tobjectdef, and dynamically
...
allocate them only while necessary
o also unified the conditions under which we allocate a separate
struct label
git-svn-id: trunk@32045 -
2015-10-13 15:59:03 +00:00