Commit Graph

65080 Commits

Author SHA1 Message Date
florian
deec6fc4ba * set max. variable and constant alignment for win32 and win64 to 64 byte boundaries 2022-05-11 20:58:38 +02:00
Pierre Muller
8184287ec0 Fix for variables longer than 127 chars 2022-05-10 23:18:01 +02:00
florian
578ce51fc3 * fix broken merge 2022-05-10 22:38:19 +02:00
florian
a73869b879 * arm-linux: set max. alignment for constants and variables to 32 byte boundaries 2022-05-09 22:45:21 +02:00
florian
084a4a0563 * made checking for supported targets more fool proof 2022-05-09 22:45:01 +02:00
J. Gareth "Curious Kit" Moreton
3e11b0e870 * New tests for aligned records 2022-05-09 20:03:44 +00:00
J. Gareth "Curious Kit" Moreton
971b8b9217 * Compiler error is now thrown if record alignment is not a power of 2 or is greater than 64. 2022-05-09 20:03:44 +00:00
Jonas Maebe
8bef28ccbe PPU version: bump
fcaea21075 changed name mangling
2022-05-09 21:19:06 +02:00
florian
4add05c625 * x86_64-linux and i386-linux align variables and constants up to 64 byte boundaries 2022-05-08 17:50:00 +02:00
Jonas Maebe
3d3c904ac5 TSymStr: more consistent usage 2022-05-08 15:03:44 +02:00
Jonas Maebe
fcaea21075 SymAnsiStr: fix "make all" and webtbs/tw39661*
Fixes compilation with LLVM backend
2022-05-08 14:59:36 +02:00
florian
78f23a462e * set minimum compiler to compile the compiler to 3.2.0 2022-05-07 23:13:16 +02:00
J. Gareth "Curious Kit" Moreton
f4e28ab357 * x86: Fixes to GetInt/MMRegisterBetween assignments 2022-05-07 20:54:40 +00:00
J. Gareth "Curious Kit" Moreton
fb14bc8459 * New webtbs/tw39646.pp test to evaluate fix for
i39646
2022-05-07 20:53:35 +00:00
J. Gareth "Curious Kit" Moreton
54aae023ea * Bug fix that prevents downsizing of
"(x div y) and z" when "x div y" is 64-bit and
    z is 32-bit or less.  Fixes i39646
2022-05-07 20:53:35 +00:00
marcoonthegit
4a8ddc50b3 * fix TreeView_GetItemRect reported by 440bx on forum 2022-05-07 22:10:27 +02:00
marcoonthegit
c745e2cfba * improved version that is still readable and has hex inline. Most importantly, it writes directly to result string rather than a temp, saving a copy that is hurting specially for longer strings. 2022-05-07 19:05:35 +02:00
Michaël Van Canneyt
62c9e19f39 * QOI format read/write implementation by Marģers 2022-05-07 10:30:46 +02:00
Michaël Van Canneyt
712823eb6c * Add some delphi compatibility enumerateds to TShiftState 2022-05-07 10:20:04 +02:00
magorium
d78e39d360 AROS: 32/64-bit RTL utility compatibility update
Update some utility RTL record structures to be 32/64-bit compatible.

Unit Utility was already up-to-date with these changes.
2022-05-06 22:21:47 +00:00
magorium
853b9c5c96 AROS: Unit amigados, record field members update
Update some amigados unit record field members for AROS compatiblity.

These changes reflect the changes made in the doslib RTL (that were present in
the previous commit).
2022-05-06 22:21:47 +00:00
magorium
94d47bf7cb AROS: RTL doslib, record field members update
Update some doslib RTL record field members for AROS compatiblity.
2022-05-06 22:21:47 +00:00
magorium
d207a293c7 AROS: 32/64-bit unit amigados compatibility update
Update some amigados record structures to be 32/64-bit compatible.

These changes reflect the changes made in the doslib RTL (that were present in
the previous commit) but note that some of Unit amigados' record structures
were already up to date.
2022-05-06 22:21:47 +00:00
magorium
b2f6ca70cd AROS: 32/64-bit RTL doslib compatibility update
Update some doslib RTL record structures to be 32/64-bit compatible.
2022-05-06 22:21:47 +00:00
magorium
2324055b1f AROS: Unit exec update. Memory sizes are IPTR
Memory sizes are expressed in IPTR/PtrUInt in order to be compatible to both
32 and 64-bit.

This changes some of Exec API call signatures and should not impact
existing code.

These changes reflect the changes made in the exec RTL (that were present in
the previous commit) but note that Unit Exec record structures were already
up to date.

See: d7df812342
2022-05-06 22:21:47 +00:00
magorium
e339d236e1 AROS: RTL exec update. Memory sizes are IPTR
Memory sizes are expressed in IPTR/PtrUInt in order to be compatible to both
32 and 64-bit.

