..
aarch64
* support marking defs created via the getreusable*() class methods as
2015-11-04 20:46:18 +00:00
arm
Make relocation type more precise compared to output of gas.
2016-01-05 07:23:20 +00:00
avr
* set a proper sram base for the avrsim controller type
2015-12-12 22:37:41 +00:00
generic
Moved tcontrollerdatatype out into cpuinfo.
2015-09-07 20:36:54 +00:00
html
i386
* pushf and popf are 8086 level instructions, not 186+
2015-12-17 15:23:21 +00:00
i8086
* pushf and popf are 8086 level instructions, not 186+
2015-12-17 15:23:21 +00:00
jvm
* implement sizeof/typeof completely at the node level, based on
2015-12-27 14:22:06 +00:00
llvm
+ vectorized dead-strippable section support for LLVM
2015-12-30 21:55:29 +00:00
m68k
m68k: various cleanups and improvements in the GAS assembler writer: pass operands to the helpers by reference, removed a few extra shortstring copies, cleanups
2016-01-05 04:12:00 +00:00
mips
* MIPS: Fixed code generation for PIC calls to local functions. Uncovered by r32803, before that the buggy branch was never taken because all functions were global.
2016-01-04 18:13:18 +00:00
msg
+ support for the .code directive in arm inline assembler
2016-01-03 22:08:25 +00:00
powerpc
* fixed setting the paraloc shift value for data whose size is not a power
2015-12-10 22:45:59 +00:00
powerpc64
* support marking defs created via the getreusable*() class methods as
2015-11-04 20:46:18 +00:00
ppcgen
* converted register_maybe_adjust_setbase() to the high level code generator
2015-12-05 18:03:37 +00:00
sparc
* support marking defs created via the getreusable*() class methods as
2015-11-04 20:46:18 +00:00
systems
Applied patch from Michael Ring fixing the startup code for Freescale microcontrollers.
2015-12-02 18:44:20 +00:00
utils
+ non-functional 128 bit integer types (inaccessible from Pascal), for use
2015-12-26 20:00:33 +00:00
x86
* allow 32-bit operand sizes in the i8086 version of Tx86Operand.SetSize, so
2016-01-06 18:06:34 +00:00
x86_64
* pushf and popf are 8086 level instructions, not 186+
2015-12-17 15:23:21 +00:00
aasmbase.pas
+ tasmlabel.createstatic() constructor for creating static data labels
2015-03-27 21:25:40 +00:00
aasmcnst.pas
+ tai_aggregatetypedconst.changetorecord() to change the type of an
2015-12-25 21:05:40 +00:00
aasmdata.pas
* put the code for pure assembler routines in a separate asmlist, so
2015-09-12 23:32:21 +00:00
aasmsym.pas
aasmtai.pas
+ support for the .code directive in arm inline assembler
2016-01-03 22:08:25 +00:00
aggas.pas
* support custom section names for Darwin platforms
2015-11-21 12:36:13 +00:00
aopt.pas
* Fixed notes "var is assigned but not used".
2015-09-17 13:03:04 +00:00
aoptbase.pas
aoptcs.pas
aoptda.pas
aoptobj.pas
* Fixed general peephole optimization of conditional jumps after r30446. It has been broken, since r30446 had added some IsJumpToLabel() checks, which tests for unconditional jump, but the optimization code expects also conditional jumps.
2015-10-21 15:35:54 +00:00
assemble.pas
+ support for the .code directive in arm inline assembler
2016-01-03 22:08:25 +00:00
blockutl.pas
Extend tstaticvarsym (and by extension tabstractnormalvarsym) with the capability to create it as unregistered if needed.
2015-11-20 11:15:30 +00:00
browcol.pas
catch.pas
ccharset.pas
cclasses.pas
* since T(Tag)HashSet always forces the size to a power of 2, use "and"
2015-10-14 16:44:02 +00:00
cfidwarf.pas
cfileutl.pas
* removed hack to disable dircache for DragonFly BSD now that its dirent
2015-12-24 10:54:53 +00:00
cg64f32.pas
* add "doregister" parameter to torddef.create, and don't register temporary
2015-10-13 15:59:06 +00:00
cgbase.pas
+ initialize DS with the current unit's data segment in the function entry code
2015-09-03 21:44:16 +00:00
cghlcpu.pas
* synchronized with privatetrunk till r30095
2015-03-05 20:32:15 +00:00
cgobj.pas
* correctly handle negative paraloc shift values for non power-of-2 sized
2015-12-10 22:45:56 +00:00
cgutils.pas
* define avr => cpu8bitalu
2015-09-13 21:07:23 +00:00
cmsgs.pas
comphook.pas
+ don't abuse status.currentsourcepath to pass on PPU names if the source is unavailable, causes side effects with other frontends (like the IDE). Improved solution for Mantis #27588
2015-03-29 19:05:19 +00:00
compiler.pas
Use general_e_exception_raised if Compiler generates an uncaught exception
2015-09-23 16:49:24 +00:00
compinnr.inc
- reverted partial commit of merge
2015-01-21 23:24:37 +00:00
comprsrc.pas
+ ELF/ppc64le resource support
2015-03-14 18:36:32 +00:00
constexp.pas
COPYING.txt
cpid.pas
crefs.pas
cresstr.pas
* emit all resource strings and internal dynamic string data using the
2015-12-25 21:05:26 +00:00
cstreams.pas
cutils.pas
* Removed lot of unused vars.
2015-09-17 12:48:58 +00:00
cwindirs.pp
dbgbase.pas
* don't generate debug info for class fields in generic types
2014-06-10 19:05:10 +00:00
dbgdwarf.pas
* add support in the debug info for the dummy s128bit/u128bit types added
2015-12-27 11:45:24 +00:00
dbgstabs.pas
* add support in the debug info for the dummy s128bit/u128bit types added
2015-12-27 11:45:24 +00:00
dbgstabx.pas
Do not consider ansi/wide/unicode strings as taggable for stabs
2014-04-22 22:32:14 +00:00
defcmp.pas
* better estimation of compatibility of array constructors with open arrays, resolves issue #29244
2016-01-04 23:10:45 +00:00
defutil.pas
- removed symcpu dependencies
2015-06-13 22:47:59 +00:00
dirparse.pas
elfbase.pas
export.pas
expunix.pas
* synchronized with privatetrunk till r30095
2015-03-05 20:32:15 +00:00
finput.pas
+ implemented exporting of functions for the win16 target
2015-09-27 00:48:35 +00:00
fmodule.pas
* free a bunch of extra data after a unit is compiled, as it is no longer
2015-10-30 15:12:37 +00:00
fpccrc.pas
fpcdefs.inc
Allow use of stabs for 64-bit systems with -dUSE_STABS_64
2015-10-29 09:23:30 +00:00
fppu.pas
* only write the parts of the unit localsymtables that are actually needed:
2015-10-25 19:22:00 +00:00
gendef.pas
globals.pas
* Use integer components of date/time directly, instead of converting them into floating-point TDateTime and immediately back.
2015-12-19 14:44:42 +00:00
globstat.pas
globtype.pas
* changed the asizeint and asizeuint to 32-bit on CPUs with 16-bit address
2015-11-25 15:35:38 +00:00
hlcg2ll.pas
removed a redundant zero extension from location_force_reg, which occured if the source location was a smaller than 32bit subreg, and the destination was 64bit. hregister is always overwritten in the codepath below anyway.
2015-12-13 02:08:24 +00:00
hlcgobj.pas
* fixed type correctness of array parameter handling for calls to
2015-12-28 15:06:29 +00:00
htypechk.pas
+ non-functional 128 bit integer types (inaccessible from Pascal), for use
2015-12-26 20:00:33 +00:00
impdef.pas
- reverted partial commit of merge
2015-01-21 23:24:37 +00:00
import.pas
ldscript.pas
link.pas
* removed DLLsource global variable and replaced its uses with
2015-12-17 15:23:05 +00:00
macho.pas
machoutils.pas
Makefile
m68k: disabled the force-enabled stack checking for m68k-amiga when compiling the compiler, which was enabled since forever. the current Amiga RTL startup code supports setting stack size programmatically, therefore very low default stack on Amiga is no longer a problem
2016-01-05 02:14:40 +00:00
Makefile.fpc
m68k: disabled the force-enabled stack checking for m68k-amiga when compiling the compiler, which was enabled since forever. the current Amiga RTL startup code supports setting stack size programmatically, therefore very low default stack on Amiga is no longer a problem
2016-01-05 02:14:40 +00:00
MPWMake
msgidx.inc
+ support for the .code directive in arm inline assembler
2016-01-03 22:08:25 +00:00
msgtxt.inc
+ support for the .code directive in arm inline assembler
2016-01-03 22:08:25 +00:00
nadd.pas
* fixed comparison of two procvars in the i8086 compact and medium memory models
2015-10-27 17:24:33 +00:00
nbas.pas
+ new parser-only node class to handle Delphi-mode inline specializations
2015-09-11 12:58:25 +00:00
ncal.pas
* hidden high parameter must be of type ptrsinttype, resolves issue #29204
2015-12-26 20:48:50 +00:00
ncgadd.pas
* converted register_maybe_adjust_setbase() to the high level code generator
2015-12-05 18:03:37 +00:00
ncgbas.pas
* synchronized with privatetrunk till r30095
2015-03-05 20:32:15 +00:00
ncgcal.pas
* fixed types in tcgcallnode.load_block_invoke()
2015-12-05 18:03:54 +00:00
ncgcnv.pas
* fixed the parameter order for thlcgobj.g_load_const_field_by_name()
2015-12-05 18:03:48 +00:00
ncgcon.pas
* fixed shortstring constant emission after r28210: the terminating #0
2015-12-26 20:01:06 +00:00
ncgflw.pas
* fixed type of stored exception class instance in on-node
2015-11-21 12:37:33 +00:00
ncghlmat.pas
* replaced current_procinfo.currtrue/falselabel with storing the true/false
2015-08-27 18:28:57 +00:00
ncginl.pas
* implement sizeof/typeof completely at the node level, based on
2015-12-27 14:22:06 +00:00
ncgld.pas
- disable x86-specific workarounds when using LLVM (even when targeting x86)
2015-12-28 15:06:50 +00:00
ncgmat.pas
+ support mmregisters in the generic unaryminus code for floats
2015-09-12 23:33:50 +00:00
ncgmem.pas
* converted open array range checking to the high level code generator
2015-11-27 14:44:29 +00:00
ncgnstld.pas
* ensure that we don't firstpass a tcgnestloadnode twice, as it
2015-12-28 15:06:36 +00:00
ncgnstmm.pas
ncgobjc.pas
ncgopt.pas
ncgrtti.pas
* don't reuse defs when writing RTTI for stored properties, as their layout
2015-12-27 11:14:41 +00:00
ncgset.pas
* converted register_maybe_adjust_setbase() to the high level code generator
2015-12-05 18:03:37 +00:00
ncgutil.pas
* converted register_maybe_adjust_setbase() to the high level code generator
2015-12-05 18:03:37 +00:00
ncgvmt.pas
* fixed external wrapper generation on llvm
2015-11-22 11:49:40 +00:00
ncnv.pas
- reverted accidentally committed code with r32463
2015-11-22 11:52:30 +00:00
ncon.pas
+ write the value of a pointer constant node in printnodedata
2015-08-31 20:03:47 +00:00
nflw.pas
- removed variable notification support, it's not used and superceded by
2015-10-02 17:00:25 +00:00
ngenutil.pas
* if a function result has been migrated to the parentfpstruct because it is
2015-12-20 20:56:08 +00:00
ngtcon.pas
* removed special-purpose code for constant chars while parsing typed string
2015-12-11 15:33:28 +00:00
ninl.pas
* implement sizeof/typeof completely at the node level, based on
2015-12-27 14:22:06 +00:00
nld.pas
* always set the resultdef for variant array constructors correctly, so we
2015-11-04 20:46:10 +00:00
nmat.pas
* simplify "div -1" to unaryminusn, not just for performance reasons but
2015-12-08 15:57:07 +00:00
nmem.pas
* set nf_write flag correctly for subscript nodes, resolves issue #28713
2015-12-06 19:17:50 +00:00
nobj.pas
* give fields added for VMT definition of TP-style objects the same
2015-12-27 14:21:59 +00:00
nobjc.pas
node.pas
+ new parser-only node class to handle Delphi-mode inline specializations
2015-09-11 12:58:25 +00:00
nopt.pas
nset.pas
* fixed "case <string> of" with multiple labels for a single statement after
2015-07-03 20:04:25 +00:00
nstate.pas
nutils.pas
* support static fields in nested types in records, by always including
2015-11-24 16:04:19 +00:00
objcdef.pas
+ support for http://en.wikipedia.org/wiki/Blocks_(C_language_extension)
2014-07-18 09:15:22 +00:00
objcgutl.pas
* write nil instead of a reference to _objc_empty_vtable for iOS and the
2015-10-28 21:00:57 +00:00
objcutil.pas
* changed getpointerdef() into a tpointerdef.getreusable() class method
2015-06-22 08:17:49 +00:00
ogbase.pas
Make relocation type more precise compared to output of gas.
2016-01-05 07:23:20 +00:00
ogcoff.pas
* Fixed notes "var is assigned but not used".
2015-09-17 13:03:04 +00:00
ogelf.pas
* Removed unused vars for mipsel compiler.
2015-09-17 15:46:30 +00:00
oglx.pas
* refactored the internal linker ar object reader object creation to allow using
2015-08-14 13:52:45 +00:00
ogmacho.pas
* store a pointer to the used tasminfo record in every assembler writer, so
2015-09-12 23:32:13 +00:00
ogmap.pas
* the code for displaying a symbol address in the linker map file moved to a
2015-08-24 22:12:00 +00:00
ognlm.pas
* store a pointer to the used tasminfo record in every assembler writer, so
2015-09-12 23:32:13 +00:00
ogomf.pas
+ added property to the omf object reader, specifying whether symbol names
2015-11-21 15:35:42 +00:00
omfbase.pas
* support writing omf libraries with size greater than 251 blocks
2015-11-07 16:54:23 +00:00
optbase.pas
optconstprop.pas
optcse.pas
* don't perform CSE on typeconversion nodes inserted for absolute
2015-07-04 22:28:31 +00:00
optdead.pas
* factored out the check for whether we have to generate dotted function
2015-03-14 18:35:25 +00:00
optdeadstore.pas
optdfa.pas
* Fixed notes "var is assigned but not used".
2015-09-17 13:03:04 +00:00
options.pas
VLink Support:
2015-11-15 01:18:30 +00:00
optloop.pas
- reverted partial commit of merge
2015-01-21 23:24:37 +00:00
opttail.pas
optutils.pas
optvirt.pas
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
2014-05-10 12:47:25 +00:00
owar.pas
* refactored the internal linker ar object reader object creation to allow using
2015-08-14 13:52:45 +00:00
owbase.pas
* support writing more than 1024 zeros in tobjectwriter.writezeros
2015-08-24 01:09:53 +00:00
owomflib.pas
* support writing omf libraries with size greater than 251 blocks
2015-11-07 16:54:23 +00:00
parabase.pas
+ support for constant call parameters on LLVM
2015-12-28 15:06:07 +00:00
paramgr.pas
* only copy the shiftval field from the original para location when creating
2015-12-05 18:03:59 +00:00
parser.pas
Use general_e_exception_raised if Compiler generates an uncaught exception
2015-09-23 16:49:24 +00:00
pass_1.pas
pass_2.pas
* fixed compilation of the compiler with -dEXTDEBUG after r31588
2015-09-12 11:55:54 +00:00
pbase.pas
Rework the way how "specialize" is handled. Instead of initializing the specialization of a full type declaration (including unit name and parent types) it is now considered part of the specialized type itself. This means that for example the following code:
2015-02-20 16:23:40 +00:00
pdecl.pas
* initialize variables to avoid warnings
2015-11-21 14:14:30 +00:00
pdecobj.pas
Implement support for parsing "generic [class] procedure" and "generic [class] function" in non-Delphi modes. Since "generic" is a prefix it is quite ugly to implement, but from a Pascal language point of view it fits better than "procedure generic xyz".
2015-11-20 16:50:58 +00:00
pdecsub.pas
Fix a few typos discovered by Blaise
2015-12-11 16:31:00 +00:00
pdecvar.pas
* initialize variables to avoid warnings
2015-11-21 14:14:30 +00:00
pexports.pas
Convert the Boolean parameters accept_equal, typeonly and hadspecialize of comp_expr(), sub_expr() and factor() to a set parameter and adjust all calls.
2015-11-07 21:45:03 +00:00
pexpr.pas
Fix for Mantis #29321 .
2016-01-04 22:02:24 +00:00
pgentype.pas
Fully enable generic functions, procedures and methods by allowing inline specializations in procedure bodies as well.
2015-11-21 16:52:09 +00:00
pgenutil.pas
Convert the Boolean parameters accept_equal, typeonly and hadspecialize of comp_expr(), sub_expr() and factor() to a set parameter and adjust all calls.
2015-11-07 21:45:03 +00:00
pinline.pas
o basic extended pascal support:
2015-11-15 15:13:36 +00:00
pmodules.pas
* removed DLLsource global variable and replaced its uses with
2015-12-17 15:23:05 +00:00
pp.lpi
+ support for http://en.wikipedia.org/wiki/Blocks_(C_language_extension)
2014-07-18 09:15:22 +00:00
pp.pas
- removed leftover alpha, ia64 and vis code
2015-08-28 22:31:29 +00:00
pparautl.pas
* hidden high parameter must be of type ptrsinttype, resolves issue #29204
2015-12-26 20:48:50 +00:00
ppc68k.lpi
ppc8086.lpi
+ started implementing a win16 target :)
2015-09-05 02:47:42 +00:00
ppcaarch64.lpi
ppcarm.lpi
Rebase to trunk revision
2015-02-15 16:08:18 +00:00
ppcavr.lpi
ppcjvm.lpi
ppcmips.lpi
ppcmipsel.lpi
ppcppc64.lpi
ppcppc.lpi
ppcsparc.lpi
ppheap.pas
ppu.pas
+ non-functional 128 bit integer types (inaccessible from Pascal), for use
2015-12-26 20:00:33 +00:00
ppx86_64.lpi
procinfo.pas
* replaced current_procinfo.currtrue/falselabel with storing the true/false
2015-08-27 18:28:57 +00:00
pstatmnt.pas
* In pure-assembler procedures, don't allocate/free any registers around the only assembler node. Such procedures don't use virtual registers or register allocator.
2015-12-07 18:32:35 +00:00
psub.pas
* don't make all procdef symbols global if we are using section-based
2015-12-30 21:55:32 +00:00
psystem.pas
* reverted r32746: *inttype shall be the normally used integer type, os*inttype shall be the int type with the max. size of integer registers
2015-12-29 15:07:58 +00:00
ptconst.pas
* synchronized with privatetrunk till r30095
2015-03-05 20:32:15 +00:00
ptype.pas
Implement support for parsing "generic [class] procedure" and "generic [class] function" in non-Delphi modes. Since "generic" is a prefix it is quite ugly to implement, but from a Pascal language point of view it fits better than "procedure generic xyz".
2015-11-20 16:50:58 +00:00
raatt.pas
* Replaced hacks with resetting 'c' to zero and decreasing inputpointer by boolean parameter to skipcomment and skipoldtpcomment. This parameter specifies whether first character of comment should be read.
2016-01-03 17:07:15 +00:00
rabase.pas
rasm.pas
* Moved local label infrastructure into tasmreader, reduces number of global vars. Functionality is not changed.
2014-04-05 09:43:13 +00:00
rautils.pas
* set operand size information when accessing fields in assembly
2015-12-02 15:53:22 +00:00
README.txt
regvars.pas
rescmn.pas
rgbase.pas
rgobj.pas
* Make trgobj.uses_registers method return True when registers of appropriate type are specified in list of used registers (after assembler blocks), but not used otherwise. This is a missing piece of r30011, enabling code generator to actually save/restore such registers. Resolves #28421 .
2015-12-07 19:12:20 +00:00
scandir.pas
* fixed a bug in the $targetswitch directive, which prevented target switches
2015-09-26 13:36:51 +00:00
scanner.pas
* Replaced hacks with resetting 'c' to zero and decreasing inputpointer by boolean parameter to skipcomment and skipoldtpcomment. This parameter specifies whether first character of comment should be read.
2016-01-03 17:07:15 +00:00
script.pas
switches.pas
+ generate proper win16 prologue/epilogue for exported routines (we don't yet
2015-09-26 18:04:59 +00:00
symbase.pas
* prevent new definitions being added to a global unit symtable after compilation of the implementation part started
2015-02-23 22:10:46 +00:00
symconst.pas
+ non-functional 128 bit integer types (inaccessible from Pascal), for use
2015-12-26 20:00:33 +00:00
symcreat.pas
* don't create the nestedvars struct for pure assembler routines, as
2015-12-26 20:01:14 +00:00
symdef.pas
* reverted r32746: *inttype shall be the normally used integer type, os*inttype shall be the int type with the max. size of integer registers
2015-12-29 15:07:58 +00:00
symsym.pas
* removed DLLsource global variable and replaced its uses with
2015-12-17 15:23:05 +00:00
symtable.pas
* handle typed constant definitions of variant records using different fields
2015-12-25 21:05:45 +00:00
symtype.pas
* converted the result of fullownerhierarchyname to tsymstr so it (and
2015-11-21 12:37:04 +00:00
symutil.pas
systems.inc
Add -Aas-sol to use native Solaris assembler
2015-10-29 15:10:27 +00:00
systems.pas
* Linux/AArch64 must also copy value parameters passed by reference on the
2015-10-20 12:58:53 +00:00
tgobj.pas
* suppress (harmless) range error
2015-05-31 16:50:50 +00:00
tokens.pas
o basic extended pascal support:
2015-11-15 15:13:36 +00:00
verbose.pas
+ don't abuse status.currentsourcepath to pass on PPU names if the source is unavailable, causes side effects with other frontends (like the IDE). Improved solution for Mantis #27588
2015-03-29 19:05:19 +00:00
version.pas
- removed leftover alpha, ia64 and vis code
2015-08-28 22:31:29 +00:00
widestr.pas
* fixed accidentally committed (harmless) typo in r32202
2015-11-04 13:03:45 +00:00
wpo.pas
wpobase.pas
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
2014-05-10 12:47:25 +00:00
wpoinfo.pas
* call "message" rather than "cgmessage" when throwing fatal errors, because
2014-07-18 09:09:21 +00:00