[LLVMdev] loop pragmas
hfinkel at anl.gov
Wed Nov 21 19:05:32 PST 2012
----- Original Message -----
> From: "Krzysztof Parzyszek" <kparzysz at codeaurora.org>
> To: "Tobias Grosser" <tobias at grosser.es>
> Cc: llvmdev at cs.uiuc.edu
> Sent: Wednesday, November 21, 2012 12:59:48 PM
> Subject: Re: [LLVMdev] loop pragmas
> On 11/21/2012 12:48 PM, Tobias Grosser wrote:
> > On 11/21/2012 06:56 PM, Krzysztof Parzyszek wrote:
> >> Yes, that is not hard to accomplish.
> > Actually, I believe this is _not_ easy. Though, it makes only sense
> > to
> > discuss this with a specific annotation in mind.
> Agreed. If there is a dedicated consumer of certain annotations,
> after it's done, it should remove the annotations. This is not hard
> when it can run early enough not to have the annotations altered by
> prior transformations. Now, if there are special annotations for
> several dedicated consumers, or the consumer has to run late, then it
> does become difficult.
> What would be nice is if we came up with a design that would allow a
> relatively easy validation of the annotations (something conceptually
> similar to error-detecting codes). The consumer then would disregard
> and remove the annotations that are no longer valid.
I proposed something which has this property for OpenMP handling a few months ago. If any of it were dropped, or things became otherwise inconsistent, because of the cross-referencing, it would be possible to detect the problem and drop the entire parallel region. The problem with using this for OpenMP is that there are cases where dropping the entire parallel region is not a valid thing to do.
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> hosted by The Linux Foundation
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-dev