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
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
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
svenbarth
2a2576b1d5
* further fix for Mants #26760 : applied patch by Ondrej Pokorny to fix recompilation of units referenced with an "in" clause if no file extension is provided
...
+ added (interactive) test
git-svn-id: trunk@49613 -
2021-07-15 21:52:27 +00:00
florian
0d6a1d24bd
* might_have_sideeffects in gen_c_style_operator as proposed by runewalsh, resolves #39206
...
git-svn-id: trunk@49608 -
2021-07-13 18:31:38 +00:00
svenbarth
924f9466f0
* fix for Mantis #26760 : apply patch by Ondrej Pokorny to ensure that units referenced by an "in"-clause are recompiled when they have been changed
...
+ added test (though due to the nature of the bug it needs to be interactive)
git-svn-id: trunk@49587 -
2021-07-09 15:52:00 +00:00
florian
86ac03e07e
+ support SHLX and SHRX in TX86AsmOptimizer.RegLoadedWithNewValue, resolves #39178
...
git-svn-id: trunk@49583 -
2021-07-07 20:28:04 +00:00
florian
51326e94f3
* allow char constant to be used for const string parameters in generic specializations, resolves #39030
...
git-svn-id: trunk@49569 -
2021-06-28 20:35:33 +00:00
svenbarth
be1461654f
- remove unused copy of tw17904 (wrong extension)
...
git-svn-id: trunk@49482 -
2021-06-05 17:44:00 +00:00
florian
f2e0af6d37
* check used registers properly for SETcc/TEST/Jcc -> Jcc, resolves #38940
...
git-svn-id: trunk@49405 -
2021-05-28 21:23:09 +00:00
florian
1e1848da92
* fix exception generation in ln(...), resolves #38832
...
git-svn-id: trunk@49328 -
2021-05-02 19:45:09 +00:00
Jonas Maebe
9977889f4a
* fix finally block getting unconditionally removed if try-block is empty
...
(hasnocode(nil) always returns true). Regression from r48174
git-svn-id: trunk@49305 -
2021-05-01 09:28:58 +00:00
florian
77cc2f4ced
* decrease macro nesting counter early when expanding empty macro
...
to avoid errors about too depth macro nesting, resolves #38802
git-svn-id: trunk@49265 -
2021-04-25 19:49:26 +00:00
pierre
17e3c31b7e
Fix gotpcrel relocation for TESTQ x86_64 instruction
...
git-svn-id: trunk@49252 -
2021-04-23 21:52:24 +00:00
florian
dbee3bcc0d
* fixed MSecsToTimeStamp by Lagunov Aleksey, resolves #38631
...
git-svn-id: trunk@49247 -
2021-04-22 20:14:00 +00:00
Jonas Maebe
7c9fb4b4af
* AArch64: fix storing a 32 bit value in the lower 32 bits of a 64 bit
...
subsetreg (mantis #38766 )
git-svn-id: trunk@49236 -
2021-04-19 20:52:12 +00:00
Jonas Maebe
bb977b398d
* AArch64: fix spilling integer registers to stack offsets that cannot be
...
encoded directly into the spilling instructions (second part of
mantis #38053 )
git-svn-id: trunk@49207 -
2021-04-14 20:56:32 +00:00
Jonas Maebe
ff3f812d97
* fix conversion of true/false macro definitions to boolean values
...
(mantis #38492 )
o since the macro lookups are recursive, "mac" will usually be nil
afterwards (unless we found an undefined macro)
git-svn-id: trunk@49160 -
2021-04-10 10:56:02 +00:00
florian
09628e56cb
* even if currency is handled by torddef, it is a real number, so using / is perfectly right, resolves #38718
...
git-svn-id: trunk@49154 -
2021-04-09 20:38:46 +00:00
florian
b09669dffe
* allow also CSUBSETREG in tx86inlinenode.second_IncludeExclude, resolves #38733
...
git-svn-id: trunk@49151 -
2021-04-09 20:09:19 +00:00
florian
503fc85dff
* patch by J. Gareth Moreton: handle register allocations correctly in MovMov2Mov 3, resolves #38703
...
git-svn-id: trunk@49128 -
2021-04-06 15:50:28 +00:00
florian
f0023a3b04
* Aarch64: patch by J. Gareth Moreton: fix constant writing, resolves #38695
...
+ test
git-svn-id: trunk@49104 -
2021-04-02 16:44:43 +00:00
florian
cc64d9eb4e
* do not swap left/right code generation for assignment nodes if
...
conditional expressions are involved, resolves #38129
git-svn-id: trunk@49095 -
2021-03-31 20:53:18 +00:00
florian
47557e0ad2
* cpubase.cgsize2subreg should handle all valid sizes, resolves #38557
...
git-svn-id: trunk@49087 -
2021-03-30 16:44:19 +00:00
florian
b4eb1780ad
* added test, issue is fixed by r48758 already
...
git-svn-id: trunk@49075 -
2021-03-28 21:10:13 +00:00
florian
47eb7cec0c
* test needs objfpc mode else i is 16 bit only
...
git-svn-id: trunk@49074 -
2021-03-28 21:09:35 +00:00
florian
6218254e53
* allow also 8 byte string constants in assembler, resolves #28640
...
git-svn-id: trunk@49066 -
2021-03-27 17:13:14 +00:00
Jonas Maebe
308aee42a0
* the offset parameter of reference_reset* must be asizeint rather than
...
longint (mantis #38636 )
git-svn-id: trunk@49065 -
2021-03-27 15:31:33 +00:00
svenbarth
ca7c775e36
* fix for Mantis #38642 : for enumerations with jumps Delphi behaves as follows:
...
- GetTypeKind returns tkEnumeration (FPC previously generated a compile error here)
- GetTypeInfo on a generic parameters returns Nil for such types (FPC previously generated a compile error here)
- GetTypeInfo otherwise generates a compile error (as before)
git-svn-id: trunk@49064 -
2021-03-27 09:35:07 +00:00
florian
2b47425f08
+ tx64tryfinallynode.dogetcopy properly implemented, resolves #37305
...
git-svn-id: trunk@48972 -
2021-03-14 21:23:05 +00:00
florian
c603477ec4
* fix test for RiscV
...
git-svn-id: trunk@48914 -
2021-03-08 17:12:19 +00:00
pierre
01a351f804
Fix for bug report 38549 about wrong code generation
...
for mips/mipsel and riscv32/riscv64 CPUs for
set operators '<=' and '>='.
New tests for this bug report.
tw38549.pp, main source, also included
by tw38549a.pp, tw38549b.pp, tw38459c.pp and tw38459d.pp
with explicit {$packset X}, with X=1,2,4, or 8 added.
git-svn-id: trunk@48874 -
2021-03-03 22:15:20 +00:00
Jonas Maebe
9c831677ff
* support Objective-C classes and protocols with -gw3 (mantis #36250 )
...
git-svn-id: trunk@48834 -
2021-02-27 21:44:53 +00:00
pierre
58171b4308
Extend list of CPUs defining slowcpu conditional in tmt1 and tw8177 sources
...
git-svn-id: trunk@48816 -
2021-02-26 23:39:14 +00:00
pierre
f85d7d2591
Fix tw28713 for big endian CPUs
...
git-svn-id: trunk@48795 -
2021-02-23 22:04:18 +00:00
pierre
2cd6951205
Apply patch proposed by J. Gareth Moreton in bug report #0038527
...
The patch reworks the LeaLea2Lea optimisation and hopefully fixes the bug (admittedly by adding a brand new optimisation!).
git-svn-id: trunk@48792 -
2021-02-22 23:15:31 +00:00
florian
5a26c58285
* allow in-operator to be used on type parameters, resolves #38497
...
git-svn-id: trunk@48763 -
2021-02-21 21:29:40 +00:00
florian
d0910b5ac8
* allow sub/add nodes in constant pointer expressions, resolves #34027
...
git-svn-id: trunk@48514 -
2021-02-05 22:10:27 +00:00
florian
a67c184200
* test for already fixed issue #32139
...
git-svn-id: trunk@48501 -
2021-02-02 21:36:54 +00:00
florian
40b8bde305
* test for 32 bit targets fixed
...
git-svn-id: trunk@48496 -
2021-02-01 21:14:19 +00:00
svenbarth
fe5b29c111
* fix for Mantis #38249 : apply adjusted patch by avk to implemnt CastTo handling when the source variant is a custom variant, but the destination type is not
...
+ added test (includes test for #20849 )
git-svn-id: trunk@48477 -
2021-01-31 20:26:26 +00:00