summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* + Aarch64: directly inline code for frac(...)florian2021-04-252-12/+47
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49261 3ad0048d-3df7-0310-abae-a5850022a9f2
* + Aarch64: use frintz for int(...) instead of creating a helper callflorian2021-04-252-16/+38
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49260 3ad0048d-3df7-0310-abae-a5850022a9f2
* * workaround for the raise node generating invalid WebAssembly code fornickysn2021-04-241-4/+5
| | | | | | | | | | | | obtaining the current address. Note that exception handling in WebAssembly doesn't work. This only fixes the raise node enough to generate valid (but not correct) WebAssembly code. This is a temporary fix to allow the SysUtils unit to be compiled. Eventually, exception handling for WebAssembly will need to be rewritten entirely, in order to make exceptions work properly. git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49259 3ad0048d-3df7-0310-abae-a5850022a9f2
* * override the raise node for WebAssembly and copy the generic pass_1nickysn2021-04-241-2/+69
| | | | | | | | implementation. No functional changes. git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49258 3ad0048d-3df7-0310-abae-a5850022a9f2
* * fpsr and fpcr are 64 bit on aarch64florian2021-04-241-8/+8
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49257 3ad0048d-3df7-0310-abae-a5850022a9f2
* fcl-passrc: started specialize type reference a<b>.cmattias2021-04-244-11/+49
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49256 3ad0048d-3df7-0310-abae-a5850022a9f2
* pastojs: rtti of async function: pfAsyncmattias2021-04-242-12/+22
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49255 3ad0048d-3df7-0310-abae-a5850022a9f2
* fcl-passrc: started example issue 38784mattias2021-04-241-1/+29
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49254 3ad0048d-3df7-0310-abae-a5850022a9f2
* pastojs: specialize try except on, issue 38795mattias2021-04-243-1/+77
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49253 3ad0048d-3df7-0310-abae-a5850022a9f2
* Fix gotpcrel relocation for TESTQ x86_64 instructionpierre2021-04-233-1/+56
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49252 3ad0048d-3df7-0310-abae-a5850022a9f2
* * improved system unit dependenciesflorian2021-04-232-2/+2
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49251 3ad0048d-3df7-0310-abae-a5850022a9f2
* * avoid rangecheck mantis 0038791marco2021-04-231-1/+2
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49250 3ad0048d-3df7-0310-abae-a5850022a9f2
* * use $IF DEFINED instead of $IFDEF for consistency (and is required for 3.2.2)svenbarth2021-04-231-1/+1
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49249 3ad0048d-3df7-0310-abae-a5850022a9f2
* * NDS: fix condition when to default to apptype arm9svenbarth2021-04-231-1/+1
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49248 3ad0048d-3df7-0310-abae-a5850022a9f2
* * fixed MSecsToTimeStamp by Lagunov Aleksey, resolves #38631florian2021-04-222-5/+30
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49247 3ad0048d-3df7-0310-abae-a5850022a9f2
* Remove unused, obsolete -dBROWSERLOG optionpierre2021-04-223-3/+3
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49246 3ad0048d-3df7-0310-abae-a5850022a9f2
* * patch by Wallaby, mantis 0038382, load filename via -W functionmarco2021-04-221-2/+5
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49245 3ad0048d-3df7-0310-abae-a5850022a9f2
* * use W variant to get localestrs.marco2021-04-221-4/+8
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49244 3ad0048d-3df7-0310-abae-a5850022a9f2
* * moved warning about suspicious comp assignment to type check pass, ↵florian2021-04-213-5/+12
| | | | | | | | catches also assignments of constants git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49242 3ad0048d-3df7-0310-abae-a5850022a9f2
* * Forgot to commitmichael2021-04-203-0/+3399
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49241 3ad0048d-3df7-0310-abae-a5850022a9f2
* * Mustache templates implementationmichael2021-04-2028-0/+4225
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49240 3ad0048d-3df7-0310-abae-a5850022a9f2
* sinclairql: added an entirely stub (for now) sysutils unit. added a classes ↵karoly2021-04-204-4/+556
| | | | | | unit. enabled building the whole rtl git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49239 3ad0048d-3df7-0310-abae-a5850022a9f2
* fcl-db: return default values for (published) properties where getters are ↵lacak2021-04-201-1/+7
| | | | | | not implemented yet. git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49238 3ad0048d-3df7-0310-abae-a5850022a9f2
* * AArch64: fix storing a 32 bit value in the lower 32 bits of a 64 bitjonas2021-04-192-1/+30
| | | | | | subsetreg (mantis #38766) git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49236 3ad0048d-3df7-0310-abae-a5850022a9f2
* * patch by J. Gareth Moreton: AArch64 OptPass1Shift register tracking ↵florian2021-04-191-7/+15
| | | | | | fault fix, resolves #38691 git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49235 3ad0048d-3df7-0310-abae-a5850022a9f2
* sinclairql: support the upcoming QL binary linking feature of vlink (still ↵karoly2021-04-193-3/+24
| | | | | | in development). it's behind an undocumented -WL switch now. also, reduce the amount of used dataspace by the size of the relocation table in the current linking mode git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49234 3ad0048d-3df7-0310-abae-a5850022a9f2
* m68k: added support to references like (a0,d0.w) in inline assembly, also ↵karoly2021-04-195-29/+42
| | | | | | fixed a bug, where sometimes the index register would have been randomly set as smaller than .l size, when the size wasn't specified git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49233 3ad0048d-3df7-0310-abae-a5850022a9f2
* sinclairql: hopefully fix off-by-one processing in the packed relocs codekaroly2021-04-191-1/+1
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49232 3ad0048d-3df7-0310-abae-a5850022a9f2
* * if left is a smaller type, then an extension operation for shr can be removedflorian2021-04-181-14/+30
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49231 3ad0048d-3df7-0310-abae-a5850022a9f2
* Handle NIL entries in deflist after commit 48986pierre2021-04-184-22/+36
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49230 3ad0048d-3df7-0310-abae-a5850022a9f2
* Add systems_openbsd to suppported_targets_x_smallr and modify ↵pierre2021-04-182-2/+5
| | | | | | GenerateExecutable in t_bsd unit accordingly git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49229 3ad0048d-3df7-0310-abae-a5850022a9f2
* * fix for Mantis #38771: the owner of the procdef might be Nil in case of a ↵svenbarth2021-04-182-1/+24
| | | | | | | | specialization (that virtual can't be used on generics is caught later on) + added test git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49228 3ad0048d-3df7-0310-abae-a5850022a9f2
* pastojs: clean upmattias2021-04-181-1/+1
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49227 3ad0048d-3df7-0310-abae-a5850022a9f2
* pas2js: fixed delay init specializations after loading impl sectionsmattias2021-04-183-32/+111
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49226 3ad0048d-3df7-0310-abae-a5850022a9f2
* * Fix issue ID 38772michael2021-04-181-1/+1
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49225 3ad0048d-3df7-0310-abae-a5850022a9f2
* Add fForceUseForwardSlash to TLinkRes class, used for vlink linker on hosts ↵pierre2021-04-177-7/+31
| | | | | | using backslashes git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49223 3ad0048d-3df7-0310-abae-a5850022a9f2
* * avoid leaving a dangling pointer in pparautl.proc_add_definition to preventnickysn2021-04-171-0/+5
| | | | | | | | use after free in different parts of the compiler git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49222 3ad0048d-3df7-0310-abae-a5850022a9f2
* + started working on the SysUtils unit for the WASI platformnickysn2021-04-171-0/+283
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49220 3ad0048d-3df7-0310-abae-a5850022a9f2
* * Apply fix from bug #0038734 from Andrea Mauri to update vpbyte after ↵marco2021-04-171-0/+1
| | | | | | fillbuffer in a loop. The second instance of fillbuffer is safe, because it is at the procedure exit, and vpbyte is a local variable. git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49219 3ad0048d-3df7-0310-abae-a5850022a9f2
* * fixed the value passing of record parameters with non-scalar value size on thenickysn2021-04-171-1/+1
| | | | | | | | WebAssembly target git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49218 3ad0048d-3df7-0310-abae-a5850022a9f2
* + fixed code generation for high(dynarray) for the WebAssembly targetnickysn2021-04-171-1/+61
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49217 3ad0048d-3df7-0310-abae-a5850022a9f2
* + compile the sysconst unit for wasm32-wasinickysn2021-04-172-107/+115
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49216 3ad0048d-3df7-0310-abae-a5850022a9f2
* * { ... } is no a longer valid comment in aarch64 assemblerflorian2021-04-171-4/+4
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49215 3ad0048d-3df7-0310-abae-a5850022a9f2
* * improved .gitignoreflorian2021-04-171-0/+6
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49214 3ad0048d-3df7-0310-abae-a5850022a9f2
* * fixed the support for infinity and nan float literal values in the webassemblynickysn2021-04-161-2/+2
| | | | | | | | llvm-mc asm writer git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49213 3ad0048d-3df7-0310-abae-a5850022a9f2
* + Aarch64: completed LSE support for all interlocked operationsflorian2021-04-166-13/+107
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49212 3ad0048d-3df7-0310-abae-a5850022a9f2
* sinclairql: added startup code support for the 'packed' relocation table ↵karoly2021-04-161-0/+24
| | | | | | format in vlink. disabled for now. git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49211 3ad0048d-3df7-0310-abae-a5850022a9f2
* m68k: always use ELF objects with vasm for improved cross-compatibility with ↵karoly2021-04-161-5/+4
| | | | | | other tools and compilers git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49210 3ad0048d-3df7-0310-abae-a5850022a9f2
* pastojs: fixed insert arraymattias2021-04-151-1/+2
| | | | git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49209 3ad0048d-3df7-0310-abae-a5850022a9f2
* * AArch64: fix spilling integer registers to stack offsets that cannot bejonas2021-04-142-3/+74
| | | | | | | encoded directly into the spilling instructions (second part of mantis #38053) git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@49207 3ad0048d-3df7-0310-abae-a5850022a9f2