Jonas Maebe
1c3fc6e2df
* don't convert the fpu parameters size from tcgsize -> int -> float_tcgsize
...
if not required, to avoid translating OS_C64 into OS_F64 (fix for x86
test failures after r45205)
git-svn-id: trunk@45221 -
(cherry picked from commit 3f6ad30b69
)
2022-02-13 12:02:28 +01:00
Jonas Maebe
8a31764a7b
* support floating point parameters split over multiple locations, including
...
integer registers, for homogeneous records/arrays on ppc64le (related to
mantis #36934 )
git-svn-id: trunk@45205 -
(cherry picked from commit 722ad1ff7b
)
2022-02-13 12:01:36 +01:00
Jonas Maebe
28b2b299da
* ppc64le: fix storing homogeneous 64 bit float parameters in case they are
...
split over just FPU registers and memory (related to mantis #36934 )
git-svn-id: trunk@45204 -
(cherry picked from commit 05923af386
)
2022-02-13 12:01:14 +01:00
florian
3ef2ab1019
* cleaning up tcgsize: it makes no sense to declare every combination and type
...
the different vector types must be either handled in the high level cg or
by using the shuffle parameter
git-svn-id: trunk@43860 -
(cherry picked from commit b7c6e01b03
)
2022-02-13 12:00:45 +01:00
Sven Barth
6279283ce1
* 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
(cherry picked from commit efd0c250df
)
2022-01-30 22:42:10 +01:00
Pierre Muller
90301426fc
Avoid use of fastmath optimization inside compiler
...
(cherry picked from commit 91f29419a5
)
2022-01-27 00:08:50 +01:00
Florian Klämpfl
8731c5f7fd
* message files regenerated
2022-01-23 17:58:24 +01:00
Florian Klämpfl
5cd1c4f5bc
* manually fix unwanted stripping of exception frame info based on a patch by Gareth J. Moreton
2022-01-23 17:32:40 +01:00
marcoonthegit
08bb8c8dfc
* fixed spelling error implicitEly in errore.msg, regenned msg.
...
(cherry picked from commit 45840da4dd
)
2022-01-22 18:09:05 +01:00
pierre
34a9cc229f
Second trial to fix commit 48688
...
git-svn-id: trunk@48691 -
(cherry picked from commit acf2567bda
)
2022-01-16 17:14:14 +00:00
pierre
39ba1c39be
Fix previous commit 48688 to avoid accessing 'invalid' positions in sym.value.valueptr
...
git-svn-id: trunk@48689 -
(cherry picked from commit 34fd36f817
)
2022-01-16 17:13:58 +00:00
pierre
09f6a2ad0c
Avoid writing characters after sym.value.len for conststring constant symbols
...
git-svn-id: trunk@48688 -
(cherry picked from commit 6a408fe97e
)
2022-01-16 17:13:48 +00:00
florian
7c7f2cfdea
* pass float abi always to the arm assembler
...
git-svn-id: trunk@39996 -
(cherry picked from commit 2cbb9895be
)
2022-01-10 22:29:44 +01:00
florian
d63ad582a7
* cherry picked commit did not compile, fixing it, resolves #24863
2022-01-08 23:06:11 +01:00
florian
5a17765841
* if a variant is read/written, include the variants unit
...
git-svn-id: trunk@47459 -
(cherry picked from commit bcdfd07bdd
)
2022-01-08 22:55:18 +01:00
florian
c0f20e0e5f
* do not join register deallocations/allocations as it makes no use and causes later on trouble in
...
the assembler optimizer as register allocations are not correct, resolves #33565
(cherry picked from commit c6659d62f8
)
# Conflicts:
# .gitattributes
2021-11-28 15:22:20 +01:00
florian
a76d096254
* workaround missing optimizer capabilites of the fixes branch to fix avr compilation with -CriotR
2021-11-21 22:57:24 +01:00
svenbarth
8b21bf1cce
* fix writing of the method and parameter names for the Variant call description
...
git-svn-id: trunk@49479 -
(cherry picked from commit 7330a0156c
)
2021-11-14 11:41:56 +01:00
Jonas Maebe
383c4a8e04
iphonesim: use ios_simulator_version_min
...
The linker expects ios_simulator_version_min rather than -iphoneos_version_min
when targeting the iOS simulator platform. Fixes compilation with Xcode 11
toolchains, which is more strict about this.
(cherry picked from commit 3263e12a3e
)
2021-10-30 17:12:29 +02:00
Jonas Maebe
29d0a2a70a
iphonesim target: requires proper alignment
...
Just like the native iOS targets
(cherry picked from commit 334cf9c19d
)
2021-10-30 17:12:29 +02:00
florian
d9cb4be507
* last commit was wrong
2021-10-24 13:57:27 +02:00
florian
62875030b5
* hopefully i8086 compilation fixed
2021-10-24 13:50:48 +02:00
florian
feb9274963
* fix tcgobj.a_op_reg_ref and tcgobj.a_op_ref_reg after recent avr related merges
2021-10-24 12:40:38 +02:00
nickysn
c9d2028ebd
* handle LOC_(C)SUBSETREG/REF in second_NegNot_assign
...
* changed the way OP_NEG and OP_NOT are handled in op_reg_ref, in order to be
consistent with op_reg_reg
* introduced op_reg,op_ref,op_subsetreg,op_subsetref and op_loc for the unary
operations only (OP_NEG,OP_NOT)
git-svn-id: trunk@45302 -
(cherry picked from commit 0f6ab0de17
)
# Conflicts:
# compiler/cgobj.pas
2021-10-24 12:40:38 +02:00
florian
3b8df7736c
* patch by Christo Crause: Passing a file name with extension to cross compiler
...
with -o causes error, fixed, resolves #36562
git-svn-id: trunk@43921 -
(cherry picked from commit 9926eb8dc6
)
# Conflicts:
# compiler/systems/t_embed.pas
2021-10-24 12:40:38 +02:00
Jeppe Johansen
38576b4830
* Add support for generating map files for embedded target.
...
git-svn-id: trunk@43866 -
(cherry picked from commit 89a961f960
)
2021-10-24 12:40:38 +02:00
florian
d2d1c30b53
* patch by Christo Crause, resolves #38961 , fixes the following formatting and spelling problems in the AVR compiler files:
...
- Change spelling of AM_PREDRECEMENT to AM_PREDECREMENT
- Fix multiline comment style to use {}
- Fix indenting of code in method tcgavr.g_concatcopy
git-svn-id: trunk@49474 -
(cherry picked from commit aec49340a3
)
2021-10-24 12:40:38 +02:00
florian
6a653c298c
* patch by Christo Crause: do not generate LDD for avrtiny, resolves #38958
...
git-svn-id: trunk@49473 -
(cherry picked from commit 9d6ceda532
)
2021-10-24 12:40:38 +02:00
florian
235c82feaa
+ AVR: MovOp2Op 2 optimization
...
git-svn-id: trunk@49350 -
(cherry picked from commit 9bfc731bb6
)
2021-10-24 12:40:38 +02:00
florian
e168707f5b
* patch by Christo Crause: handle references to absolute address 0 correctly, resolves #38861
...
git-svn-id: trunk@49344 -
(cherry picked from commit 5e1e6c24a4
)
2021-10-24 12:40:38 +02:00
florian
1333d5aea8
+ patch by Dimitrios Chr. Ioannidis: include dwar-3 sections in avr-embedded linker script
...
git-svn-id: trunk@48659 -
(cherry picked from commit 98a748bdd6
)
2021-10-24 12:40:38 +02:00
florian
0049abce42
* fix proposed by Christo Crause: properly handle pointer constant nodes on avr, resolves #38321
...
git-svn-id: trunk@48095 -
(cherry picked from commit 6d75992674
)
2021-10-24 12:40:38 +02:00
florian
99588969b9
* patch by Christo Crause: Fix missed optimization opportunities, resolves #38285
...
git-svn-id: trunk@47925 -
(cherry picked from commit 3482121831
)
2021-10-24 12:40:38 +02:00
florian
d75fb82753
* do not reuse a loaded reference for avrtiny in a_op_const*, resolves #38142
...
git-svn-id: trunk@47612 -
(cherry picked from commit eb098a3d11
)
# Conflicts:
# compiler/cgobj.pas
2021-10-24 12:40:38 +02:00
florian
af4eb12b43
* patch by Christo Crause to fix illegal ldd generation for avrtiny, resolves #37929
...
git-svn-id: trunk@47118 -
(cherry picked from commit fa54335938
)
2021-10-24 12:40:38 +02:00
florian
64ff162e3f
* patch by Christo Crause: r0, r1 are no volatile registers for avr tiny
...
git-svn-id: trunk@47102 -
(cherry picked from commit b8c707ed7e
)
2021-10-24 12:40:37 +02:00
florian
35b2d80271
* avr: patch by Christo Crause: replace findreg_by_gasname with gas_regname_table, resolves #37131
...
git-svn-id: trunk@45509 -
(cherry picked from commit 37a3b542e6
)
2021-10-24 12:40:37 +02:00
nickysn
34eb9ade91
* fix for OP_ROR in tcgavr.a_op_reg_reg_internal
...
git-svn-id: trunk@44749 -
(cherry picked from commit 599b7e80c0
)
2021-10-24 12:40:37 +02:00
florian
9872a8a57a
* AVR: couple of fixes for CPUs with only 16 registers
...
git-svn-id: trunk@44177 -
(cherry picked from commit fc50edfe31
)
2021-10-24 12:40:37 +02:00
florian
265783c4b5
* remove accidently committed debug code
...
git-svn-id: trunk@44175 -
(cherry picked from commit 0424c2a658
)
2021-10-24 12:40:37 +02:00
florian
b65e3288aa
* patch by Christo Crause: combine code paths for avr1 and avrtiny when converting lds/sts to in/out, resolves #36697
...
git-svn-id: trunk@44163 -
(cherry picked from commit fd4fb5fa19
)
2021-10-24 12:40:37 +02:00
florian
32e17c5114
* for avr1, do not save registers during an interrupt procedure, as it has no memory to store them
...
git-svn-id: trunk@44139 -
(cherry picked from commit 2135b9b724
)
# Conflicts:
# compiler/msg/errore.msg
# compiler/msgidx.inc
# compiler/msgtxt.inc
2021-10-24 12:40:37 +02:00
florian
438c971460
* AVR: for avr1 lds/sts must be converted to in/out as well if possible
...
git-svn-id: trunk@44138 -
(cherry picked from commit 84cfa8d9b0
)
2021-10-24 12:40:37 +02:00
florian
a589637b1d
* patch by Christo Crause: more avr1 controllers and remove attiny28 from avr25 makefile list, resolves #36686
...
git-svn-id: trunk@44136 -
(cherry picked from commit 297d6e2c60
)
# Conflicts:
# .gitattributes
2021-10-24 12:40:37 +02:00
florian
54a6784e85
* AVR: decide after compiler if a certain subroutine is suitable for avr1, if not, replace it by sleep and warn
...
git-svn-id: trunk@44133 -
(cherry picked from commit a905a074b0
)
# Conflicts:
# compiler/msg/errore.msg
# compiler/msgidx.inc
# compiler/msgtxt.inc
2021-10-24 12:40:37 +02:00
florian
b77b0df3bd
* AVR: attiny28 is an avr1 CPU
...
git-svn-id: trunk@44132 -
(cherry picked from commit dea63e3d61
)
2021-10-24 12:40:37 +02:00
florian
3cb2cff444
* patch by Christo Crause: more AVR controllers, resolves #36683
...
git-svn-id: trunk@44130 -
(cherry picked from commit 04ad607bb4
)
# Conflicts:
# .gitattributes
2021-10-24 12:40:37 +02:00
florian
a124adb9a7
* patch by Christo Crause: add missing atmega-PB controllers, resolves #36667
...
git-svn-id: trunk@44128 -
(cherry picked from commit 5040e31f11
)
# Conflicts:
# .gitattributes
2021-10-24 12:40:37 +02:00
florian
5e4de7277a
* patch by Christo Craus to reorder the avr controllers for better overview, resolves #36662
...
git-svn-id: trunk@44124 -
(cherry picked from commit e033269deb
)
2021-10-24 12:40:37 +02:00
florian
104cb227d4
* patch by Christo Crause: board aliases to onboard controllers, resolves #36659
...
git-svn-id: trunk@44111 -
(cherry picked from commit 4fe21a8e1a
)
2021-10-24 12:40:37 +02:00