Commit Graph

67886 Commits

Author SHA1 Message Date
marcoonthegit
6ab91262b2 * make an excpetion and allow undocumented TD_QUESTION_ICON constant. There are multiple sources for this. Fixes #40406 2023-08-19 11:06:46 +02:00
marcoonthegit
fb0d1c353c * foreground,background color sitemap reading for TOC, fixes #40402 2023-08-19 11:04:56 +02:00
mattias
203c566875 fcl-process: fixed parsing CommandLine under unix 2023-08-19 10:33:09 +02:00
Henrique Gottardi Werlang
1ca9f9af51 Rebase error. 2023-08-16 14:31:42 -03:00
Rika Ichinose
1a6e6a1b0b Improve generic large set operations: +, -, *, ><, =, <=, mostly by working in PtrUints. 2023-08-16 17:15:33 +00:00
mattias
9f93b88c1c pastojs: fixed pass ClassInstVar to IntfType 2023-08-16 18:33:09 +02:00
mattias
0778071be7 pastojs: fixed possible mem leak 2023-08-16 18:08:46 +02:00
Henrique Gottardi Werlang
14fa611979 Fixed creation pointer information in Pas2Js. 2023-08-16 06:25:58 +00:00
ccrause
9440b17eea [AVR] Add command line options to selectively remove portions of the RTL startup code. 2023-08-15 21:33:58 +00:00
florian
c48c816e49 * (modified) patch by Jinyang He to handle alignment in FindInFieldTable correctly, resolves #40400 2023-08-15 23:31:33 +02:00
Jonas Maebe
50040a2cab default values: store as staticvarsyms in staticsymtable
Previously, they were stored as localvarsyms in either the localsymtable
(for procedures/functions) or as localvarsyms in the staticsymtable (for
init/fini code of units/main programs). The latter was a hack (staticsymtables
normally cannot contain localvarsyms) and caused the temp allocator to also
allocate them as a local in fini code even if the default was only in the init
code.

The new approach ensures at most one copy gets allocated per unit, it doesn't
require explicit initialisation (since staticvarsyms are in bss -> zeroed by
default), gets rid of the localvarsyms in staticsymtables, and as a bonus
solves an issue with inconsistent LLVM debug information for the localvarsym
in init/fini code (since the staticsymtable is shared between the init and
fini code, so was the local, and therefore we generated debug info stating
it was defined in the fini code but within the scope of the init code).

Resolves #40395
2023-08-15 21:13:48 +02:00
florian
cc27a5de78 + test from Rika for merge request 458 2023-08-14 23:21:25 +02:00
J. Gareth "Curious Kit" Moreton
dde19c0144 * Improvement to TEST/JNE/TEST/JNE code to be more accurate where register deallocations are concerned 2023-08-12 23:43:05 +00:00
J. Gareth "Curious Kit" Moreton
699db16fe4 * x86: Fixed bug in TEST/JNE/TEST/JNE optimisation that caused bad code to be generated under -O3 2023-08-12 23:43:05 +00:00
J. Gareth "Curious Kit" Moreton
11957d9a60 * New test, mostly for x86, to detect incorrect TEST/JNE/TEST/JNE optimisation 2023-08-12 23:43:05 +00:00
florian
4096d9b74f * factor out subreg2opsize 2023-08-12 23:12:13 +02:00
J. Gareth "Curious Kit" Moreton
6d5876a29c * New CMOV test at webtbs/tw40307.pp 2023-08-12 20:55:12 +00:00
J. Gareth "Curious Kit" Moreton
6ffa258abb * x86: Revamped OptPass2Jcc CMOV code to shrink and reuse registers as much as possible 2023-08-12 20:55:12 +00:00
J. Gareth "Curious Kit" Moreton
2a83972db8 * x86: Fixed bug where OptPass2Jcc CMOV optimisation sometimes
put the wrong-sized register into an operand (fixes i40307)
2023-08-12 20:55:12 +00:00
Michaël Van Canneyt
36a2835f8c * Deprecate hextobin 2023-08-12 17:09:07 +02:00
Michaël Van Canneyt
9b78328175 * Redirect posex to pos, patch from rika. Fixes issue #40389 2023-08-12 17:08:42 +02:00
Michaël Van Canneyt
56a906a421 * Hex2Bin Delphi-compatible overloads. Fixes issue #38712 2023-08-12 14:59:07 +02:00
Michaël Van Canneyt
fd39fd96b3 * Add enumerator for TStringBuilder. Fix issue #37088 2023-08-12 14:33:50 +02:00
Michaël Van Canneyt
896ca4bb75 * Initialize result in StingToHex. Fixes issue #40388 2023-08-12 12:26:20 +02:00
Jonas Maebe
13346a42bc volatile: allow for assignments 2023-08-12 12:04:40 +02:00
Michaël Van Canneyt
f5280abe54 * Some small optimizations. Fix issue #40387 2023-08-11 13:49:15 +02:00
Michaël Van Canneyt
52da2011dd * Small optimization 2023-08-11 12:44:06 +02:00
Pierre Muller
22a1acd610 Applied fix for binutils 2.41 for loongarch64 suggested by Jinyang He
32fa3e9eb1
  with modifications reported in comments.
