[Lazarus] More Webassembly...

2021-12-30 Thread Michael Van Canneyt via lazarus
Hello, I've just committed to the FPC git repo the wasmtime unit. This unit can be used to load and use the wasmtime library. Using this library you can compile, load and run Webassembly files embedded in your FPC program on all FPC & webassembly supported native platforms. There are 4 demo

Re: [Lazarus] Faster than popcnt [[Re: UTF8LengthFast returning incorrect results on AARCH64 (MacOS)]]

2021-12-30 Thread Martin Frb via lazarus
On 30/12/2021 14:43, Marco van de Voort via lazarus wrote: Compile with -O4 -Cpcoreavx2 , the others (non asm) will become faster, my guess is  "add" will be about double of asm. Core I7 8700K 3.3.1 from Dec 10th 3.2.3 from Dec 9th With fpc 3.3.1: - fst is worse? - add gets better -O4 -Cpcor

Re: [Lazarus] Faster than popcnt [[Re: UTF8LengthFast returning incorrect results on AARCH64 (MacOS)]]

2021-12-30 Thread Marco van de Voort via lazarus
On 30-12-2021 14:17, John Landmesser via lazarus wrote: Perhaps usefui test information from my PC: 77 Compile with -O4 -Cpcoreavx2 , the others (non asm) will become faster, my guess is  "add" will be about double of asm. Also, on windows "high performance" as power scheme.  On non windows

Re: [Lazarus] Faster than popcnt [[Re: UTF8LengthFast returning incorrect results on AARCH64 (MacOS)]]

2021-12-30 Thread John Landmesser via lazarus
Perhaps usefui test information from my PC: ** [john1@manjaro sdb2]$ ./utf8lentest 234526968 fst:128406168 pop:128406168 add:128406168 asm:128406168 29315871 fst 1365 fst 1367 fst 1366 fst 1366 pop 9990 pop 9990 pop 9997 pop 9981 add 1386 add 1382 add 1

Re: [Lazarus] Faster than popcnt [[Re: UTF8LengthFast returning incorrect results on AARCH64 (MacOS)]]

2021-12-30 Thread Marco van de Voort via lazarus
On 30-12-2021 10:15, Florian Klämpfl via lazarus wrote: Linux uses different calling conventions, please check with the patch below. Linux is quite generous with the volatile registers, so luckily it matches quite closely. I first tried the approach of your patch, but [s] has problems on

Re: [Lazarus] Faster than popcnt [[Re: UTF8LengthFast returning incorrect results on AARCH64 (MacOS)]]

2021-12-30 Thread Florian Klämpfl via lazarus
Am 30.12.21 um 08:23 schrieb Alexey Tor. via lazarus: New unit test, with Martin's integrated. If I play with godbolt, Ryzen zen3 (ryzen 5x00X) is nearly twice as fast in cycles as my Ivy Bridge, so I would like to see some benchmarks from various processors. Also from very old ones (P4 and C