On Tue, Aug 05, 2025 at 12:26:08PM GMT, Jakub Jelinek wrote: > On Tue, Aug 05, 2025 at 06:21:40PM +0800, Yang Yujie wrote: > > 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. > > No need to submit, they've been approved already. Just commit them. > > > Do you have this requirement for other patches? > > Basically, I'd like not to see the approved patches in every new iteration > if they don't depend on earlier patches from the patch set, they can > be on the trunk. For approved patches which depend on something not > committed yet, those obviously need to wait for their dependencies. > > Jakub
Then may I ask you to commit them? I'm not a maintainer and these aren't really LoongArch-specific. Thanks. Yujie