Commit Graph

70355 Commits

Author SHA1 Message Date
Michaël Van Canneyt
58560d333e * Keep old behaviour, but keep issue #40898 solved 2024-08-24 16:20:27 +02:00
Nikolay Nikolov
97ad8fafd8 * fix compilation error in test for OSes that have no HAS_MONITOR defined 2024-08-24 15:11:20 +03:00
Nikolay Nikolov
cad9cd22d3 * ignore the '-gl' parameter on WebAssembly, since it's impossible to implement
this feature on this target. WebAssembly is a Harvard architecture and allows
  no way for inspecting code addresses in stack traces from within the program
  itself. Maybe a future extension to the WebAssembly spec would allow that, but
  currently, it's not possible. The '-gl' option is ignored (producing only a
  warning, instead of a fatal error), because not having line info should not be
  fatal for most programs. It also reduces the number of test failures, since
  many tests compile with '-gl', but don't actually require the line info, it's
  just there for debugging purposes.
2024-08-24 14:31:31 +03:00
Nikolay Nikolov
184c612f78 + WebAssembly: allow specifying heapsize and maxheapsize larger than 2GiB
(WebAssembly has a 32-bit address space, so there's still a 4GiB limit)
2024-08-24 14:09:43 +03:00
Nikolay Nikolov
7fc6d5aaa1 + introduced method tscannerfile.readval64, similar to readval, but returns an int64 2024-08-24 13:58:49 +03:00
Nikolay Nikolov
71ada8453a + increase WebAssembly max memory limit for test tw11006.pp, because the test
runs out of memory with the default memory limit of 256 MiB
2024-08-24 13:19:08 +03:00
Nikolay Nikolov
d561390687 + increase WebAssembly max memory limit for test tmt1.pp, because the test runs
out of memory with the default memory limit of 256 MiB
2024-08-24 13:12:08 +03:00
mattias
f81d455094 fcl-css: fixed parsing --var 2024-08-24 11:16:01 +02:00
mattias
6128dcc735 fcl-css: resolver: var and custom attributes 2024-08-24 10:18:02 +02:00
mattias
ccbec9ee7d fcl-css: resolver: test warnings 2024-08-24 10:18:02 +02:00
Michaël Van Canneyt
1e6061845e * Make sure reference count is properly managed 2024-08-23 16:07:51 +02:00
Nikolay Nikolov
919f8f383d * fixed compilation error, introduced in a0ac317aae 2024-08-23 13:33:25 +03:00
Nikolay Nikolov
42d8a29156 + test runner: allow forcing thread tests by specifying the TEST_THREADS=1 environment option 2024-08-23 13:16:00 +03:00
Michaël Van Canneyt
ce04ce42ed * Objects passed in callback are ours to free 2024-08-23 11:33:42 +02:00
Nikolay Nikolov
a0ac317aae + WebAssembly threads: spinwait until ThreadHasFinished becomes true in
WasiWaitForThreadTerminate, before freeing the thread TLS and stack block, to
  avoid race condition with a thread that is finishing (i.e. the main threadproc
  is done), but still executing internal Pascal code inside
  FPCWasmThreadStartPascal.
2024-08-23 12:12:16 +03:00
Nikolay Nikolov
7fe6438d44 + WebAssembly threads: initialize TWasmThread.ThreadHasFinished to false in WasiBeginThread 2024-08-23 12:09:12 +03:00
Nikolay Nikolov
492e38069c + WebAssembly threads: introduced TWasmThread.ThreadHasFinished boolean 2024-08-23 12:07:21 +03:00
Nikolay Nikolov
6dfd2de188 + WebAssembly threads: call FreeStackAndTlsBlock in WasiWaitForThreadTerminate 2024-08-23 11:34:08 +03:00
Nikolay Nikolov
4abbd82135 * WebAssembly threads: made FreeStackAndTlsBlock set the StackBlock and
TlsPointers to nil
2024-08-23 11:32:15 +03:00
Nikolay Nikolov
c8b9eb3c5c * WebAssembly threads: moved the thread stack and TLS block free code to a new
procedure: FreeStackAndTlsBlock. No functional changes.
2024-08-23 11:24:02 +03:00
Nikolay Nikolov
1e630e8a17 + increase WebAssembly max memory limit for test theapthread.pp, because the
test runs out of memory with the default memory limit of 256 MiB
2024-08-22 20:08:35 +03:00
Nikolay Nikolov
df26a02d9d + WebAssembly threads: set FThreadReaped to true in TThread.WaitFor, to avoid
hang in TThread.SysDestroy after .WaitFor
2024-08-22 19:33:30 +03:00
Michaël Van Canneyt
edde858cfa * try to avoid incompatibility with lazarus (and possibly others) 2024-08-22 14:47:07 +02:00
Nikolay Nikolov
4112318e2f * WebAssembly internal linker: allow specifying the max memory size also for
binaries that don't use threads and shared memory. Unlike the shared memory
  case, in this case the max memory limit is optional.
2024-08-22 10:51:02 +03:00
Michaël Van Canneyt
8d5cf6ca5c * Alternative approach for AddObject, which does not break backwards compatibility. Fixes issue #40899 2024-08-22 08:33:38 +02:00
florian
2f0cd77d86 * remove outdated defines, resolves #40897 2024-08-21 23:08:33 +02:00
mattias
7ca0ddc70e fcl-css: resolver: all and origin 2024-08-21 19:20:35 +02:00
Nikolay Nikolov
017b41de89 * WebAssembly threads: RTLEvents rewritten to implement an auto reset event.
Previous implementation did a manual reset event. However, at least on Windows
  and Linux, an auto reset event is used.
2024-08-21 18:10:44 +03:00
Michaël Van Canneyt
d3c902e5a1 * Fix behaviour of AddObject when duplicates=dupIgnore. Patch by Artem Izmaylov. Fixes issue #40898 2024-08-21 17:06:30 +02:00
Michaël Van Canneyt
1210747f1d * Add overloads with offset and length for typed array constructor 2024-08-21 15:49:13 +02:00
Nikolay Nikolov
db1d903a11 * WebAssembly threads: use high(uint32) as MaxThreadSignal 2024-08-21 13:56:04 +03:00
florian
db05be80bd * typo 2024-08-20 23:07:53 +02:00
Michaël Van Canneyt
781560f3e0 * Forgot to add new file 2024-08-20 16:27:16 +02:00
Michaël Van Canneyt
ad34a8d574 * Correct compilation with namespaces 2024-08-20 16:17:31 +02:00
mattias
aaae62ea88 fcl-css: renamed css units 2024-08-20 07:53:49 +02:00
mattias
c8eeb2ec54 fcl-css: resolver: added colors, replaced filename with name, registry stamp 2024-08-20 07:44:41 +02:00
mattias
43d84beb01 fcl-css:
- renamed TCSSUnits to TCSSUnit
- added a css registry for attributes, types, keywords, and function names
- resolver merges shorthand properties
- resolver distinguishes stylesheets from user-agent, user and author
- resolver now parses css itself, it adds its own types and customdata
- attributes are now checked at parse time and marked invalid
- started skipping invalid instead of raise
2024-08-20 07:44:41 +02:00
Rika Ichinose
ea33fdcdf8 Decimate rtl/i386/strings.inc. 2024-08-19 20:34:10 +00:00
Rika Ichinose
ca0e04a346 Faster path for IndexBytes with a match at the beginning. 2024-08-19 20:15:54 +00:00
Nikolay Nikolov
edf7b26f52 + WebAssembly threads: implemented basic events (both manual and auto reset) 2024-08-19 12:31:19 +03:00
Michaël Van Canneyt
a521ed8c76 * Monitor needed in wasi 2024-08-19 10:54:05 +02:00
Michaël Van Canneyt
487afd243e * DefineProperties can have dot in name. 2024-08-19 10:54:05 +02:00
Jan Rysavy
aa65847386 OpenSSL: add EVP_CIPHER_CTX_new and EVP_CIPHER_CTX_free 2024-08-19 05:40:37 +00:00
Nikolay Nikolov
200fbf64a1 + WebAssembly threads: set IsMultiThread to true in WasiBeginThread 2024-08-19 08:36:45 +03:00
florian
0f39633acc * generic second_addordinal can handle swapped nodes 2024-08-18 22:03:22 +02:00
Nikolay Nikolov
4527365f0d * WebAssembly threads default maxheapsize constant changed to more readable form - 256*1024*1024 instead of 268435456 2024-08-18 16:30:38 +03:00
Nikolay Nikolov
02867fe918 + WebAssembly threads: initialize the ThreadId threadvar for the main thread 2024-08-18 12:00:06 +03:00
Michaël Van Canneyt
13fbc876e0 * Rename keyword info to avoid confusion 2024-08-18 10:58:03 +02:00
Michaël Van Canneyt
711e412cb7 * Explain how to run full tests 2024-08-18 10:58:03 +02:00
Nikolay Nikolov
a4608bd008 * increased the default max memory for WebAssembly threads to 256 MiB 2024-08-18 11:13:44 +03:00