[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
sanjoy at playingwithpointers.com
Tue Oct 2 08:24:03 PDT 2012
> constructs (e.g., parallel regions) and semantics. LLVM is a language-
> neutral IR and infrastructure and OpenMP-specific concepts should not
This is exactly the reason I proposed  -- mirroring the openmp
directives in LLVM IR doesn't seem very elegant. The parallelization
information in the IR should be general and orthogonal.
I do realize that boxing the loops into procedures in the frontend
will initially inhibit loop optimizations, but that can be resolved
with some work. Ideally, I'd like to have a different class
(ParallelLoop, maybe) altogether representing parallel loops and make
the relevant passes aware of it. More work, yes, but I think such an
approach will pay off eventually.
More information about the llvm-dev