Description: Wasm 32 rtl

This file as text.
(active) Revisions in this set:
e376851fd8aabb05ac93bc234ae06fd9ed0cdd32,47c271dcd0635ea584023800d66d1ef8ca5ec07e,d9781bcebee08dfdbbdee90a595e92ce1fc284fd
99d66b4c93821f5b4dfbc0fc236ad0c7626d5310,362cabe6845a0769cc8e7fcd4dd5c75a74a07a85,9ba01e7aee19489072b616647ec044ce03a14a43
7fa8f514af5bf6d2e1865353b34ab56d92b54e1b,219294c02b4129d8a063626c72dc3f867ab75680,19cce3e42e46f010065146dec761dc6b00a6efc1
a916aa36d82bf3d37588c1118ad838940453e527,3cb4952745479eb8cd8b445951e8fd13f88b6fc5,1ce1a0fe1fe3642b2daca5e16b1058cad0d3b5fb
9056887aaedd811e0518ebb1b98219b561e04cba,48f115686d105165d9637ffcfcce2f10b6192d9c

Clicking a revision will expand files
 


* fixes to the WebAssembly atomic function intrinsics
Commit consists out of
  • M rtl/wasm32/cpuh.inc


+ implemented InterlockedIncrement, InterlockedDecrement, InterlockedExchange,
InterlockedCompareExchange and InterlockedExchangeAdd for WebAssembly in a
thread safe way, using the thread and atomics extension, when the RTL is
compiled with -dFPC_WASM_THREADS
Commit consists out of
  • M rtl/wasm32/wasm32.inc


+ added except_branchful.inc as a system unit dependency include file to wasm32/makefile.cpu
Commit consists out of
  • M rtl/wasm32/makefile.cpu


+ added AtomicAdd() and AtomicSub() intrinsics to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


+ added AtomicAnd(), AtomicOr() and AtomicXor() to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


+ added AtomicExchange() to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


+ added AtomicCompareExchange() to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


+ added AtomicLoad() to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


+ added AtomicWait() to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


+ added AtomicNotify() to the WebAssembly unit
Commit consists out of
  • M rtl/wasm32/webassembly.pp


* AtomicWait marked as inline
Commit consists out of
  • M rtl/wasm32/webassembly.pp


* added non-atomic implementations of the atomic operations in the WebAssembly unit, used when the RTL is compiled without -CTwasmthreads
Commit consists out of
  • M rtl/wasm32/webassembly.pp


* Correct windows DLL name
Commit consists out of
  • M packages/wasmtime/src/wasmtime.pp


+ print more exceptions debug info, when the WebAssembly RTL is compiled with -dEXCDEBUG
Commit consists out of
  • M rtl/wasm32/except_branchful.inc
  • M rtl/wasm32/except_native.inc