A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/Perl/perl5/issues/22577 below:

Crash while trying to compile perl on i686 with quadmath and SSE. · Issue #22577 · Perl/perl5 · GitHub

Module: core

Description
I'm trying to build perl on 32bit Gentoo Linux box with SSE enabled

Steps to Reproduce
I'm trying to compile perl via following configure:
sh ./Configure -des -Dusequadmath -Accflags="-O2 -fwrapv -pipe -msse" -Doptimize="-O2 -fwrapv -pipe -msse"
However, miniperl binary crashes during build.

Investigation
Crash in Perl_init_constants (sv.c:16516) is due to misaligned access to PL_sv_no of __float128 type, because it requires 16 bytes alignment while perl's allocator (new_XPVNV) provides only 8 byte alignment.
Compiler uses movaps instruction that is part of SSE instruction set that triggers the crash.

Perl's allocator seem to allocate memory in blocks of 40 bytes on i686. Crash does not reproduce on x64 due to bigger allocated block (64 bytes) that provides correct alignment.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4