The sources of the Free Pascal compiler, RTL, packages and utilities. See https://www.freepascal.org/ for more info.
Go to file
Pierre Muller e8a03ac8bc Try to fix crash in loongarch64 compiler
loongarch64 compiler has a specific routine,
  called fixupref that generates some instructions that are
  stored into a tasmlist given as an input parameter.
  This function returns a boolean,
  if the return value is false, the populated list gets
  sometimes discarded.
  This can lead to a later crash, because the unused
  and freed instructions might have been stored
  in live and live_end fields of the reginfo record
  used inside rgobj unit.

  The fix checks if any of the to be discarded instructions
  has been stored inside reginfo records,
  and resets the field in that case.

  The fix might need to be more general,
  because other parts of the compiler,
  like all optimization code, also remove
  instructions...
2023-09-26 18:18:04 +00:00
.gitlab Add two more templates to show the possibilities 2021-10-06 17:26:28 +00:00
compiler Try to fix crash in loongarch64 compiler 2023-09-26 18:18:04 +00:00
installer Add aarch64-iphonesim target 2023-03-27 18:45:00 +00:00
packages Improve i386 SHA1Transform further: remove some (14) reads, and use MOVBE if suddenly available. 2023-09-23 17:14:55 +00:00
rtl Regenerate Makefile's after changes for DOTTED support 2023-09-26 15:31:09 +02:00
tests * throw an error if instructions which needs an operand size is used with one operand being a reference without size 2023-09-16 23:25:31 +02:00
utils Commit new revision.inc 2023-09-25 21:04:36 +00:00
.gitattributes Use pascal hunk for diff output for pascal source files 2021-09-06 23:31:20 +02:00
.gitconfig * + .gitconfig with configuration for better diffing, needs a 2021-09-18 14:26:18 +02:00
.gitignore ignore compiled files 2023-07-13 08:42:07 +02:00
.gitlab-ci.yml + use linux tag in gitlab-ci.yml 2022-02-04 22:18:33 +01:00
fpmake_add1.inc
fpmake_proc1.inc
fpmake.pp
LICENSE
Makefile Update fpcsrc level Makefile using lakest trunk fpcmake utility 2023-09-24 21:14:20 +00:00
Makefile.fpc add ppsuf so that we can compiler loongarch fpc now 2023-02-05 19:18:48 +00:00
README.md

FPC Source code repository

Synopsis

This repository contains the sources of the Free Pascal compiler distribution.

It contains

  • The compiler sources in the directory compiler.
  • The run-time library in the directory rtl.
  • The packages distributed with the compiler in the directory packages.
  • Several utilities in the directory utils.
  • The compiler testsuite in the directory tests.

License

The compiler is licensed under GPL v2, the run-time files are licensed under modified LGPL. Both can be found in the LICENSE file, and the file rtl/COPYING.txt

Documentation

Extensive documentation can be found on the documentation website.