Affects both record structures and API call signatures.

See: d7df812342
2022-05-06 22:21:47 +00:00
magorium
2a75debff6 AROS: 32/64-bit RTL exec compatibility update
Update some exec RTL record structures to be 32/64-bit compatible.

Unit Exec was already up-to-date with these changes.
2022-05-06 22:21:47 +00:00
magorium
61304bf324 AROS: Add stack aligned record fields for 32-bit and 64-bit compatibility
Final step that attempts to ensure that fields of particular records are
'STACKED' (stack aligned) properly for both 32 and 64 bit.

AROS introduced STACKED structure members, which are members that are padded
according to the current used stacksize which in itself is based on the target
CPU.

These structures are required to have a particular defined size in memory and
have a particular field alignment, therefor these records are always end-padded
(whether required or not) so that we are able to force the compiler to add
padding depending on the RECORDMIN setting.

Other available FPC directives and/or solutions seem currently not able to
solve that issue and we do not wish to manually check each structure to
determine if it requires end-padding or not (based on bitness) simply because
it is unmaintainable.

This change attempts to ensure that these record structures compile using the
correct memory size and field layout for both 32 and 64-bit CPU's.

The introduction of stack aligned record fields solves a lot of 64-bit related
crashes when working with native OOP such as MUI and BOOPSI.

Note: Not tested on big endian.
2022-05-06 22:00:27 +00:00
magorium
1fde206ee6 AROS: Change MethodID fields (back) to their original 32-bit (longword) size
Preparations for the introduction of stack aligned record fields (AROS STACKED
structure members).

MethodID really is 32-bit wide so we need to change those back to their
original size.
2022-05-06 22:00:27 +00:00
magorium
aa8fe28a05 AROS: Remove CPU64 ifdef's ensuring 64-bit compatibility for records/fields
Preparation for the introduction of stack aligned records fields (AROS STACKED
structure members).

Remove unmaintainable superfluous ifdef's that are used inside certain record
structures (in an attempt to use correct padding on 64-bit targets) because
they are not in line with the introduction of stack aligned record fields.
2022-05-06 22:00:27 +00:00
florian
c4e85e5d2c * made test compilable if no floating point type support is available 2022-05-06 23:25:36 +02:00
marcoonthegit
ca332f1002 * also remove .git dirs. 2022-05-06 18:44:57 +02:00
Michaël Van Canneyt
efe414f128 * Example for RSA signing 2022-05-06 10:47:19 +02:00
florian
bce88f2e2b * AVR: trgcpu.do_spill_read must load ofs 2022-05-05 19:35:38 +02:00
Michaël Van Canneyt
cab37732c4 * Avoid memory allocation in IsNullOrWhitespace. Fix issue 2022-05-05 12:04:52 +02:00
Michaël Van Canneyt
beb97b8110 * Use const for string argument 2022-05-04 19:03:33 +02:00
Michaël Van Canneyt
12866e2e61 * Forgot to commit fix 2022-05-04 11:27:55 +02:00
Michaël Van Canneyt
82c27c72c9 * Do not make assumptions about string encoding 2022-05-04 10:00:38 +02:00
Michaël Van Canneyt
c6e9c7c1f8 * Change writeln+exit to ignore 2022-05-03 23:14:09 +02:00
mattias
3ecc1272e0 fcl-web: removed des3 encoded pem example 2022-05-03 23:02:23 +02:00
Pierre Muller
5acd7a7b83 Rename tsymtable.insert and delete methods to insertsym ands deletesym 2022-05-03 23:00:28 +02:00
mattias
8851c8968c fcl-web: added des3 encoded pem example 2022-05-03 22:52:23 +02:00
mattias
2ec59db2fa fcl-hash: fixed fptlsbigint on i386 2022-05-03 22:35:52 +02:00
florian
29881ee675 * for now, IO is not supported on AVR 2022-05-03 19:39:09 +02:00
mattias
36b4a77c94 fcl-hash: less hints and disable range checking for bigint 2022-05-03 19:20:58 +02:00
Ondrej Pokorny
2093be8fc3 db xmldatapacketreader: fix range check error in InitLoadRecords 2022-05-03 10:21:20 +00:00
Ondrej Pokorny
8a64bddb20 db testsuite: add TestMSSQLLargeStrings 2022-05-03 10:18:41 +00:00
Ondrej Pokorny
f57adee862 odbc: bind string parameters as SQL_WLONGVARCHAR only for more than 2000 characters 2022-05-03 10:18:41 +00:00
Michaël Van Canneyt
989b378bcd * Remove debug define 2022-05-03 12:06:04 +02:00
mattias
120303576b fcl-web: fpjwarsa: catch exceptions during verification 2022-05-03 01:51:56 +02:00