Changes in directory llvm/lib/Target/X86:
README.txt updated: 1.24 -> 1.25 --- Log message: A bit of wisdom from Chris on the last entry. --- Diffs of the changes: (+10 -1) README.txt | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletion(-) Index: llvm/lib/Target/X86/README.txt diff -u llvm/lib/Target/X86/README.txt:1.24 llvm/lib/Target/X86/README.txt:1.25 --- llvm/lib/Target/X86/README.txt:1.24 Fri Jan 27 16:11:01 2006 +++ llvm/lib/Target/X86/README.txt Fri Jan 27 16:54:32 2006 @@ -187,4 +187,13 @@ ret The problem is the store's chain operand is not the load X but rather -a TokenFactor of the load X and load Y. This prevents the folding. +a TokenFactor of the load X and load Y, which prevents the folding. + +There are two ways to fix this: + +1. The dag combiner can start using alias analysis to realize that y/x + don't alias, making the store to X not dependent on the load from Y. +2. The generated isel could be made smarter in the case it can't + disambiguate the pointers. + +Number 1 is the preferred solution. _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits