Stream: compiler development

Topic: Remove shared memory infra - flaky bitcode


view this post on Zulip Luke Boswell (Dec 21 2024 at 23:15):

We have flaky builtins.

One idea I had, was if we remove the shared memory infrastructure currently used for roc test, do we still need bitcode anymore? The test platforms will bundle libc and implementations for working with RocStr etc.

When I had an attempt at removing that, or maybe it was with the zig upgrade, I had that idea but didn't get around to asking... basically can we rip all this flaky stuff out now?

view this post on Zulip Notification Bot (Dec 21 2024 at 23:16):

A message was moved here from #announcements > Snake case support PSA by Luke Boswell.

view this post on Zulip Brendan Hansknecht (Dec 21 2024 at 23:17):

I don't follow the question

view this post on Zulip Brendan Hansknecht (Dec 21 2024 at 23:17):

What specifically are you trying to remove?

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:18):

Modernize Expect

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:19):

https://github.com/roc-lang/roc/issues/6930

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:19):

  1. Rip out all of the old shared memory infrastructure.

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:19):

I thought I understood what this meant... but I'm not confident

view this post on Zulip Brendan Hansknecht (Dec 21 2024 at 23:19):

Nothing blocking it. But we need to modernize expect and have a it working with platforms before we delete all the shared infra (I mean can be done in the same pr, but we shouldn't rip it out until we have the replacement)

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:20):

Yeah... just wanted to know if this would remove the need for bitcode, as that seems to be the cause of all our flakiness with the builtins

view this post on Zulip Brendan Hansknecht (Dec 21 2024 at 23:21):

Remove the need for bitcode as a whole?

view this post on Zulip Brendan Hansknecht (Dec 21 2024 at 23:22):

We use the bitcode for all of the zig builtins

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:25):

ok, yeah I misunderstood. I was forgetting about that, I thought it may have just been for linking with the test platforms.

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:26):

We need to bundle the bitcode so roc can link that also to produce an object file with all the correct symbols defined in it.

view this post on Zulip Brendan Hansknecht (Dec 21 2024 at 23:29):

Yeah, and by consuming it as bitcode, llvm can optimize it way more than only generating an object file

view this post on Zulip Luke Boswell (Dec 21 2024 at 23:31):

thanks for clearing that up


Last updated: Jul 06 2025 at 12:14 UTC