<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/test/Transforms/SCCP/ipsccp-basic.ll, branch release_30</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/test/Transforms/SCCP/ipsccp-basic.ll?h=release_30</id>
<link rel='self' href='https://git.amat.us/llvm/atom/test/Transforms/SCCP/ipsccp-basic.ll?h=release_30'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2011-09-20T23:28:51Z</updated>
<entry>
<title>Make sure IPSCCP never marks a tracked call as overdefined in SCCPSolver::ResolvedUndefsIn.  If we do, we can end up in a situation where a function is resolved to return a constant, but the caller is marked overdefined, which confuses the code later.</title>
<updated>2011-09-20T23:28:51Z</updated>
<author>
<name>Eli Friedman</name>
<email>eli.friedman@gmail.com</email>
</author>
<published>2011-09-20T23:28:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=79782fc8649e081b59fe2f96265042eaec1542a7'/>
<id>urn:sha1:79782fc8649e081b59fe2f96265042eaec1542a7</id>
<content type='text'>
&lt;rdar://problem/9956541&gt; (again).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140210 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Update the tests to the new EH scheme.</title>
<updated>2011-08-31T20:55:40Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2011-08-31T20:55:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=b072dd9ba434d97aac2f3b40fc81202f36c0a075'/>
<id>urn:sha1:b072dd9ba434d97aac2f3b40fc81202f36c0a075</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138891 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Land the long talked about "type system rewrite" patch.  This</title>
<updated>2011-07-09T17:41:24Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2011-07-09T17:41:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=1afcace3a3a138b1b18e5c6270caa8dae2261ae2'/>
<id>urn:sha1:1afcace3a3a138b1b18e5c6270caa8dae2261ae2</id>
<content type='text'>
patch brings numerous advantages to LLVM.  One way to look at it
is through diffstat:
 109 files changed, 3005 insertions(+), 5906 deletions(-)

Removing almost 3K lines of code is a good thing.  Other advantages
include:

1. Value::getType() is a simple load that can be CSE'd, not a mutating
   union-find operation.
2. Types a uniqued and never move once created, defining away PATypeHolder.
3. Structs can be "named" now, and their name is part of the identity that
   uniques them.  This means that the compiler doesn't merge them structurally
   which makes the IR much less confusing.
4. Now that there is no way to get a cycle in a type graph without a named
   struct type, "upreferences" go away.
5. Type refinement is completely gone, which should make LTO much MUCH faster
   in some common cases with C++ code.
6. Types are now generally immutable, so we can use "Type *" instead 
   "const Type *" everywhere.

Downsides of this patch are that it removes some functions from the C API,
so people using those will have to upgrade to (not yet added) new API.  
"LLVM 3.0" is the right time to do this.

There are still some cleanups pending after this, this patch is large enough
as-is.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Print empty structs as {} rather than { }.</title>
<updated>2010-04-08T18:03:05Z</updated>
<author>
<name>Dan Gohman</name>
<email>gohman@apple.com</email>
</author>
<published>2010-04-08T18:03:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=29e13e0c18de57209170d5cd2c3dd1311f5e2a40'/>
<id>urn:sha1:29e13e0c18de57209170d5cd2c3dd1311f5e2a40</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100787 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>reimplement multiple return value handling in IPSCCP, making it </title>
<updated>2009-11-03T23:40:48Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-11-03T23:40:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=fc36a562aed22490d311c6d0b6d2b7d3430e49a7'/>
<id>urn:sha1:fc36a562aed22490d311c6d0b6d2b7d3430e49a7</id>
<content type='text'>
more aggressive an correct.  This survives building llvm in 64-bit
mode with optimizations and the built llvm passes make check.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85973 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>fix test</title>
<updated>2009-11-03T21:26:26Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-11-03T21:26:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=60faaf64b41d4daa987195751868e46c9929a4b6'/>
<id>urn:sha1:60faaf64b41d4daa987195751868e46c9929a4b6</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85946 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>merge a test into ipsccp-basic.  running llvm-ld to get one pass is... bad.</title>
<updated>2009-11-03T21:25:50Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-11-03T21:25:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=db70f8a4424aac5349ba029ef417344fb5848b7d'/>
<id>urn:sha1:db70f8a4424aac5349ba029ef417344fb5848b7d</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85945 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>fix an IPSCCP bug I introduced when I changed IPSCCP to start working on </title>
<updated>2009-11-03T19:24:51Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-11-03T19:24:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=2396cc37ae6f29693b0984e0d9129487a4e3830c'/>
<id>urn:sha1:2396cc37ae6f29693b0984e0d9129487a4e3830c</id>
<content type='text'>
functions that don't have local linkage.  Basically, we need to be more
careful about propagating argument information to functions whose results
we aren't tracking.  This fixes a miscompilation of 
LLVMCConfigurationEmitter.cpp when built with an llvm-gcc that has ipsccp
enabled.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85923 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>merge 2008-03-10-sret.ll into ipsccp-basic.ll, and upgrade its syntax.</title>
<updated>2009-11-02T18:27:22Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-11-02T18:27:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=0909796868048d3453fc8bdffd5147cc77f2010e'/>
<id>urn:sha1:0909796868048d3453fc8bdffd5147cc77f2010e</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85811 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>disable IPSCCP support for multiple return values, it is buggy, so just</title>
<updated>2009-11-02T18:22:51Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-11-02T18:22:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=2bbbbd6ac823181f8c3cceb55482254c4255a65a'/>
<id>urn:sha1:2bbbbd6ac823181f8c3cceb55482254c4255a65a</id>
<content type='text'>
disable it until I can fix it.


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