Skip to content

Port to master: Fix build with stock GC: mmtk_pin_object is conditionaly compiled (#42) #45

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

qinsoon
Copy link
Member

@qinsoon qinsoon commented Mar 27, 2024

No description provided.

@qinsoon qinsoon requested a review from udesou March 27, 2024 00:34
udesou pushed a commit to udesou/julia that referenced this pull request Aug 19, 2024
Without this change, the compiler fails to notice that `env_threads isa
Int` in the fall-through case, leading to a union-split with a branch
that is in fact unreachable:

```
43 ┄ %109 = φ (mmtk#41 => %105, mmtk#42 => %108)::Union{Nothing, Int64}
│    %110 = (%109 isa Int64)::Bool
└───        goto mmtk#45 if not %110
...
45 ─ %126 = π (%109, Nothing)
│           Base.convert(Int64, %126)::Union{}
└───        unreachable
```

After this change, the union-split is eliminated.

Co-authored-by: Jeff Bezanson <jeff.bezanson@gmail.com>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant