Hi Liliana, Liliana Marie Prikler writes: > Am Donnerstag, den 04.11.2021, 19:15 -0400 schrieb Mark H Weaver: [...] >> A more conservative approach would be to apply a patch to >> trunk/Source/WTF/wtf/CheckedArithmetic.h analogous to the one in the >> second link I cited above, namely this one: >> >> https://trac.webkit.org/changeset/272140/webkit >> >> However, it would need to be changed slightly. The patch above >> arranges to avoid using __builtin_mul_overflow on 32-bit ARM >> systems. We would need to do the same for 32-bit x86 as well. So, >> where the patch above has this: >> >> --8<---------------cut here---------------start------------->8--- >> /* On Linux with clang, libgcc is usually used instead of compiler- >> rt, and it does >> * not provide the __mulodi4 symbol used by clang for >> __builtin_mul_overflow >> */ >> #if COMPILER(GCC) || (COMPILER(CLANG) && !(CPU(ARM) && >> OS(LINUX))) >> #define USE_MUL_OVERFLOW 1 >> #endif >> --8<---------------cut here---------------end--------------->8--- >> >> We would need to change "CPU(ARM)" to "(CPU(ARM) || CPU(XXX))", where >> XXX is the appropriate symbol for 32-bit x86. Or maybe there's >> another solution. >> >> I won't be able to look at this in the next couple of days, so >> hopefully someone else can pick this up. > The #else case doesn't look so bad on this, so we could for the time > being just do #if COMPILER(GCC) or even #if 0. I just noticed that the aforementioned patch is already applied to upstream WebKitGTK-2.34.1, so all we would need to do is change "1" to "0" in the following line on i686-linux systems: #define USE_MUL_OVERFLOW 1 I pushed the following (untested) commit to 'gnuzilla-updates' that does exactly this, and does so in such a way that rebuilds will not be needed on other systems. Hopefully I didn't make a mistake. Regards, Mark