[PATCH] [X86] Break false dependencies before partial register updates when the source operand is in memory
Michael Kuperstein
michael.m.kuperstein at intel.com
Sun Dec 14 03:22:20 PST 2014
Regarding break-sse-dep vs. sse-domains, there are actually 3 different things going on:
1. Avoiding load-folding that creates false dependencies.
2. Avoiding domain crossing.
3. Breaking false dependencies that are already present in the code.
Before this patch, break-sse-dep.ll checked (1), and sse-domains.ll checked (2) and (3), and I've added another test checking (3) into sse-domains.
Do you think it's worth moving (3) together with (1) instead?
================
Comment at: test/CodeGen/X86/break-sse-dep.ll:18
@@ -17,3 +17,3 @@
; CHECK-LABEL: t2:
; CHECK: cvtsd2ss ([[A0]]), %xmm0
%0 = load double* %x, align 8
----------------
RKSimon wrote:
> Should cvtsd2ss be folded?
Yes, the optsize versions should be folded.
(The test is equivalent to t1 except for the optsize attribute).
http://reviews.llvm.org/D6620
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list