6 Commits

Author SHA1 Message Date
Erich Keane
11d65dc8c2
Revert "[CIR][NFC] Add NYI for OMPSplitDirective stmt" (#190346)
Reverts llvm/llvm-project#190329

The patch this depends on got reverted.
2026-04-03 14:40:42 +00:00
Amr Hesham
0932472f3b
[CIR][NFC] Add NYI for OMPSplitDirective stmt (#190329)
Fix the warning of missing OMPSplitDirective statement in the emitStmt
switch
2026-04-03 14:45:48 +02:00
Jan Leyonberg
9bfd57eec6
[CIR][OpenMP] Enable lowering of the OpenMP dialect to LLVM IR (#178515)
This patch adds the OpenMP dialect to be part of the lowering to LLVM
IR. A minor change was made to a test to compensate for a yet implemented
feature: ++a to a = a + 1
2026-02-05 17:42:40 -05:00
Erich Keane
5925210020
[OpenMP][CIR] Implement basic 'parallel' lowering + some clause infra (#172308)
This patch adds some basic lowering for the OMP 'parallel' lowering,
which adds an omp.parallel operation, plus tries to insert into its
region, with a omp.terminator operation.. However, this patch doesn't
implement CapturedStmt (and I don't intend to do so at all), so there is
an NYI error when emitting a parallel region (plus it shows up in IR
    as 'empty'.

This patch also adds some infrastructure to 'lower' clauses, however no
clauses are emitted, and this simply adds a 'not yet implemented'
warning any time a clause is attempted. The OMP clause visitor seems to
have had a bug with how it 'degraded' when a clause wasn't handled (it
  would result in an infinite recursion if it wasn't supplied), so this
fixes that as well.

A followup patch or two may use this infrastructure to demonstrate how
to use it.
2025-12-16 07:00:22 -08:00
Erich Keane
49f697971c
[OpenMP][CIR] Implement 'barrier' lowering (#172305)
As my next patch showing how OMP lowering should work, here is a simple
construct implementation. Best I can tell, the 'barrier' construct just
results in a omp.barrier to be emitted into the IR. This is our first
use of the omp dialect, though the dialect was already added in my last
patch.
2025-12-16 06:57:07 -08:00
Erich Keane
2e2e48f171
[OpenMP][CIR] Add basic infrastructure for CIR lowering (#171902)
This patch adds the basic infrastructure for lowering an OpenMP
directive, which should enable someone to take over the OpenMP lowering
in the future. It adds the lowering entry points to CIR in the same way
as OpenACC.

Note that this does nothing with any of the directives, which will
happen in a followup patch. No infrastructure for clauses is added
either, but that will come in a followup patch as well.
2025-12-15 06:07:37 -08:00