..
aarch64
* a64: Node parser now attempts to directly create BIC, ORN and EON instructions
2023-11-08 21:07:00 +00:00
arm
Fix for trunk arm STM optimize bug
2023-11-12 18:22:19 +00:00
armgen
* a64: Porting of MatchOperand function from x86 that takes integer parameter
2023-10-22 12:16:50 +00:00
avr
Also add boot information to board aliases.
2023-05-22 19:08:01 +00:00
generic
html
i386
* Pass 2 can now be run multiple times when
2023-11-05 10:03:52 +00:00
i8086
* New "fast 3-component LEA hint" and "Icelake" CPU options
2023-10-29 10:26:52 +00:00
jvm
* spelling fixes
2022-08-04 23:01:35 +02:00
llvm
Rename fields of tspillregsinfo record to avoid having same field names as treginfo record
2023-09-26 18:18:04 +00:00
loongarch64
Try to fix crash in loongarch64 compiler
2023-09-26 18:18:04 +00:00
m68k
m68k: initial compiler changes for Human68k (Sharp X68000) support
2023-11-30 23:43:27 +00:00
mips
Fix storing of unaligned 64-bit to memory
2023-04-21 10:32:13 +01:00
msg
m68k: initial compiler changes for Human68k (Sharp X68000) support
2023-11-30 23:43:27 +00:00
powerpc
Add dwarf CFI for 32-bit powerpc cpu
2023-11-23 21:39:14 +01:00
powerpc64
Add dwarf CFI for powerpc64 cpu
2023-11-23 21:19:52 +01:00
ppcgen
Add system_powerpc_wii to supported_targets of powerpc generic GNU assembler
2022-10-22 15:34:38 -05:00
riscv
Added generic WCH32Vx RISC-V processor types using memory size suffixes
2023-08-26 22:12:00 +02:00
riscv32
Change AVOID_OVERFLOW to avoid warning about inequality being always true
2023-10-26 07:47:10 +00:00
riscv64
* correct tripletcpustr, resolves #40301
2023-05-31 20:26:50 +02:00
sparc
sparc64
Fix for sparc64 specific code generation bug report #40252
2023-05-26 17:10:23 +02:00
sparcgen
Handle unaligned copy in TCGSparcGen.g_concatcopy method
2023-07-16 01:31:09 -05:00
systems
m68k: initial compiler changes for Human68k (Sharp X68000) support
2023-11-30 23:43:27 +00:00
utils
human68k: regenerated Makefiles
2023-11-30 23:43:27 +00:00
wasm32
+ check whether all br instructions, generated by goto point to a pascal goto label
2023-10-22 05:23:04 +03:00
x86
* Fixed internal error number clash (2022102110)
2023-11-10 18:43:55 +00:00
x86_64
LLVM: fix currency parameters passed on the stack on x86-64
2023-11-05 11:30:19 +01:00
xtensa
Disable -EB/-EL passing for freertos OS as the corresponding released binutils do not support this option
2023-05-25 21:47:27 +00:00
z80
Restore start section at end of assembler block inside z80 asm reader
2023-05-15 19:51:11 +02:00
.gitignore
git ignore msg2inc binary
2023-07-07 11:17:33 +02:00
aasmbase.pas
* fixed and enabled the is_pascal_goto_target check
2023-10-22 04:01:37 +03:00
aasmcfi.pas
aasmcnst.pas
* Emit comments in RTTI info for classes/interfaces
2023-05-29 13:41:25 +00:00
aasmdata.pas
Add dwarf cfa support
2023-02-05 19:18:48 +00:00
aasmdef.pas
aasmsym.pas
aasmtai.pas
* SkipInstr now includes ait_align
2023-11-25 20:47:44 +00:00
aggas.pas
m68k: initial compiler changes for Human68k (Sharp X68000) support
2023-11-30 23:43:27 +00:00
aopt.pas
aoptbase.pas
aoptda.pas
aoptobj.pas
* UpdateUsedRegsAndOptimize improved to clear aligns that don't have
2023-11-25 20:47:44 +00:00
aoptutils.pas
assemble.pas
Add missing swaping in case of different endianess of stab entry inside TInternalAssembler.WriteStab
2023-04-30 21:23:06 +02:00
blockutl.pas
* extend tabstractprocdef.getcopyas by a parameter to control whether the copy should be registered or not
2022-05-26 21:42:59 +02:00
browcol.pas
* patch by Rika: Use linear file list in FInput.TInputFileManager instead of linked, resolves #39880
2022-09-17 22:46:57 +02:00
catch.pas
- disabled installation of SIGINT signal handler for Darwin, because
2009-02-28 18:07:21 +00:00
ccharset.pas
cclasses.pas
* patch by Rika: Use Index* for pointer lists, resolves #40218
2023-03-25 21:32:29 +01:00
cepiktimer.pas
cfidwarf.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
cfileutl.pas
* Allow to disable 8.3 filename search
2023-11-12 09:55:30 +01:00
cg64f32.pas
cgbase.pas
+ implemented WebAssembly code generator support for funcref and externref data
2023-06-07 05:25:57 +03:00
cgexcept.pas
cghlcpu.pas
cgobj.pas
Attempt to fix tcalext3 big-endian powerpc64 failure
2023-11-20 01:05:10 +03:00
cgutils.pas
* Converted assertion into an internal error
2022-08-20 16:09:54 +00:00
cmsgs.pas
comphook.pas
Add -vj option in options unit to set V_Parallel
2023-09-09 07:49:22 +00:00
compiler.pas
m68k: initial compiler changes for Human68k (Sharp X68000) support
2023-11-30 23:43:27 +00:00
compinnr.pas
comprsrc.pas
comptty.pas
constexp.pas
COPYING.txt
cprofile.pas
crefs.pas
cresstr.pas
* Unicode resource strings
2023-07-25 16:06:53 +02:00
cscript.pas
cstreams.pas
cutils.pas
* patch by Rika: Shorten cutils.compareansistrings, resolves #40213
2023-03-24 22:50:19 +01:00
dbgbase.pas
Add globals to implementation _USES clause to prepare move of V_XXX constants to globals unit
2023-09-09 06:54:30 +00:00
dbgcodeview.pas
dbgdwarf.pas
* correctly name nested enum type debug symbols, resolves #40462
2023-10-10 23:16:31 +02:00
dbgdwarfconst.pas
* spelling fixed
2023-03-26 15:55:37 +02:00
dbgstabs.pas
* spelling fixes
2022-08-04 23:01:35 +02:00
dbgstabx.pas
defcmp.pas
* New is_cyclic function to detect if def references itself - fixes #40010
2022-12-03 23:53:16 +00:00
defutil.pas
* Add is_systemunit_unicode function (cchartype suymbol)
2023-07-22 08:26:22 +00:00
dirparse.pas
dwarfbase.pas
* improve dwarf cfi on avr
2022-09-28 22:47:06 +02:00
elfbase.pas
entfile.pas
Add new test code to verify that tentfile.buf limits are not overpassed
2023-05-23 22:39:03 +02:00
export.pas
+ support 'promising last' exports
2023-06-16 11:00:19 +03:00
expunix.pas
finput.pas
* patch by Rika: Use linear file list in FInput.TInputFileManager instead of linked, resolves #39880
2022-09-17 22:46:57 +02:00
fmodule.pas
* $NAMESPACES directive
2023-07-26 09:45:53 +02:00
fpcdefs.inc
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
fpchash.pas
fpcp.pas
fpkg.pas
fppu.pas
* Allow to disable 8.3 filename search
2023-11-12 09:55:30 +01:00
gendef.pas
+ implement initial compiler support for Win64 on Aarch64
2020-04-21 06:04:22 +00:00
globals.pas
* Allow to disable 8.3 filename search
2023-11-12 09:55:30 +01:00
globstat.pas
globtype.pas
* Allow to disable 8.3 filename search
2023-11-12 09:55:30 +01:00
hlcg2ll.pas
hlcgobj.pas
+ introduced thlcgobj.a_jmp_always_pascal_goto - same as .a_jmp_always, but generated by a pascal goto statement
2023-10-22 04:12:59 +03:00
htypechk.pas
nested procvars: support assignments when switch not active
2023-11-25 22:35:55 +01:00
impdef.pas
import.pas
ldscript.pas
* SetString needs correctly typed argument
2023-07-25 16:06:53 +02:00
link.pas
* fix (hopefully) build without an ld.bfd variant
2023-03-02 22:56:23 +01:00
macho.pas
machoutils.pas
Makefile
human68k: regenerated Makefiles
2023-11-30 23:43:27 +00:00
Makefile.fpc
Avoid troubles with exported directories
2023-10-03 10:14:04 +00:00
MPWMake
msgidx.inc
Add new option_switch_bin_to_src_assembler_cross_endian message
2023-11-12 17:26:19 +00:00
msgtxt.inc
Add new option_switch_bin_to_src_assembler_cross_endian message
2023-11-12 17:26:19 +00:00
nadd.pas
* check for *-1 multiplications after folding, resolves #40448
2023-11-12 22:30:43 +01:00
nbas.pas
* Adjustment to TBLockNode.pass_1 to actually strip nothing nodes
2023-03-03 21:07:31 +00:00
ncal.pas
+ add a tcallnodeflag value that prohibits the tcallnode.pass_typecheck to return a procvar in case of a call without parameters with a found symbol, but no suitable procdef
2023-06-30 17:11:43 +02:00
ncgadd.pas
ncgbas.pas
ncgcal.pas
Short version of the mips code genration bug
2022-10-29 21:34:00 +01:00
ncgcnv.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
ncgcon.pas
ncgflw.pas
+ introduced thlcgobj.a_jmp_always_pascal_goto - same as .a_jmp_always, but generated by a pascal goto statement
2023-10-22 04:12:59 +03:00
ncghlmat.pas
ncginl.pas
ncgld.pas
* hopefully final fix after 9848349610
2022-09-14 22:34:50 +02:00
ncgmat.pas
ncgmem.pas
ncgnstfl.pas
ncgnstld.pas
ncgnstmm.pas
ncgobjc.pas
ncgopt.pas
ncgrtti.pas
Create invoke helper if requested and reference it in RTTI
2023-07-13 07:32:21 +00:00
ncgset.pas
tcginnode.pass_generate_code: use tlhcgobj.g_undefined_ok
2023-01-20 21:07:18 +01:00
ncgutil.pas
hlcgobj: new getlocal and recordnewsymloc methods
2022-06-04 22:26:40 +02:00
ncgvmt.pas
* make the VMT symbol and type def of the corresponding class or object instead of having them be global
2022-05-26 21:42:51 +02:00
ncnv.pas
* Do not insert widechar -> ansichar conversion node in const declaration
2023-07-22 08:26:22 +00:00
ncon.pas
tstringconstnode.changestringtype: fix buffer overrun
2022-07-06 22:25:05 +02:00
nflw.pas
* fix #40500 : do a for-in on a string variable using low(strvar) to high(strvar) so that zero based strings are handled correctly
2023-11-07 20:28:15 +01:00
ngenutil.pas
LLVM: fix double init/fini of local managed variables accessed from nested functions
2023-09-14 15:38:21 +02:00
ngtcon.pas
WPO: fix dead code detection, and handle procvars
2023-03-24 21:22:18 +01:00
ninl.pas
default parameter values: fix crash
2023-09-11 21:35:07 +02:00
nld.pas
WPO: fix dead code detection, and handle procvars
2023-03-24 21:22:18 +01:00
nmat.pas
nmem.pas
WPO: fix dead code detection, and handle procvars
2023-03-24 21:22:18 +01:00
nobj.pas
* make the VMT symbol and type def of the corresponding class or object instead of having them be global
2022-05-26 21:42:51 +02:00
nobjc.pas
node.pas
* New node pruning methods
2023-02-21 20:44:02 +00:00
nopt.pas
* the right side of a concatenation of multiple ShortString values can directly pass any String[x] to the utility routine, because only the Length() is used, not High() and nothing is modified (also typed pointers must not be used for them); this allows for better code generation for strings with a maximum length < 255
2022-10-11 07:40:13 +02:00
nset.pas
nutils.pas
* generate correct dfa for subroutines declared as safecall
2022-11-05 16:56:24 +01:00
objcasm.pas
objcdef.pas
objcdef: remove duplicate variant start check
2022-06-06 23:12:53 +02:00
objcgutl.pas
Add aarch64-iphonesim target
2023-03-27 18:45:00 +00:00
objcutil.pas
objc: use compile-time macOS version checks
2022-09-16 11:21:05 +02:00
ogbase.pas
+ introduced methods for writing endian-specific integers to TObjSection
2023-11-02 13:15:44 +02:00
ogcoff.pas
Add unit specifiers for tlsdirectory fields: they need to be PUInt from globtype unit
2023-08-11 08:38:43 +00:00
ogelf.pas
oglx.pas
ogmacho.pas
ogmap.pas
* SetString needs correctly typed argument
2023-07-25 16:06:53 +02:00
ognlm.pas
ogomf.pas
* use NtoLE instead of LEtoN in OMF DoRelocationFixup when converting from native to little endian. No functional changes, just better readability.
2023-11-02 14:28:48 +02:00
ogrel.pas
+ support writing of 32-bit and 64-bit relocations in the REL object writer
2022-07-12 19:16:23 +03:00
ogwasm.pas
+ added TWasmExeOutput class (not implemented, yet)
2023-11-17 00:12:18 +02:00
omfbase.pas
* patch by Rika: Replace some instances of manual work with endianness with cryptic oneliners, resolves #39719
2022-06-08 22:59:39 +02:00
optbase.pas
optconstprop.pas
* propertly check equality with the for-counter when propagating constants, resolves #39915
2022-09-24 20:39:43 +02:00
optcse.pas
* fixed a div by zero error, when compiling a wasi-hosted compiler
2023-10-22 01:11:17 +03:00
optdead.pas
optdeadstore.pas
* changed of do_optdeadstoreelim must be passed by reference as noted by Alexey Torgashin
2022-11-03 19:01:02 +01:00
optdfa.pas
* propagate life info properly
2022-11-15 22:06:56 +01:00
options.pas
m68k: initial compiler changes for Human68k (Sharp X68000) support
2023-11-30 23:43:27 +00:00
optloadmodifystore.pas
optloop.pas
opttail.pas
optutils.pas
* patch by Rika: Use Index* for pointer lists, resolves #40218
2023-03-25 21:32:29 +01:00
optvirt.pas
owar.pas
owbase.pas
owomflib.pas
Add globals to implementation _USES clause to prepare move of V_XXX constants to globals unit
2023-09-09 06:54:30 +00:00
parabase.pas
TCGParaLocation: remove alignment gap
2022-06-04 22:26:40 +02:00
paramgr.pas
parser.pas
* implement assignment of procedure and method variables and routines (global, instance and nested) to function references
2022-05-26 21:44:24 +02:00
pass_1.pas
* fix compilation with -dEXTDEBUG
2023-02-24 20:39:13 +01:00
pass_2.pas
* New 'do not execute' flag for notes and respective internal error triggering
2023-02-21 20:44:02 +00:00
pbase.pas
* Forbid use of string alias in system unit
2023-07-22 08:26:22 +00:00
pcp.pas
pdecl.pas
* Unicode resource strings
2023-07-25 16:06:53 +02:00
pdecobj.pas
* Generate hidden class to be used for TVirtualInterface (wasm only)
2023-07-11 08:36:57 +00:00
pdecsub.pas
* fix #40381 : also check for hints when parsing the parameters of a routine (including open array parameters) or the result type of a function
2023-09-08 15:54:08 +02:00
pdecvar.pas
Fixing trying to consume ID for anonymous switch field
2023-09-28 22:42:49 +00:00
pexports.pas
+ print an error message, in case 'promising' exports are used on non-WebAssembly platform
2023-06-16 15:44:58 +03:00
pexpr.pas
* Properly zero-terminate ansistring when calling unicode2ascii
2023-11-15 18:58:20 +01:00
pgentype.pas
pgenutil.pas
* Refer to bugreport for internal error 20231102
2023-11-08 00:04:18 +01:00
pinline.pas
pkgutil.pas
pmodules.pas
* Allow System.Variants (Delphi-compatible name) to be found when inserting variants unit
2023-07-27 18:40:34 +02:00
pp.lpi
pp.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
pparautl.pas
* fix #40142 and #40324 : don't alias the function name to the $result variable for anonymous functions unless an explicit result name is provided
2023-06-23 17:06:41 +02:00
ppc68k.lpi
ppc8086.lpi
ppcaarch64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcarm.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcavr.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcjvm.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcmips64el.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcmips.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcmipsel.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcppc64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcppc64le.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcppc.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcriscv32.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcriscv64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcsparc64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcsparc.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcwasm32.lpi
+ always call resolve_labels_complex, if DEBUG_WASM_GOTO is defined.
2023-10-16 23:04:11 +03:00
ppcx64.lpi
* Unicode resource strings
2023-07-25 16:06:53 +02:00
ppcx64llvm.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcxtensa.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcz80.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppheap.pas
ppu.pas
* for unique type aliases keep track of the original def
2023-06-23 16:15:27 +02:00
procdefutil.pas
* revert 430bcac389
as with the change that the functions to insert hidden parameters are idempotent this is no longer required and also wrong as uses of the deleted symbols aside from Self and the framepointer would be left dangling
2023-06-16 16:16:58 +02:00
procinfo.pas
+ add method to find a procinfo for a nested function by the corresponding procdef
2022-05-26 21:44:24 +02:00
psabiehpi.pas
pstatmnt.pas
* do not crash on illegal with statement, resolves #40118
2023-01-18 23:03:28 +01:00
psub.pas
default values: store as staticvarsyms in staticsymtable
2023-08-15 21:13:48 +02:00
psystem.pas
* Define char as AnsiChar
2023-07-22 08:26:22 +00:00
ptconst.pas
ptype.pas
* fix #40504 : always provide the global enum symbol for anonymous enum types (e.g. as part of a set)
2023-11-07 20:33:55 +01:00
raatt.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
rabase.pas
rasm.pas
rautils.pas
* do not warn on lea e/rsp with negative address offset, part of #40113
2023-01-15 23:06:05 +01:00
README.txt
rescmn.pas
rgbase.pas
rgobj.pas
Rename fields of tspillregsinfo record to avoid having same field names as treginfo record
2023-09-26 18:18:04 +00:00
scandir.pas
* $NAMESPACES directive
2023-07-26 09:45:53 +02:00
scanner.pas
* patch by lagprogramming: Improvement of function SetCompileModeSwitch, resolves #40525
2023-11-19 13:37:37 +01:00
switches.pas
* $P/$OpenStrings is supposed to be a local switch, so change that accordingly
2022-10-08 13:52:32 +02:00
symbase.pas
symconst.pas
* Additional fields/enums for invoke helper
2023-07-13 07:32:21 +00:00
symcreat.pas
Create invoke helper if requested and reference it in RTTI
2023-07-13 07:32:21 +00:00
symdef.pas
* Add is_systemunit_unicode function (cchartype suymbol)
2023-07-22 08:26:22 +00:00
symsym.pas
dbgllvm: support for record field debug information
2022-06-06 23:12:53 +02:00
symtable.pas
* Check that system unit is actually loaded before using it to search for system symbols
2023-06-19 15:33:15 +02:00
symtype.pas
* some error messages use nicer symbol names
2023-04-01 22:34:37 +02:00
symutil.pas
JVM: add typesym for anonymous record typed constants
2023-02-05 10:58:59 +01:00
syscinfo.pas
systems.inc
tabs to spaces cosmetics. no functional change
2023-11-30 23:43:27 +00:00
systems.pas
human68k: this system has internal sysinit
2023-11-30 23:43:27 +00:00
tgobj.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
tokens.pas
+ also allow declaring an external as 'suspending first'
2023-06-13 09:56:44 +03:00
triplet.pas
Add aarch64-iphonesim target
2023-03-27 18:45:00 +00:00
verbose.pas
Add -vj option in options unit to set V_Parallel
2023-09-09 07:49:22 +00:00
version.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
versioncmp.pas
Missing file from b26703feaa
2022-09-16 15:22:05 +02:00
wasmbase.pas
+ introduced TWasmCustomDebugSectionType
2022-08-03 23:04:53 +03:00
widestr.pas
wpo.pas
wpobase.pas
WPO: fix dead code detection, and handle procvars
2023-03-24 21:22:18 +01:00
wpoinfo.pas