Newest at the top
| 2026-02-14 22:00:22 +0100 | <[exa]> | probie: you have unboxed or primitive vectors? |
| 2026-02-14 22:00:09 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Ping timeout: 260 seconds) |
| 2026-02-14 21:59:26 +0100 | <probie> | https://paste.tomsmeding.com/NRYKh5Fj |
| 2026-02-14 21:59:21 +0100 | <[exa]> | that looks like a lot of indirection |
| 2026-02-14 21:58:23 +0100 | caubert | (~caubert@user/caubert) (Ping timeout: 252 seconds) |
| 2026-02-14 21:58:11 +0100 | <tomsmeding> | why are there so many loads for only two stores? I assume this is different code than you posted originally? |
| 2026-02-14 21:57:03 +0100 | <probie> | I don't think it's LLVM's problem here; GHC is just not generating good code https://paste.tomsmeding.com/8ZYY5Pka |
| 2026-02-14 21:57:02 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-02-14 21:56:55 +0100 | <[exa]> | probie: btw try to unroll the loop manually, that might give llvm enough decisive force |
| 2026-02-14 21:56:50 +0100 | <tomsmeding> | very recently IIRC some of them started working on NCG too |
| 2026-02-14 21:56:37 +0100 | <tomsmeding> | GHC has SIMD primops, but they only work with LLVM |
| 2026-02-14 21:56:12 +0100 | <[exa]> | probie: I find it better than relying on the compiler accidentaly noticing that I want SIMD (but yeah it's still :( ) |
| 2026-02-14 21:54:32 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 2026-02-14 21:53:21 +0100 | caubert | (~caubert@user/caubert) caubert |
| 2026-02-14 21:52:13 +0100 | <probie> | [exa]: Because I shouldn't need to |
| 2026-02-14 21:49:55 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-02-14 21:45:43 +0100 | <[exa]> | ok not bad :) |
| 2026-02-14 21:45:36 +0100 | peterbecich | (~Thunderbi@71.84.33.135) peterbecich |
| 2026-02-14 21:44:27 +0100 | <tomsmeding> | (never used it) |
| 2026-02-14 21:44:08 +0100 | <tomsmeding> | [exa]: https://gitlab.com/Gusten_Isfeldt/futhask |
| 2026-02-14 21:43:46 +0100 | Pixi | (~Pixi@user/pixi) Pixi |
| 2026-02-14 21:43:41 +0100 | <[exa]> | (man, can we FFI to futhark?) |
| 2026-02-14 21:43:03 +0100 | <[exa]> | probie: btw why not make a small FFI to a relatively portable C? |
| 2026-02-14 21:38:35 +0100 | Pixi | (~Pixi@user/pixi) (Quit: Leaving) |
| 2026-02-14 21:38:17 +0100 | caubert | (~caubert@user/caubert) (Ping timeout: 250 seconds) |
| 2026-02-14 21:37:41 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-02-14 21:34:44 +0100 | <tomsmeding> | possibly, yes |
| 2026-02-14 21:33:37 +0100 | peterbecich | (~Thunderbi@71.84.33.135) (Ping timeout: 264 seconds) |
| 2026-02-14 21:32:46 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-02-14 21:29:31 +0100 | pavonia | (~user@user/siracusa) siracusa |
| 2026-02-14 21:29:02 +0100 | <probie> | I wonder if it's the use of `read` instead of `unsafeRead`? |
| 2026-02-14 21:28:52 +0100 | <probie> | It's not giving me SIMD instruction :'( |
| 2026-02-14 21:26:38 +0100 | ouilemur | (~jgmerritt@user/ouilemur) ouilemur |
| 2026-02-14 21:25:54 +0100 | <geekosaur> | also I mentioned the settings file bvecause I saw a claim in backscroll that the correct llvm version wasn't on their PATH, which means a settings file edit to point to the correct one |
| 2026-02-14 21:23:31 +0100 | <geekosaur> | there was a point where `opt` parameters changed and ghc didn't know how tgo call newer versions correctly |
| 2026-02-14 21:23:07 +0100 | <geekosaur> | they can be pretty critical but I don't think it's critical for recent versions |
| 2026-02-14 21:22:08 +0100 | <int-e> | Hmm. For me, the baked in commands (from the settings file) have a version, e.g. llc-14 for ghc-9.10.3 and llc-19 for ghc-9.12.2. I wonder what the binary distributions put there... ghc --info | grep LLVM will show that info without you having to go looking for the settings file. |
| 2026-02-14 21:21:49 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2026-02-14 21:18:38 +0100 | <int-e> | I don't |
| 2026-02-14 21:18:17 +0100 | <tomsmeding> | do you happen to know how critical those version upper bounds are, in GHC's LLVM support? |
| 2026-02-14 21:18:07 +0100 | s3np41 | (~s3np41@078088254000.unknown.vectranet.pl) |
| 2026-02-14 21:17:56 +0100 | <int-e> | (Rather than digging into the history I'll just assume this hasn't changed recently except for bumping versions.) |
| 2026-02-14 21:17:44 +0100 | <tomsmeding> | I see |
| 2026-02-14 21:16:55 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-02-14 21:16:26 +0100 | <int-e> | tomsmeding: https://gitlab.haskell.org/ghc/ghc/-/blob/master/compiler/GHC/SysTools/Tasks.hs#L341-350 (and beyond) |
| 2026-02-14 21:15:32 +0100 | <geekosaur> | "LLVM opt command" (and similar for llc) |
| 2026-02-14 21:15:14 +0100 | <geekosaur> | $(ghc --print-libdir)/settings |
| 2026-02-14 21:15:13 +0100 | caubert | (~caubert@user/caubert) caubert |
| 2026-02-14 21:14:58 +0100 | <geekosaur> | I think you can specify a path in the settings file? |
| 2026-02-14 21:14:18 +0100 | <tomsmeding> | lame |