Skip to content

Conversation

Andres-Salamanca
Copy link
Contributor

@Andres-Salamanca Andres-Salamanca commented Aug 29, 2025

This PR adds support for the new BlockAddressOp, used for GCC labels as values.
Support for indirect goto and ConstantLValueEmitter::VisitAddrLabelExpr will be added in a future PR.

Copy link
Contributor Author

@Andres-Salamanca Andres-Salamanca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@andykaylor @bcardosolopes @xlauko I’m unsure about the right way to approach these cases. Do you have any suggestions?

@Andres-Salamanca Andres-Salamanca marked this pull request as ready for review September 2, 2025 02:46
Copy link
Member

@bcardosolopes bcardosolopes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this, pretty cool, added first round of review!

Copy link
Contributor Author

@Andres-Salamanca Andres-Salamanca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for the late reply, @andykaylor , @bcardosolopes . I haven’t had much time lately, so this can still be improved, but I’d like to know how I’m doing so far.

Copy link
Member

@bcardosolopes bcardosolopes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's break this PR into two for making the review easier. For this one:

  • Add CIR + tests for CIR to CIR parsing/printing.
  • CIRGen support. Tests will only contain the CIR part.
  • GotoSolver support, add test that verify only unused labels are removed.
  • Add the verifier mentioned in the comments for verifyBlockTags and add a CIR test for it.
    All LLVM lowering should be deferred to a next PR. Inline comments also added

@bcardosolopes
Copy link
Member

Needs some conflict fixes but ready to go

Copy link

github-actions bot commented Sep 18, 2025

✅ With the latest revision this PR passed the C/C++ code formatter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants