On Tue, 2013-04-23 at 21:03 +0200, Dimitry Andric wrote: > On Apr 17, 2013, at 21:16, Jung-uk Kim <j...@freebsd.org> wrote: > > On 2013-04-17 06:07:47 -0400, Dimitry Andric wrote: > >> On Apr 17, 2013, at 07:31, Jan Beich <jbe...@tormail.org> wrote: > >>> Dimitry Andric <d...@freebsd.org> writes: On Apr 16, 2013, at > >>> 00:42, Jan Beich <jbe...@tormail.org> wrote: > >> ... > >>>>> Maybe -O3 overoptimizes regex in libc e.g., > >>>>> > >>>>> $ echo '#if @GNULIB_EUIDACCESS@' | sed > >>>>> 's/@GNULIB_EUIDACCESS@/0/' #if @GNULIB_EUIDACCESS@ > >>>>> > >>>>> $ echo 'aaaaaaaaaaaaaaaaxxxaaaa' | sed > >>>>> 's/aaaaaaaaaaaaxxxaaaa//' aaaaaaaaaaaaaaaaxxxaaaa > >>>> > >>>> How did you arrive at this result? > >>> > >>> 1/ chroot into poudriere jail for /head amd64 2/ echo CFLAGS+=-O3 > >>>>> /etc/make.conf 3/ make -j2 (in /usr/src/lib/libc) 4/ prepend > >>> LD_LIBRARY_PATH=. before sed(1) 5/ rebuild regcomp.o, regcomp.So > >>> with -O2 to confirm > >> > >> I have been able to reproduce this on amd64, with -O3, but not on > >> i386. It seems regcomp() is either miscompiled at -O3, or it > >> contains some bug triggered only by the vectorizer. I am still > >> investigating. > > ... > > > > With "-fno-vectorize", this problem doesn't seem to happen. > > After some more investigation, I submitted LLVM PR 15830, with a test > case reduced from our regcomp.c. It got diagnosed and fixed pretty > quickly, and I have pulled in the fix in r249817. Please verify it, by > rebuilding libc with your original -O3 settings; the sed commands listed > above should now work correctly.
Both the ports devel/libiconv and graphics/jasper do not show the reported error anymore after this patch! Thanks for helping fixing this that fast! With regards, Oliver
signature.asc
Description: This is a digitally signed message part