Closed xyproto closed 7 years ago
Can you explain more about how you are setting up your i686 build environment? On Arch I normally use gcc-multilib
which requires passing -m32
on the command line, but it seems you are not doing that here.
Frustrating bug because I cannot repo this even though I have access to a machine running Arch, gcc version 7.1.1 20170630, on a "Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz" which is pretty close to your env. I tested by enabling multilib repo and compiling Botan with ./configure.py --cpu=i686 --cc-abi-flags=-m32
, resulting in
GOST-R-34.11-94 ran 86 tests in 0.84 msec all ok
WTF :(
I'm building in a chroot using the standard packaging tools from the devtools
package:
pacman -S devtools
Then in the directory with the Botan PKGBUILD file:
sudo extra-i686-build
Thanks hopefully I can repro
Thanks for testing!
Reproed it using the chroot, interesting that this makes a difference.
Recompiling gost_3411.cpp
using -O2
passes while -O3
fails. Probably I can fiddle with the code to deoptimize it sufficiently that GCC 7 doesn't miscompile, and open an issue with GCC upstream once I have a small repro case.
@xyproto Can you try the change in 3e1312d? Fixes the miscompilation for me. I was not able to reduce it to a small testcase sadly :(
@xyproto I see Arch is now shipping 2.2.0 with the 3e1312d patch so I'm assuming this resolved the issue. Please open a new issue if there are further problems. And, thank you for maintaining the package in Arch!
Sorry for the late reply, yes the patch worked out! Thanks.
Hi,
I'm trying to package Botan 2.2.0 for Arch Linux.
gcc (GCC) 7.1.1 20170630
Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
Configure and build commands:
Test command:
Building and testing works fine for x86_64, but fails for i686 (output below; ctrl+f "FAIL"):
[...]
[...]
Cheers!