2023-08-11 08:58:40 +00:00
Pierre Muller
ff673eadac Add unit specifiers for tlsdirectory fields: they need to be PUInt from globtype unit 2023-08-11 08:38:43 +00:00
Pierre Muller
ffdb789a49 Fix syntax errors in make fullcycle 2023-08-11 02:31:43 -05:00
Pierre Muller
2d42040b1d Fix z80-embedded target 2023-08-10 22:40:11 +00:00
Pierre Muller
b8f8a1dd1f Cleanup TLinkerLinux.SetDefaultInfo method in t_linux unit 2023-08-10 22:08:26 +00:00
Pierre Muller
ee97c0ca03 Add missing TPECoffExpDir variantr of MaybeSwap procedure 2023-08-10 22:08:26 +00:00
Pierre Muller
2443fd0ad7 Attempt to get ogcoff to work on CPU with opposite endianness 2023-08-10 22:08:26 +00:00
Pierre Muller
071ae41d24 Try to fix linker script for aarch64-win64 2023-08-10 22:08:26 +00:00
Pierre Muller
1057e7cd2d Avoid recurvise variable expansion error for wasm32-embedded 2023-08-11 00:07:28 +02:00
Michaël Van Canneyt
73acc39363 * Fix hints/warnings 2023-08-10 22:40:41 +02:00
Michaël Van Canneyt
a4912cc92e * Newer laz project format 2023-08-10 22:40:41 +02:00
Michaël Van Canneyt
1ee8bde72f * Add possibility to specify parameters 2023-08-10 22:40:41 +02:00
Michaël Van Canneyt
49e7a98ca1 * Make sure it compiles with version 3.2 (pas2js) 2023-08-10 22:40:41 +02:00
Michaël Van Canneyt
120bb80d0b * RowsAffected capability 2023-08-10 22:40:41 +02:00
Pierre Muller
febb45c39c Re-add 'Lost in translation' mmx unit for i386-linux target 2023-08-10 15:18:01 +02:00
Pierre Muller
ddd4011b08 Regenerate Makefile's 2023-08-10 00:24:27 +02:00
Pierre Muller
8af6ad9148 Dotted rules for arm-embedded 2023-08-10 00:23:51 +02:00
Pierre Muller
feeb22b602 Try to fix dotted rules for embedded targets 2023-08-09 23:52:22 +02:00
Pierre Muller
c1e5f347bc Regenerated Makefile's 2023-08-09 23:03:35 +02:00
Pierre Muller
60649204ad Remove obsolete GRAPHDIR and USELIBGGI, because graph unit has been moved to packages long ago 2023-08-09 22:49:48 +02:00
Pierre Muller
2836bf406d embedded dos unit needs objpas unit because of objfpc mode 2023-08-09 22:38:13 +02:00
Pierre Muller
33ce4c5fce Set CPU_SPECIFIC_COMMON_UNITS to empty for i8086-embedded 2023-08-09 22:33:24 +02:00
Pierre Muller
f3003f1bb5 Remove fpcmake.loc added by accident 2023-08-09 08:11:08 +02:00