On Tue, 2025-09-02 at 22:59 +0800, Xi Ruoyao wrote: > On Tue, 2025-09-02 at 16:51 +0200, Jakub Jelinek wrote: > > On Tue, Aug 19, 2025 at 07:37:29PM +0800, Yang Yujie wrote: > > > This patch fixes regressions of the gcc.dg/torture/bitint-* tests > > > caused by r16-3036-ga76a032354ee48 with --enable-checking=all. > > > > > > The errors are similar to the following: > > > > > > ../../gcc/testsuite/gcc.dg/torture/bitint-14.c:54:1: error: type mismatch > > > in 'array_ref' > > > <unnamed-signed:63> > > > > > > unsigned long > > > > > > _42 = VIEW_CONVERT_EXPR<unsigned long[10]>(r575[i_10])[8]; > > > during GIMPLE pass: bitintlower0 > > > ../../gcc/testsuite/gcc.dg/torture/bitint-14.c:54:1: internal compiler > > > error: verify_gimple failed > > > > > > Sorry about this. > > > > > > PR target/117599 > > > > > > gcc/ChangeLog: > > > > > > * gimple-lower-bitint.cc (bitint_large_huge::limb_access): > > > Avoid emitting ARRAY_REF with the wrong element type. > > > > That looks just too complicated. > > > > What about the following instead? > > > > The first two hunks aren't strictly necessary, I'm just trying to > > avoid calling build_qualified_type when it won't be needed. > > > > At least on s390x-linux (tried cross) bitint-14.c doesn't ICE with it > > anymore. > > I'll submit this to my test facility for loongarch64-linux too.
The only remaining test failure here is gcc.dg/fixed-point/bitint-1.c, which seems a unrelated issue. -- Xi Ruoyao <[email protected]>
