I think you want to do something similar to Sema::CheckAlignasUnderalignment:
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclAttr.cpp?revision=233261&view=markup#l2985 On Fri, Apr 3, 2015 at 3:21 PM, Li, Charles <[email protected] > wrote: > Hi David, > > > > > > Oops, we didn’t think of the case where the alignment could be a template > parameter. > > I currently don’t have a clue to fix this. > > Any hint would be greatly welcome. > > > > On why we used BaseT instead of T. > > I think we originally added > > QualType BaseT = Context.getBaseElementType(T); > > Just be to conservative as we don’t fully understand how LLVM’s type > system when it comes to templates. > > I have re-ran clang replacing BaseT with T and did not notice any > regressions. > > So I will take out BaseT for the next revision of the patch. > > > > > > Cheers, > > Charles Li > > > > > > *From:* David Majnemer [mailto:[email protected]] > *Sent:* Wednesday, April 01, 2015 7:08 PM > *To:* Li, Charles > *Cc:* [email protected] > *Subject:* Re: Proposed patch adds TLS Max Alignment diagnostic > > > > Hi Charles, > > > > Your patch doesn't handle cases where the alignment is dependent, > getDeclAlign doesn't want to be called in such cases: > > template <int N> > > struct S { > > static int __thread __attribute__((aligned(N))) x; > > }; > > > > Also, why do you use BaseT->isDependentType() instead of > T->isDependentType()? > > > > On Wed, Apr 1, 2015 at 4:57 PM, Li, Charles < > [email protected]> wrote: > > Hi Clang developers, > > > > We here at Sony PlayStation have a proposed patch which adds an error > diagnostic for when TLS variables exceed maximum TLS alignment. > > Please note this patch does not affect normal maximum alignments. > > This TLS maximum alignment check is currently only turned on for PS4 but > could potentially be used for other platforms. > > > > Sincerely, > > Charles Li > > > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > > >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
