On Tue, Aug 05, 2025 at 11:49:42AM GMT, Jakub Jelinek wrote: > On Sat, Aug 02, 2025 at 05:14:20PM +0800, Yang Yujie wrote: > > In LoongArch psABI, large _BitInt(N) (N > 64) objects are only > > extended to fill the highest 8-byte chunk that contains any used bit, > > but the size of such a large _BitInt type is a multiple of their > > 16-byte alignment. So there may be an entire unused 8-byte > > chunk that is not filled by extension, and this chunk shouldn't be > > checked when testing if the object is properly extended. > > > > The original bitintext.h assumed that all bits within > > sizeof(_BitInt(N)) beyond used bits are filled by extension. > > This patch changes that for LoongArch and possibly > > any future ports with a similar behavior. > > > > P.S. For encoding this test as well as type-generic programming, > > it would be nice to have a builtin function to obtain "N" at > > compile time from _BitInt(N)-typed expressions. But here > > we stick to existing ones (__builtin_clrsbg / __builtin_clzg). > > > > gcc/testsuite/ChangeLog: > > > > * gcc.dg/bitintext.h: Generalize BEXTC to only check extension > > within PROMOTED_SIZE bits. > > Please commit this separately from the series. > > Jakub
Ok, so patch 1, 2 and 3 will be submitted separately. Do you have this requirement for other patches? Yujie