MLIR C/C++ Frontend Working Group [Mon, Jul 24th]

Hey folks,

MLIR C/C++ Frontend Working Group meets later today: Monday, Jul 24th, 9am PDT.

We’ll start with items from the living agenda and build from there. See you soon!

Monthly teaser question, will lambdas be first class citizens in CIR or second class citizens?

1 Like

That’s a good teaser!

They are second-ish for now: we use a keyword to track the CIR functions associated with lambda records. This combined with other CIR representation characteristics can already allow us to detect some more complex forms of dangling local captures, but by making them first-class I bet we could do more (and be more reliable).

Our rough plan is to raise them at some point as a separate pass (so it’s out of CIRGen critical path).

There was already a discussion on how to represent closures in MLIR:

1 Like

At least Kokkos and Sycl use lambdas to express parallelism. Having first class citizen lambdas would be really nice.