Jonas Maebe
c745ae4836
AArch64 popt: don't replace registers with X/WZR
...
Most arithmetic/logica instructions don't support X/WZR as operand (since
you should use movk with the calculated constant in that case)
Resolves #39372
2021-10-04 20:58:05 +02:00
Yuriy Sydorov
e9d318e7e2
* x86: Fixed update of used registers in the CMOV optimizations.
...
This fixes a bug reported by Martin Frb in fpc-devel which is triggered
by the recently provided test code in FPC 3.2.2 x86_64, but is hidden
in trunk by other pipeline peephole optimizations.
2021-10-04 18:10:34 +03:00
Jonas Maebe
ab01b0ebd7
Typed constants: no internalerror on failure
...
Don't check whether the expression queue is empty in the destructor in case
there was an error. Also improved error messages (constant expression instead
of variable expression expected).
Resolves #39393
2021-10-03 21:46:23 +02:00
Jonas Maebe
3fb0fab410
Fix bitpacking 62/63 bit fields on 64 bit targets
...
As reported on the lazarus forum:
* https://forum.lazarus.freepascal.org/index.php?topic=56341.new
* https://forum.lazarus.freepascal.org/index.php/topic,56339.msg418608/topicseen.html
Also optimized nextpowerof2 in the compiler
2021-10-03 14:00:50 +02:00
Nikolay Nikolov
799cd957e6
+ added WASI .o files for the tests for linking with C
2021-10-03 04:11:51 +03:00
Nikolay Nikolov
9aefda1e6a
* bug fix in test taddbool.pp - it was testing longbool conversion to boolean
...
twice, and not testing wordbool conversion to boolean at all
2021-10-01 04:56:36 +03:00
J. Gareth "Kit" Moreton
1f19b11398
x86_64: Fix to tw8573 overflow bug under -Cg option
2021-09-29 18:32:31 +00:00
Pierre Muller
5446d53156
Update to use gitlab
2021-09-29 17:23:28 +02:00
Pierre Muller
a7ad65f884
Fix use of svnversion if ../.git does not exist
2021-09-25 17:15:35 +02:00
Jonas Maebe
fcb646bc3b
obcpas: fix categories implementing protocols
...
Allocate the ImplementedInterfaces array for them and save to/load from ppu
Solves #39375
2021-09-25 16:15:45 +02:00
florian
5abfe21f39
+ apply unary minus optimizations also to /
...
* test extended
2021-09-23 22:44:16 +02:00
florian
69d5d648a9
+ more unary minus optimizations
...
* test extended
2021-09-21 23:09:33 +02:00
florian
3e760b33c7
+ more unary minus optimizations
...
* test extended
2021-09-20 22:31:16 +02:00
florian
8cb92fd49a
* simplify real expressions involving unary minus
...
+ test
2021-09-19 23:08:32 +02:00
florian
e2624fdaaa
* fix test
2021-09-14 22:01:39 +02:00
florian
5065e4ba50
* fix code for ARM FPA, just in case ...
2021-09-13 22:55:44 +02:00
florian
9bd785c06b
* fix handling of -0.0 in sse/avx code, resolves #39357
2021-09-13 22:47:26 +02:00
Yuriy Sydorov
c30ce7108e
* Do not run the tzlib1 test. It is not intended for this.
2021-09-11 20:40:36 +03:00
Yuriy Sydorov
80c63fae30
* Explicitly specify DefaultRTLFileSystemCodePage for the test in order
...
to be independent from the current system code page.
2021-09-11 20:35:50 +03:00
Yuriy Sydorov
64812bdc60
* Modified the test to run properly on non-UTF8 systems.
2021-09-11 20:11:40 +03:00
Yuriy Sydorov
daa05f19cb
* Prevent a crash of the tw2423 test on some versions of Windows.
2021-09-11 19:54:02 +03:00
Yuriy Sydorov
fca357e898
* Disabled running of the sharemem test since fpcmemdll.dll is never built.
2021-09-11 19:54:02 +03:00
Yuriy Sydorov
0567572fae
* Weak externals from DLL are nor supported on Windows.
2021-09-11 19:54:02 +03:00
Yuriy Sydorov
bcaa2c9758
* Explicitly specify CP1252 for registry tests which depends on this CP.
2021-09-11 18:10:52 +03:00
Yuriy Sydorov
16d17de1ff
+ Added a test for a bug fixed in b96057ad
.
2021-09-06 19:01:34 +03:00
florian
677f829732
* tw39323 needs to turn on range check to test what it is supposed to test
2021-09-05 23:12:34 +02:00
florian
a5f6505edc
* fix range checking for zero based strings, resolves #39323
2021-09-05 21:03:31 +02:00
florian
3069d74ecc
* handle constant folding correctly for <pointer>+<ord. constant>+<ord. constant>, resolves #39332
2021-09-01 21:32:27 +02:00
florian
8efae66956
* we cannot do SSA during partial writes to arrays which span multiple registers, resolves #39325
2021-09-01 09:31:50 +02:00
Sven Barth
3ce6cae11d
* fix for #39310 by fixing various small issues in tabstractrecordsymtable.has_single_field:
...
- initialize the returned def to a safe default
- correctly reset the found symbol for each loop
- reset the result when descending into a record
+ added test
2021-09-01 09:31:15 +02:00
Pierre Muller
23bf243acd
Add test for bug report 38973 (already fixed in trunk/main)
2021-09-01 09:29:51 +02:00
Jonas Maebe
bc84f780ee
Solves #39296 : x86-64 parameter zero/sign extension
2021-09-01 09:29:51 +02:00
Pierre Muller
56a8f29519
Add support for hash generation for git repository (local modifier not implemented)
2021-09-01 09:29:50 +02:00
tg74
24f33871c0
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48927 -
2021-09-01 09:29:50 +02:00
tg74
18b868bfcd
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48880 -
2021-09-01 09:29:49 +02:00
tg74
df49a3d067
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48879 -
2021-09-01 09:29:49 +02:00
tg74
da4be71fc8
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48877 -
2021-09-01 09:29:49 +02:00
tg74
f9f0f9a1d1
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48875 -
2021-09-01 09:29:49 +02:00
tg74
e6ed010e92
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48873 -
2021-09-01 09:29:49 +02:00
tg74
afd1875834
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48872 -
2021-09-01 09:29:49 +02:00
tg74
4cc3a7fb12
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48870 -
2021-09-01 09:29:49 +02:00
tg74
183fbf77af
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48853 -
2021-09-01 09:29:49 +02:00
tg74
efcc3b2eba
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48845 -
2021-09-01 09:29:49 +02:00
tg74
a4b9fcffeb
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48807 -
2021-09-01 09:29:49 +02:00
tg74
1893babd06
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48804 -
2021-09-01 09:29:49 +02:00
tg74
6acf8abcc9
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48683 -
2021-09-01 09:29:49 +02:00
tg74
cdd2832ea7
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48682 -
2021-09-01 09:29:49 +02:00
tg74
772ea61b12
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48658 -
2021-09-01 09:29:49 +02:00
tg74
5225dd00f6
avxtestgenerator: working on new tests for compressed disp8*N
...
git-svn-id: branches/tg74/avx512-0037785@48656 -
2021-09-01 09:29:49 +02:00
tg74
4cdc665ab7
working on new testmethods avx512-memref-operands - 'compressed disp8*N'
...
git-svn-id: branches/tg74/avx512-0037785@48606 -
2021-09-01 09:29:49 +02:00