<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/lib/Transforms/InstCombine, branch release_31</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/lib/Transforms/InstCombine?h=release_31</id>
<link rel='self' href='https://git.amat.us/llvm/atom/lib/Transforms/InstCombine?h=release_31'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2012-04-08T14:36:56Z</updated>
<entry>
<title>Teach InstCombine to nuke a common alloca pattern -- an alloca which has</title>
<updated>2012-04-08T14:36:56Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2012-04-08T14:36:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=2450eca96061ddb1d9a62f42669184684476448a'/>
<id>urn:sha1:2450eca96061ddb1d9a62f42669184684476448a</id>
<content type='text'>
GEPs, bit casts, and stores reaching it but no other instructions. These
often show up during the iterative processing of the inliner, SROA, and
DCE. Once we hit this point, we can completely remove the alloca. These
were actually showing up in the final, fully optimized code in a bunch
of inliner tests I've been working on, and notably they show up after
LLVM finishes optimizing away all function calls involved in
hash_combine(a, b).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154285 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Always compute all the bits in ComputeMaskedBits.</title>
<updated>2012-04-04T12:51:34Z</updated>
<author>
<name>Rafael Espindola</name>
<email>rafael.espindola@gmail.com</email>
</author>
<published>2012-04-04T12:51:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=26c8dcc692fb2addd475446cfff24d6a4e958bca'/>
<id>urn:sha1:26c8dcc692fb2addd475446cfff24d6a4e958bca</id>
<content type='text'>
This allows us to keep passing reduced masks to SimplifyDemandedBits, but
know about all the bits if SimplifyDemandedBits fails. This allows instcombine
to simplify cases like the one in the included testcase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154011 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>153465 was incorrect. In this code we wanted to check that the pointer operand is of pointer type (and not vector type).</title>
<updated>2012-03-26T21:00:53Z</updated>
<author>
<name>Nadav Rotem</name>
<email>nadav.rotem@intel.com</email>
</author>
<published>2012-03-26T21:00:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=02f0a49bbaa9a0f881ef18abd3b06168c2b35135'/>
<id>urn:sha1:02f0a49bbaa9a0f881ef18abd3b06168c2b35135</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153468 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>PR12357: The pointer was used before it was checked.</title>
<updated>2012-03-26T20:39:18Z</updated>
<author>
<name>Nadav Rotem</name>
<email>nadav.rotem@intel.com</email>
</author>
<published>2012-03-26T20:39:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c71108b6f843f39d4a305e6d351e4a2be4f604b2'/>
<id>urn:sha1:c71108b6f843f39d4a305e6d351e4a2be4f604b2</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153465 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>eliminate an unneeded branch, part of PR12357</title>
<updated>2012-03-26T19:13:57Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2012-03-26T19:13:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=de813b7108de64829ab006e6b998a7b38d119ecc'/>
<id>urn:sha1:de813b7108de64829ab006e6b998a7b38d119ecc</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153458 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Revert r152907.</title>
<updated>2012-03-16T18:20:54Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2012-03-16T18:20:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=0ccae0b1f6b95e4500adb45649472389a1f111a7'/>
<id>urn:sha1:0ccae0b1f6b95e4500adb45649472389a1f111a7</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152935 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>The alignment of the pointer part of the store instruction may have an</title>
<updated>2012-03-16T07:40:08Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2012-03-16T07:40:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=ff030fd3005e05a2f73a0008faac02063c2582bb'/>
<id>urn:sha1:ff030fd3005e05a2f73a0008faac02063c2582bb</id>
<content type='text'>
alignment. If that's the case, then we want to make sure that we don't increase
the alignment of the store instruction. Because if we increase it to be "more
aligned" than the pointer, code-gen may use instructions which require a greater
alignment than the pointer guarantees.
&lt;rdar://problem/11043589&gt;


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152907 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>In InstCombiner::visitOr, make sure we reverse the operand swap used for checking for or-of-xor operations after those checks; a later check expects that any constant will be in Op1.  PR12234.</title>
<updated>2012-03-16T00:52:42Z</updated>
<author>
<name>Eli Friedman</name>
<email>eli.friedman@gmail.com</email>
</author>
<published>2012-03-16T00:52:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=e9f15c8a563a745c5cafa7c98b1f12de2dcab070'/>
<id>urn:sha1:e9f15c8a563a745c5cafa7c98b1f12de2dcab070</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152884 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use an iterator instead of calling .size() on the worklist every time, which is wasteful.</title>
<updated>2012-03-15T11:19:41Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2012-03-15T11:19:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=847d3812adab7385c64783c004f679708f0d7924'/>
<id>urn:sha1:847d3812adab7385c64783c004f679708f0d7924</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152794 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>llvm::SwitchInst</title>
<updated>2012-03-11T06:09:17Z</updated>
<author>
<name>Stepan Dyatkovskiy</name>
<email>stpworld@narod.ru</email>
</author>
<published>2012-03-11T06:09:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=3d3abe0852d5f499bed7ab014519dd582a0a795d'/>
<id>urn:sha1:3d3abe0852d5f499bed7ab014519dd582a0a795d</id>
<content type='text'>
Renamed methods caseBegin, caseEnd and caseDefault with case_begin, case_end, and case_default.
Added some notes relative to case iterators.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152532 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
