[llvm-commits] [llvm] r108540 - /llvm/trunk/lib/Target/PowerPC/PPCInstrInfo.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Fri Jul 16 14:17:08 PDT 2010


On Jul 16, 2010, at 11:22 AM, Jakob Stoklund Olesen wrote:

> Author: stoklund
> Date: Fri Jul 16 13:22:00 2010
> New Revision: 108540
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=108540&view=rev
> Log:
> Teach PPCInstrInfo::storeRegToStackSlot and loadRegFromStackSlot to add memory
> operands.
> 
> Hopefully this fixes the llvm-gcc-powerpc-darwin9 buildbot. It really shouldn't
> since missing memoperands should not affect correctness.

And it did fix the buildbot.

This is a weird miscompilation. Without the patch, llc will miscompile ARMSelectionDAGInfo::EmitTargetCodeForMemcpy.

When the memory operand is put on loadFromStackSlot instructions, the function is compiled correctly. It should be the other way around since memory operands are supposed to be conservative.

The difference is a moved load instruction.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: armseldaginfo.bc
Type: application/octet-stream
Size: 16080 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20100716/248dbdff/attachment.obj>


More information about the llvm-commits mailing list