I understand. Whenever you get a chance to look at the patches. Thanks,
Tyler > On Jul 2, 2015, at 10:29 AM, Hal Finkel <[email protected]> wrote: > > ----- Original Message ----- >> From: "Tyler Nowicki" <[email protected] <mailto:[email protected]>> >> To: "Hal Finkel" <[email protected] <mailto:[email protected]>> >> Cc: "llvm cfe" <[email protected] <mailto:[email protected]>>, >> "Gerolf Hoflehner" <[email protected] <mailto:[email protected]>> >> Sent: Thursday, July 2, 2015 12:27:00 PM >> Subject: Re: [Patch][LoopInfo] Use CGLoopInfo to generate loop hints >> >> Hi, >> >> Could I get a review of these patches? > > Yes, I'll look at them soon (sorry, I'm about a week behind on code reviews > right now). > > -Hal > >> >> Thanks, >> >> Tyler >> >>> On Jun 24, 2015, at 4:25 PM, Tyler Nowicki <[email protected]> >>> wrote: >>> >>> Hi Hal, >>> >>> Here are the split patches. >>> >>> Thanks, >>> >>> Tyler >>> >>> <0001-Rename-Vectorizer-to-Vectorize-and-VectorizeUnroll-t.patch><0002-Moved-functionality-from-EmitCondBr-to-CGLoopInfo.patch> >>> >>>> On Jun 22, 2015, at 5:40 PM, Hal Finkel <[email protected]> wrote: >>>> >>>> Hi Tyler, >>>> >>>> - Type::getInt32Ty(Ctx), >>>> Attrs.VectorizerWidth))}; >>>> + Type::getInt32Ty(Ctx), >>>> Attrs.VectorizeWidth))}; >>>> >>>> Could you please factor out the renamings from the functional >>>> change? >>>>>> >>>>>> Hello, >>>>>> >>>>>> I noticed a problem with my implementation of #pragma clang loop >>>>>> vectorize(assume_safety). When it was specified on a loop other >>>>>> loop hints were lost. The problem is that CGLoopInfo attaches >>>>>> metadata a little bit differently than EmitCondBrHints in >>>>>> CGStmt. >>>>>> For do-loops CGLoopInfo attaches metadata to the br in the body >>>>>> block and for while and for loops, the inc block. >>>>>> EmitCondBrHints >>>>>> on the other hand always attaches data to the br in the cond >>>>>> block. When specifying assume_safety CGLoopInfo emits an empty >>>>>> llvm.loop metadata shadowing the metadata in the cond block. >>>>>> Loop >>>>>> transformations like rotate and unswitch would then eliminate >>>>>> the >>>>>> cond block. >>>>>> >>>>>> This patch unifies both approaches for adding metadata and >>>>>> modifies >>>>>> the existing safety tests to include non-assume_safety loop >>>>>> hints. >> >> > > -- > Hal Finkel > Assistant Computational Scientist > Leadership Computing Facility > Argonne National Laboratory
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
