Author: lattner Date: Fri Jan 11 12:00:13 2008 New Revision: 45869 URL: http://llvm.org/viewvc/llvm-project?rev=45869&view=rev Log: add a note, remove a done deed.
Modified: llvm/trunk/lib/Target/X86/README.txt Modified: llvm/trunk/lib/Target/X86/README.txt URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/README.txt?rev=45869&r1=45868&r2=45869&view=diff ============================================================================== --- llvm/trunk/lib/Target/X86/README.txt (original) +++ llvm/trunk/lib/Target/X86/README.txt Fri Jan 11 12:00:13 2008 @@ -998,24 +998,6 @@ //===---------------------------------------------------------------------===// -For code like: -phi (undef, x) - -We get an implicit def on the undef side. If the phi is spilled, we then get: -implicitdef xmm1 -store xmm1 -> stack - -It should be possible to teach the x86 backend to "fold" the store into the -implicitdef, which just deletes the implicit def. - -These instructions should go away: -#IMPLICIT_DEF %xmm1 -movaps %xmm1, 192(%esp) -movaps %xmm1, 224(%esp) -movaps %xmm1, 176(%esp) - -//===---------------------------------------------------------------------===// - This is a "commutable two-address" register coallescing deficiency: define <4 x float> @test1(<4 x float> %V) { @@ -1510,6 +1492,9 @@ if the flags of the xor are dead. +Likewise, we isel "x<<1" into "add reg,reg". If reg is spilled, this should +be folded into: shl [mem], 1 + //===---------------------------------------------------------------------===// This testcase misses a read/modify/write opportunity (from PR1425): _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits