<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in vectorized-loop.ll</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>4455c5cd - [CostModel][X86] Update RUN -passes=* to double quotes to appease update scripts on windows</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#4455c5cd</link>
        <description>[CostModel][X86] Update RUN -passes=* to double quotes to appease update scripts on windows

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Fri, 18 Mar 2022 11:44:07 +0000</pubDate>
        <dc:creator>Simon Pilgrim &lt;llvm-dev@redking.me.uk&gt;</dc:creator>
    </item>
<item>
        <title>15ba588d - [test] Migrate &apos;-analyze -cost-model&apos; to &apos;-passes=print&lt;cost-model&gt;&apos;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#15ba588d</link>
        <description>[test] Migrate &apos;-analyze -cost-model&apos; to &apos;-passes=print&lt;cost-model&gt;&apos;

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Wed, 09 Feb 2022 23:25:18 +0000</pubDate>
        <dc:creator>Arthur Eubanks &lt;aeubanks@google.com&gt;</dc:creator>
    </item>
<item>
        <title>9bd0dc83 - [CostModel][X86] Improve v8i32 MUL costs on AVX1 targets to account for slower btver2</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#9bd0dc83</link>
        <description>[CostModel][X86] Improve v8i32 MUL costs on AVX1 targets to account for slower btver2BTVER2 has a 2 cycle throughput for v4i32 multiplies (same as SSE41 targets), which is only partially hidden by the subvector extracts/insert when splitting v8i32.

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Sat, 22 May 2021 10:11:38 +0000</pubDate>
        <dc:creator>Simon Pilgrim &lt;llvm-dev@redking.me.uk&gt;</dc:creator>
    </item>
<item>
        <title>a79ac14f - [opaque pointer type] Add textual IR support for explicit type parameter to load instruction</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#a79ac14f</link>
        <description>[opaque pointer type] Add textual IR support for explicit type parameter to load instructionEssentially the same as the GEP change in r230786.A similar migration script can be used to update test cases, though a few moretest case improvements/changes were required this time around: (r229269-r229278)import fileinputimport sysimport repat = re.compile(r&quot;((?:=|:|^)\s*load (?:atomic )?(?:volatile )?(.*?))(| addrspace\(\d+\) *)\*($| *(?:%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|\[\[[a-zA-Z]|\{\{).*$)&quot;)for line in sys.stdin:  sys.stdout.write(re.sub(pat, r&quot;\1, \2\3*\4&quot;, line))Reviewers: rafael, dexonsmith, grosserDifferential Revision: http://reviews.llvm.org/D7649llvm-svn: 230794

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Fri, 27 Feb 2015 21:17:42 +0000</pubDate>
        <dc:creator>David Blaikie &lt;dblaikie@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>79e6c749 - [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#79e6c749</link>
        <description>[opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instructionOne of several parallel first steps to remove the target type of pointers,replacing them with a single opaque pointer type.This adds an explicit type parameter to the gep instruction so that when thefirst parameter becomes an opaque pointer type, the type to gep through isstill available to the instructions.* This doesn&apos;t modify gep operators, only instructions (operators will be  handled separately)* Textual IR changes only. Bitcode (including upgrade) and changing the  in-memory representation will be in separate changes.* geps of vectors are transformed as:    getelementptr &lt;4 x float*&gt; %x, ...  -&gt;getelementptr float, &lt;4 x float*&gt; %x, ...  Then, once the opaque pointer type is introduced, this will ultimately look  like:    getelementptr float, &lt;4 x ptr&gt; %x  with the unambiguous interpretation that it is a vector of pointers to float.* address spaces remain on the pointer, not the type:    getelementptr float addrspace(1)* %x  -&gt;getelementptr float, float addrspace(1)* %x  Then, eventually:    getelementptr float, ptr addrspace(1) %xImportantly, the massive amount of test case churn has been automated bysame crappy python code. I had to manually update a few test cases thatwouldn&apos;t fit the script&apos;s model (r228970,r229196,r229197,r229198). Thepython script just massages stdin and writes the result to stdout, Ithen wrapped that in a shell script to handle replacing files, thenusing the usual find+xargs to migrate all the files.update.py:import fileinputimport sysimport reibrep = re.compile(r&quot;(^.*?[^%\w]getelementptr inbounds )(((?:&lt;\d* x )?)(.*?)(| addrspace\(\d\)) *\*(|&gt;)(?:$| *(?:%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|\[\[[a-zA-Z]|\{\{).*$))&quot;)normrep = re.compile(       r&quot;(^.*?[^%\w]getelementptr )(((?:&lt;\d* x )?)(.*?)(| addrspace\(\d\)) *\*(|&gt;)(?:$| *(?:%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|\[\[[a-zA-Z]|\{\{).*$))&quot;)def conv(match, line):  if not match:    return line  line = match.groups()[0]  if len(match.groups()[5]) == 0:    line += match.groups()[2]  line += match.groups()[3]  line += &quot;, &quot;  line += match.groups()[1]  line += &quot;\n&quot;  return linefor line in sys.stdin:  if line.find(&quot;getelementptr &quot;) == line.find(&quot;getelementptr inbounds&quot;):    if line.find(&quot;getelementptr inbounds&quot;) != line.find(&quot;getelementptr inbounds (&quot;):      line = conv(re.match(ibrep, line), line)  elif line.find(&quot;getelementptr &quot;) != line.find(&quot;getelementptr (&quot;):    line = conv(re.match(normrep, line), line)  sys.stdout.write(line)apply.sh:for name in &quot;$@&quot;do  python3 `dirname &quot;$0&quot;`/update.py &lt; &quot;$name&quot; &gt; &quot;$name.tmp&quot; &amp;&amp; mv &quot;$name.tmp&quot; &quot;$name&quot;  rm -f &quot;$name.tmp&quot;doneThe actual commands:From llvm/src:find test/ -name *.ll | xargs ./apply.shFrom llvm/src/tools/clang:find test/ -name *.mm -o -name *.m -o -name *.cpp -o -name *.c | xargs -I &apos;{}&apos; ../../apply.sh &quot;{}&quot;From llvm/src/tools/polly:find test/ -name *.ll | xargs ./apply.shAfter that, check-all (with llvm, clang, clang-tools-extra, lld,compiler-rt, and polly all checked out).The extra &apos;rm&apos; in the apply.sh script is due to a few files in clang&apos;s testsuite using interesting unicode stuff that my python script was throwingexceptions on. None of those files needed to be migrated, so it seemedsufficient to ignore those cases.Reviewers: rafael, dexonsmith, grosserDifferential Revision: http://reviews.llvm.org/D7636llvm-svn: 230786

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Fri, 27 Feb 2015 19:29:02 +0000</pubDate>
        <dc:creator>David Blaikie &lt;dblaikie@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>662ece49 - TBAA: remove !tbaa from testing cases if not used.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#662ece49</link>
        <description>TBAA: remove !tbaa from testing cases if not used.This will make it easier to turn on struct-path aware TBAA since the metadataformat will change.llvm-svn: 180743

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Mon, 29 Apr 2013 22:42:01 +0000</pubDate>
        <dc:creator>Manman Ren &lt;mren@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>6d4fdd6d - Improve the X86 cost model for loads and stores.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#6d4fdd6d</link>
        <description>Improve the X86 cost model for loads and stores.llvm-svn: 170830

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Fri, 21 Dec 2012 01:33:59 +0000</pubDate>
        <dc:creator>Nadav Rotem &lt;nrotem@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>0a471ea6 - Cost Model: change the default cost of control flow instructions (br / ret / ...) to zero.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#0a471ea6</link>
        <description>Cost Model: change the default cost of control flow instructions (br / ret / ...) to zero.llvm-svn: 169423

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Wed, 05 Dec 2012 21:21:26 +0000</pubDate>
        <dc:creator>Nadav Rotem &lt;nrotem@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>c2345cbe - X86 CostModel: Add support for a some of the common arithmetic instructions for SSE4, AVX and AVX2.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#c2345cbe</link>
        <description>X86 CostModel: Add support for a some of the common arithmetic instructions for SSE4, AVX and AVX2.llvm-svn: 167347

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Sat, 03 Nov 2012 00:39:56 +0000</pubDate>
        <dc:creator>Nadav Rotem &lt;nrotem@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>a6b91ac3 - Add a cost model analysis that allows us to estimate the cost of IR-level instructions.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll#a6b91ac3</link>
        <description>Add a cost model analysis that allows us to estimate the cost of IR-level instructions.llvm-svn: 167324

            List of files:
            /llvm-project-15.0.7/llvm/test/Analysis/CostModel/X86/vectorized-loop.ll</description>
        <pubDate>Fri, 02 Nov 2012 21:48:17 +0000</pubDate>
        <dc:creator>Nadav Rotem &lt;nrotem@apple.com&gt;</dc:creator>
    </item>
</channel>
</rss>
