fpc/compiler/arm
Jonas Maebe 57bd6d2685 + merged nestedprocvars branch
+ support for nested procedural variables:
    o activate using {$modeswitch nestedprocvars} (compatible with all
      regular syntax modes, enabled by default for MacPas mode)
    o activating this mode switch changes the way the frame pointer is
      passed to nested routines into the same way that Delphi uses (always
      passed via the stack, and if necessary removed from the stack by
      the caller) -- Todo: possibly also allow using this parameter
      passing convention without enabling nested procvars, maybe even
      by default in Delphi mode, see mantis #9432
    o both global and nested routines can be passed to/assigned to a
      nested procvar (and called via them). Note that converting global
      *procvars* to nested procvars is intentionally not supported, so
      that this functionality can also be implemented via compile-time
      generated trampolines if necessary (e.g. for LLVM or CIL backends
      as long as they don't support the aforementioned parameter passing
      convention)
    o a nested procvar can both be declared using a Mac/ISO Pascal style
      "inline" type declaration as a parameter type, or as a stand-alone
      type (in the latter case, add "is nested" at the end in analogy to
      "of object" for method pointers -- note that using variables of
      such a type is dangerous, because if you call them once the enclosing
      stack frame no longer exists on the stack, the results are
      undefined; this is however allowed for Metaware Pascal compatibility)

git-svn-id: trunk@15694 -
2010-08-02 22:20:36 +00:00
..
aasmcpu.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
agarmgas.pas * changed tf_use_function_relative_addresses into an assembler flag (with 2009-12-06 13:21:28 +00:00
aoptcpu.pas * merged armthum branch 2009-10-04 09:03:44 +00:00
aoptcpub.pas
aoptcpuc.pas
aoptcpud.pas
armatt.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
armatts.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
armins.dat o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
armnop.inc
armop.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
armreg.dat o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
armtab.inc
cgcpu.pas * use new_section() instead of tai_section.create() everywhere 2010-06-26 10:50:14 +00:00
cpubase.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
cpuinfo.pas * enable node cse for all cpus as level 2 optimization 2010-01-17 12:28:28 +00:00
cpunode.pas * the objc1 unit has been renamed to objc 2009-09-27 15:24:50 +00:00
cpupara.pas + merged nestedprocvars branch 2010-08-02 22:20:36 +00:00
cpupi.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
cputarg.pas
itcpugas.pas
narmadd.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
narmcal.pas * changed tprocdef.funcretloc[] from a tlocation into a tcgpara so it can 2010-05-30 21:12:57 +00:00
narmcnv.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
narmcon.pas * fixed ARM and MIPS compilation after r14912 2010-02-18 21:19:17 +00:00
narminl.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
narmmat.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
narmset.pas
pp.lpi.template
raarm.pas
raarmgas.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmcon.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmdwa.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmnor.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmnum.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmrni.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmsri.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmsta.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmstd.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmsup.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rgcpu.pas o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00