Commit Graph

54654 Commits

Author SHA1 Message Date
Jonas Maebe
09b6306f02 - removed outdated comment after r40373
git-svn-id: trunk@40375 -
2018-11-26 22:30:01 +00:00
Jonas Maebe
f98a9bea3c * cap the assumed alignment of pass-by-reference parameters to the minimum of
their default alignment, the alignment of locals, globals and constants
    (so that we don't overestimate the alignment of global normal set
     constants to 32 bytes, while the maximum const alignment is often only
     8 bytes)

git-svn-id: trunk@40374 -
2018-11-26 22:27:35 +00:00
Jonas Maebe
9a157a7749 * don't overwrite the alignment of locals set by the temp manager with the
standard alignment for the type (the maximum alignment for locals may
    be less, and it's set correctly by the temp manager)

git-svn-id: trunk@40373 -
2018-11-26 22:27:31 +00:00
Mattias Gaertner
9f7f43673f pastojs: added built-in procedure debugger
git-svn-id: trunk@40372 -
2018-11-26 09:36:02 +00:00
pierre
c46aa0ecb5 + Add new string SWarnRemoveNonEmptyDirectory
* Change SWarnUnregisteredResource into a debug string
  + Use ExcludeTrailingDelimiter to be sure to get the parent directory in Clean method.
  + Add call to CmdRemoveTrees if CmdRemmoveDirs fails in Clean method,
    but only if dir name if $FPCTARGET

git-svn-id: trunk@40371 -
2018-11-25 21:24:16 +00:00
Jonas Maebe
a7cb99f012 * when transforming the structure of a node tree involving full boolean
evaluation flags, also move the full boolean evaluation flags

git-svn-id: trunk@40367 -
2018-11-25 20:56:58 +00:00
Mattias Gaertner
ee65da4429 fcl-web: simpleserver: added option -m for mimetypes and default filename for darwin
git-svn-id: trunk@40366 -
2018-11-24 16:16:44 +00:00
pierre
deb3d5a0a9 + Add Debug message when resource file is found, but not registered.
+ Add missing "T.ResourceStrings:=True;" for all source units
    that generate the new debug message above.

git-svn-id: trunk@40365 -
2018-11-24 15:14:57 +00:00
joost
db80944f47 * Added fphttpstatus to fpmake.pp
git-svn-id: trunk@40364 -
2018-11-23 13:49:59 +00:00
pierre
234d442f71 Also disable fpdoc and pas2jni utils packages for targets not supporting fcl-process package
git-svn-id: trunk@40363 -
2018-11-23 13:29:01 +00:00
pierre
426e523a81 Fix go32v2 utils compilation by using the same OS limitation for utils-fppkg as in fcl-process package
git-svn-id: trunk@40362 -
2018-11-23 13:12:06 +00:00
florian
c43cae9231 * disable MovOpMov2MovOp optimization on x86-64 for now as it seems to break
git-svn-id: trunk@40361 -
2018-11-21 21:22:54 +00:00
florian
477d7be651 * building on i386-linux fixed
git-svn-id: trunk@40360 -
2018-11-21 19:19:24 +00:00
florian
ac37a54d79 + MovOpMov2MovOp optimization
git-svn-id: trunk@40359 -
2018-11-20 22:20:43 +00:00
pierre
c2e46dc8fc Add classes unit
git-svn-id: trunk@40358 -
2018-11-20 22:02:59 +00:00
Jonas Maebe
b96a8aee61 * don't generate tempsfinalize nodes in except filter procdefs, as that would
finalize the parent's temps twice (fix for r40345, mantis #34574)

git-svn-id: trunk@40357 -
2018-11-20 19:25:06 +00:00
Mattias Gaertner
74f950c88b pastojs: changed -Jpostproc to -Jpcmd
git-svn-id: trunk@40356 -
2018-11-19 09:48:48 +00:00
marcus
bf3bb18562 Fixed Win32/Win64 compilation after r40351
git-svn-id: trunk@40355 -
2018-11-18 20:34:29 +00:00
marcus
1bcafda4f4 Fixed compilation after r40351
git-svn-id: trunk@40354 -
2018-11-18 19:48:34 +00:00
Mattias Gaertner
250b9489f6 pas2jslib: set default paths
git-svn-id: trunk@40353 -
2018-11-18 18:50:26 +00:00
Mattias Gaertner
ae67021c8c pastojs: fixed compile on nodejs
git-svn-id: trunk@40352 -
2018-11-18 17:42:39 +00:00
Mattias Gaertner
d9f915964a pastojs: implemented -Jpostproc cmd ; to call a post processor
git-svn-id: trunk@40351 -
2018-11-18 17:34:43 +00:00
florian
ccb8e86560 * fixes arm
git-svn-id: trunk@40350 -
2018-11-18 14:16:20 +00:00
Jonas Maebe
ea69a5b372 * finalizetemps nodes should never be considered equal and have side effects
git-svn-id: trunk@40348 -
2018-11-18 11:07:28 +00:00
pierre
0052e4da81 * Use getasizeint/putasizeint for tfieldvarsym.fieldoffset
* Change CurrentPPUVersion

git-svn-id: trunk@40347 -
2018-11-18 10:32:13 +00:00
florian
9d56387e7f + new spilling heuristics which takes care of the usage weigth of a register,
not yet activated, can be selected by passing SPILLING_NEW when compiling the compiler

git-svn-id: trunk@40346 -
2018-11-18 10:11:13 +00:00
Jonas Maebe
3b9f5a5e96 * moved finalization of code generator temps to a node, so it can be getcopy'd
(needed for LLVM, where we need two copies of the finally code: one in case
     an exception occurs, and one in case none is raised)
   o also first finalize parameters and only then code generator temps, since
     in theory the former could create more of the latter

git-svn-id: trunk@40345 -
2018-11-17 22:38:36 +00:00
Jonas Maebe
d1361ca6ed * fixed adjustments of lower/upper bounds in range test optimization in case
of strictly smaller/greater comparisons (mantis #34385)

git-svn-id: trunk@40344 -
2018-11-17 22:38:31 +00:00
Mattias Gaertner
4dfb738130 pastojs: modeswitch OmitRTTI
git-svn-id: trunk@40343 -
2018-11-17 21:31:45 +00:00
Mattias Gaertner
1f061d0517 fcl-passrc: added modeswitch OmitRTTI: treat class section published as public and typeinfo() does not work on symbols declared with this switch
git-svn-id: trunk@40342 -
2018-11-17 21:31:12 +00:00
florian
cefb38b605 * better alignment of while loop heads
git-svn-id: trunk@40340 -
2018-11-17 15:08:24 +00:00
florian
ae8304f657 * set nf_write flag properly for vec. nodes of types with implicit dereferencing
git-svn-id: trunk@40339 -
2018-11-17 15:08:23 +00:00
florian
08d6ca7260 * better alignment on 386-linux
git-svn-id: trunk@40338 -
2018-11-17 15:08:22 +00:00
florian
6dbde11f5a * three operand shl for shifting by 2, 4 or 8 can be simulated by lea
git-svn-id: trunk@40337 -
2018-11-17 15:08:22 +00:00
pierre
bee9421f2a Change local variables offsetdec and extraoffset type to ASizeInt
git-svn-id: trunk@40326 -
2018-11-16 13:28:26 +00:00
pierre
23570bed33 Use same parameter type for update_reference_offset override
git-svn-id: trunk@40325 -
2018-11-16 13:26:56 +00:00
pierre
2761448f44 * Disable range check for m68k/aoptcpu unit
* Add missing change of var parameter p to next instruction
    in TryToOptimizeMove method after instruction removal.

git-svn-id: trunk@40324 -
2018-11-16 10:27:42 +00:00
pierre
11851d274c Fix riscv32 compilation error introduced in last commit
git-svn-id: trunk@40323 -
2018-11-16 10:24:27 +00:00
pierre
aebc8527ef Also disable range checking in arm/aoptcpu unit
git-svn-id: trunk@40322 -
2018-11-15 22:01:25 +00:00
florian
095bd6da7d * do not re-used gottpoff symbols as they are PC-relative
git-svn-id: trunk@40321 -
2018-11-15 20:07:56 +00:00
pierre
53a27fe7b3 Disable range check in m68k:tiscv32 and riscv64 cgcpu units
git-svn-id: trunk@40319 -
2018-11-15 16:58:40 +00:00
pierre
7c92412c74 Avoid overflow error in riscv code generator
git-svn-id: trunk@40318 -
2018-11-15 16:57:57 +00:00
florian
6a6ea6729f * i8086 compiler fixed, resolves #34552
git-svn-id: trunk@40316 -
2018-11-14 18:05:35 +00:00
pierre
4657f45e74 * Change first parameter type of function is_continuous_maks to aword type.
Add typecasts where needed to allow for successful compilation of arm-linux target
    with -CriotR options when building the compiler.

git-svn-id: trunk@40314 -
2018-11-14 13:13:19 +00:00
pierre
cacd8f28eb Try to avoid expectloc not set after first pass error for call node
git-svn-id: trunk@40309 -
2018-11-13 15:51:32 +00:00
pierre
122fd55564 + Add TEST_PARALLEL, adds -L option to DOTESTOPT
git-svn-id: trunk@40308 -
2018-11-13 15:12:22 +00:00
pierre
b4315f0f4f + Introduce PPC_SUFFIXES, new make variable that lists all ppc suffixes
for all different CPUs supported.
  * Use PPC_SUFFIXES in execlean and CPU_clean targets.
  * Also delete CPU/bin subbirectory.

git-svn-id: trunk@40307 -
2018-11-13 15:10:21 +00:00
Mattias Gaertner
2b36f8d177 pastojs: catch ECompilerTerminate while parsing params
git-svn-id: trunk@40305 -
2018-11-13 14:56:24 +00:00
Mattias Gaertner
67b3fd7e37 fcl-passrc: less hints
git-svn-id: trunk@40304 -
2018-11-13 14:29:01 +00:00
Mattias Gaertner
a67f016603 pastojs: fixed str(currency)
git-svn-id: trunk@40302 -
2018-11-13 14:03:32 +00:00