Subject: Re: bug#16304: Upcoming clang-3.4 apparently miscompiles coreutils.

From: Markus Trippelsdorf <[email-masked]>
Date: Tue, 31 Dec 2013 20:39:02 +0100

On 2013.12.31 at 11:12 -0800, Andrew Trick wrote:
> 
> On Dec 30, 2013, at 1:47 PM, Markus Trippelsdorf <[email-masked]> wrote:
> 
> > On 2013.12.30 at 18:47 +0000, Pádraig Brady wrote:
> >> On 12/30/2013 12:32 PM, Markus Trippelsdorf wrote:
> >>> coreutils-8.22 build with clang-3.4 doesn't copy permissions correctly:
> >>> 
> >>> markus@x4 tmp % touch test1
> >>> markus@x4 tmp % chmod 600 test1
> >>> markus@x4 tmp % ls -al test1
> >>> -rw------- 1 markus markus 0 Dec 30 13:25 test1
> >>> markus@x4 tmp % /var/tmp/coreutils-8.22/src/cp test1 test2
> >>> markus@x4 tmp % ls -al test2
> >>> ---------- 1 markus markus 0 Dec 30 13:25 test2
> >>> markus@x4 tmp %
> >> 
> >> Ouch.
> >> 
> >> Note as part of the 8.22 release process
> >> I did verify that `make check` passed with
> >> clang-3.3-3.fc20.x86_64
> >> 
> >> I've again verified that clang-3.3 passes your test above.
> >> 
> >> Can you pinpoint the erroneous code?
> >> It does seem like a clang regression TBH.
> > 
> > Started with LLVM r192750 (Enable MI Sched for x86).
> > I've opened a LLVM bug here:
> > http://llvm.org/bugs/show_bug.cgi?id=18346
> > 
> > (I will try to come up with a testcase after the holidays)
> 
> To determine whether a bug exists in MI scheduler pass (or downstream) you can do this:
> -mllvm -enable-misched=false.
> 
> Duncan committed a post-3.4 fix, r197503, for a varargs bug exposed by
> changes to the SD scheduling policy.

Yes, r197503 fixes the issue. Would be nice to get the fix applied
before 3.4 gets released...

-- 
Markus