submit [PATCH] SimplifyCFG for code review
Ye, Mei
Mei.Ye at amd.com
Tue Jun 18 16:27:06 PDT 2013
Hi Sean
There are some considerations that go into this test sample to create an opportunity for the transformation.
It is illegal to speculatively hoist up a load through un-tracked pointers. So by-design, I have:
a. The first two loops cache value into local arrays, which avoid use of pointer loads in the if-conditions.
b. The loops (or its unrolled body) add to the complexity that prevents copy propagation which will remove references of local arrays.
c. The write through pointer "fail" create a potential alias that prevents loop fusion, but allows detection of no-alias with local array references.
d. All local array references are "touched" before the if-conditions so that there is no potential out-of-boundary seg faults for speculative loads.
-Mei
From: Sean Silva [mailto:silvas at purdue.edu]
Sent: Tuesday, June 18, 2013 3:32 PM
To: Ye, Mei
Cc: llvm-commits at cs.uiuc.edu
Subject: Re: submit [PATCH] SimplifyCFG for code review
On Tue, Jun 18, 2013 at 3:10 PM, Ye, Mei <Mei.Ye at amd.com<mailto:Mei.Ye at amd.com>> wrote:
Hi Sean
Thanks for your time. The .ll are generated from attached .cpp. It is a simple case.
Please reduce it to a simple .ll case.
-- Sean Silva
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130618/6613b9cd/attachment.html>
More information about the llvm-commits
mailing list