Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Oct 2017 00:58:04 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        Roman Divacky <rdivacky@vlakno.cz>
Cc:        Justin Hibbits <jrh29@alumni.cwru.edu>, Warner Losh <imp@bsdimp.com>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: C++ in jemalloc
Message-ID:  <A47AA10A-550B-4E12-97DE-440F892EE7FC@dsl-only.net>
In-Reply-To: <20171007064249.GA73770@vlakno.cz>
References:  <BDC9F954-D0C5-4D7A-9CEA-D4FCA595B2FD@dsl-only.net> <CAHSQbTB76OJYGtwzRRFfThJB5mYOKHi_BC9Eefc7Mn1A0-6sWg@mail.gmail.com> <528ED3CD-8A4B-4F00-8728-7D231DB0811A@dsl-only.net> <20171007064249.GA73770@vlakno.cz>

next in thread | previous in thread | raw e-mail | index | archive | help

On 2017-Oct-6, at 11:42 PM, Roman Divacky <rdivacky at vlakno.cz> wrote:

> Just to clarify my not agreeing with Mark regarding EH on ppc64.
>=20
> Last time I tried to fix ppc64 exceptions handling as generated by =
clang
> it turned out that simply using gnu ld from ports fixes the issue.
>=20
> For details see:
> =
https://lists.freebsd.org/pipermail/freebsd-toolchain/2017-May/002961.html=


Unfortunately my experiments failed to confirm this. Repeating
them now under head -r324071 and ports -r450478 :

# more exception_test.cpp=20
#include <exception>

int main(void)
{
    try { throw std::exception(); }
    catch (std::exception& e) {}
    return 0;
}

# clang++ -B /usr/local/powerpc64-freebsd/bin -std=3Dc++14 -g -O2 =
exception_test.cpp

# ./a.out
Segmentation fault (core dumped)

# clang++ -B /usr/local/powerpc64-freebsd/bin -std=3Dc++11 -g =
exception_test.cpp

# ./a.out
Segmentation fault (core dumped)


# ls -lt /usr/local/powerpc64-freebsd/bin
total 56704
lrwxr-xr-x  1 root  wheel       32 Jul  2 19:27 size -> =
../../bin/powerpc64-freebsd-size
-r-xr-xr-x  4 root  wheel  7072791 Jul  2 19:27 ld
-r-xr-xr-x  4 root  wheel  7072791 Jul  2 19:27 ld.bfd
-r-xr-xr-x  2 root  wheel  6881822 Jul  2 19:27 as
-r-xr-xr-x  2 root  wheel  6128889 Jul  2 19:27 strip
-r-xr-xr-x  2 root  wheel  5253417 Jul  2 19:27 nm
-r-xr-xr-x  2 root  wheel  1284139 Jul  2 19:27 readelf
-r-xr-xr-x  2 root  wheel  6128882 Jul  2 19:27 objcopy
-r-xr-xr-x  2 root  wheel  5384166 Jul  2 19:27 ranlib
-r-xr-xr-x  2 root  wheel  5384159 Jul  2 19:27 ar
-r-xr-xr-x  2 root  wheel  6914775 Jul  2 19:27 objdump

# clang++ -B /usr/local/powerpc64-portbld-freebsd12.0/bin/ -std=3Dc++14 =
-g -O2 exception_test.cpp

# ./a.out
Segmentation fault (core dumped)

# clang++ -B /usr/local/powerpc64-portbld-freebsd12.0/bin/ -std=3Dc++11 =
-g exception_test.cpp

# ./a.out
Segmentation fault (core dumped)


# ls -lt /usr/local/powerpc64-portbld-freebsd12.0/bin/
total 363584
-r-xr-xr-x  4 root  wheel  59993201 Jul  2 23:44 ld
-r-xr-xr-x  4 root  wheel  59993201 Jul  2 23:44 ld.bfd
-r-xr-xr-x  2 root  wheel  29843304 Jul  2 23:44 as
-r-xr-xr-x  2 root  wheel  29046519 Jul  2 23:44 strip
-r-xr-xr-x  2 root  wheel  28207257 Jul  2 23:44 nm
-r-xr-xr-x  2 root  wheel   1178483 Jul  2 23:44 readelf
-r-xr-xr-x  1 root  wheel  28329180 Jul  2 23:44 dlltool
-r-xr-xr-x  2 root  wheel  29046512 Jul  2 23:44 objcopy
-r-xr-xr-x  2 root  wheel  28334599 Jul  2 23:44 ranlib
-r-xr-xr-x  2 root  wheel  28334592 Jul  2 23:44 ar
-r-xr-xr-x  2 root  wheel  49540244 Jul  2 23:44 objdump


=3D=3D=3D
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?A47AA10A-550B-4E12-97DE-440F892EE7FC>