[llvm-commits] [llvm] r66366 - in /llvm/trunk: lib/Transforms/Scalar/ScalarReplAggregates.cpp test/Transforms/ScalarRepl/2008-06-22-LargeArray.ll test/Transforms/ScalarRepl/vector_memcpy.ll

Duncan Sands baldrick at free.fr
Sun Mar 8 13:25:00 PDT 2009


Hi Chris,

> > x86 has other problems when copying using floats.  This came up in  
> > llvm-gcc,
> > see http://llvm.org/PR2680  Quoting from the bug report "Bottom  
> > line, 387 FP
> > copies can't be relied on to do bitwise copies".
> 
> The patch for that bug changed copies to happen in integer registers.   
> Do you have an example that would illustrate this problem?

not sure what you are asking.  Like in the PR, I may have stored
2140832546U in a float alloca (by bitcasting to an integer* and
doing the store for example).  Copying this value later using a
float load and store would then end up giving a wrong answer, as
in the PR.  Maybe I've misunderstood the problem in that PR, or
what you are trying to do, but for the moment I don't see why you
couldn't hit the same problem as in the PR.  Not via exactly the
same mechanism of course, but at the bottom it's the same.

Ciao,

Duncan.



More information about the llvm-commits mailing list