Hi!
On 2026-07-01T16:30:41+0200, I wrote:
> On 2026-06-26T09:42:43-0700, Gio T <[email protected]> wrote:
>> This patch refactors 'hashtab.h' from a prime-sized double-hash
>> map to a power of two sized Robin Hood hashing regime. [...]
>
>
>> The data structure was microbenchmarked [...]
>
> Curious what the effects on real-world code (benchmarks) is going to be?
>
>
>> Built/tested x86_64-pc-linux-gnu.
>
> I've not reviewd your patch, but at least put it into my usual testing
> trees, and
I see libgomp test suite regressions as follows, testing on a system with
NVIDIA GPU (didn't test AMD GPU code offloading, so far):
PASS: libgomp.c/../libgomp.c-c++-common/declare-target-indirect-1.c (test
for excess errors)
[-PASS:-]{+FAIL:+}
libgomp.c/../libgomp.c-c++-common/declare-target-indirect-1.c execution test
PASS: libgomp.c/../libgomp.c-c++-common/declare-target-indirect-2.c (test
for excess errors)
[-PASS:-]{+FAIL:+}
libgomp.c/../libgomp.c-c++-common/declare-target-indirect-2.c execution test
PASS: libgomp.c++/../libgomp.c-c++-common/declare-target-indirect-1.c (test
for excess errors)
[-PASS:-]{+FAIL:+}
libgomp.c++/../libgomp.c-c++-common/declare-target-indirect-1.c execution test
PASS: libgomp.c++/../libgomp.c-c++-common/declare-target-indirect-2.c (test
for excess errors)
[-PASS:-]{+FAIL:+}
libgomp.c++/../libgomp.c-c++-common/declare-target-indirect-2.c execution test
PASS: libgomp.fortran/declare-target-indirect-1.f90 -O0 (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-1.f90 -O0
execution test
PASS: libgomp.fortran/declare-target-indirect-1.f90 -O1 (test for excess
errors)
PASS: libgomp.fortran/declare-target-indirect-1.f90 -O1 execution test
PASS: libgomp.fortran/declare-target-indirect-1.f90 -O2 (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-1.f90 -O2
execution test
PASS: libgomp.fortran/declare-target-indirect-1.f90 -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
(test for excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-1.f90 -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
execution test
PASS: libgomp.fortran/declare-target-indirect-1.f90 -O3 -g (test for
excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-1.f90 -O3 -g
execution test
PASS: libgomp.fortran/declare-target-indirect-1.f90 -Os (test for excess
errors)
PASS: libgomp.fortran/declare-target-indirect-1.f90 -Os execution test
PASS: libgomp.fortran/declare-target-indirect-2.f90 -O0 (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-2.f90 -O0
execution test
PASS: libgomp.fortran/declare-target-indirect-2.f90 -O1 (test for excess
errors)
PASS: libgomp.fortran/declare-target-indirect-2.f90 -O1 execution test
PASS: libgomp.fortran/declare-target-indirect-2.f90 -O2 (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-2.f90 -O2
execution test
PASS: libgomp.fortran/declare-target-indirect-2.f90 -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
(test for excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-2.f90 -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
execution test
PASS: libgomp.fortran/declare-target-indirect-2.f90 -O3 -g (test for
excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/declare-target-indirect-2.f90 -O3 -g
execution test
PASS: libgomp.fortran/declare-target-indirect-2.f90 -Os (test for excess
errors)
PASS: libgomp.fortran/declare-target-indirect-2.f90 -Os execution test
These are:
libgomp: cuCtxSynchronize error: an illegal memory access was encountered
Grüße
Thomas
> see the build fail for 32-bit (x86_64 with '-m32'):
>
> In file included from ../../../source-gcc/libgomp/task.c:49:
> ../../../source-gcc/libgomp/hashtab.h: In function ‘rup2’:
> ../../../source-gcc/libgomp/hashtab.h:136:17: error: right shift count >=
> width of type [-Werror=shift-count-overflow]
> 136 | num |= (num >> 32);
> | ^~
>
> In file included from ../../../source-gcc/libgomp/target.c:61:
> [same]
>
>
> Grüße
> Thomas