<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emscripten-fastcomp/lib/Transforms/IPO/GlobalDCE.cpp, branch 1.14.1</title>
<subtitle>LLVM with the emscripten fastcomp javascript backend</subtitle>
<id>https://git.amat.us/emscripten-fastcomp/atom/lib/Transforms/IPO/GlobalDCE.cpp?h=1.14.1</id>
<link rel='self' href='https://git.amat.us/emscripten-fastcomp/atom/lib/Transforms/IPO/GlobalDCE.cpp?h=1.14.1'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/'/>
<updated>2013-04-13T16:11:14Z</updated>
<entry>
<title>GlobalDCE: Fix an oversight in my last commit that could lead to crashes.</title>
<updated>2013-04-13T16:11:14Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2013-04-13T16:11:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=9cbee63b1a475782dbefe767f4935fad9e5ff20d'/>
<id>urn:sha1:9cbee63b1a475782dbefe767f4935fad9e5ff20d</id>
<content type='text'>
There is a Constant with non-constant operands: blockaddress.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179460 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix a scalability issue with complex ConstantExprs.</title>
<updated>2013-04-13T12:53:18Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2013-04-13T12:53:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=8848680ce0ab416cb646d0a03aa6f4f6f25e7623'/>
<id>urn:sha1:8848680ce0ab416cb646d0a03aa6f4f6f25e7623</id>
<content type='text'>
This is basically the same fix in three different places. We use a set to avoid
walking the whole tree of a big ConstantExprs multiple times.

For example: (select cmp, (add big_expr 1), (add big_expr 2))
We don't want to visit big_expr twice here, it may consist of thousands of
nodes.

The testcase exercises this by creating an insanely large ConstantExprs out of
a loop. It's questionable if the optimizer should ever create those, but this
can be triggered with real C code. Fixes PR15714.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179458 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Move all of the header files which are involved in modelling the LLVM IR</title>
<updated>2013-01-02T11:36:10Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2013-01-02T11:36:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=0b8c9a80f20772c3793201ab5b251d3520b9cea3'/>
<id>urn:sha1:0b8c9a80f20772c3793201ab5b251d3520b9cea3</id>
<content type='text'>
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use the new script to sort the includes of every file under lib.</title>
<updated>2012-12-03T16:50:05Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2012-12-03T16:50:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=d04a8d4b33ff316ca4cf961e06c9e312eff8e64f'/>
<id>urn:sha1:d04a8d4b33ff316ca4cf961e06c9e312eff8e64f</id>
<content type='text'>
Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.

Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Implement the isSafeToDiscardIfUnused predicate and use it in globalopt and</title>
<updated>2012-06-14T22:48:13Z</updated>
<author>
<name>Rafael Espindola</name>
<email>rafael.espindola@gmail.com</email>
</author>
<published>2012-06-14T22:48:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=0397729d3b8da4208660a163d18296b1a3bd32b8'/>
<id>urn:sha1:0397729d3b8da4208660a163d18296b1a3bd32b8</id>
<content type='text'>
globaldce. Globaldce was already removing linkonce globals, but globalopt was
not.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158476 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Get rid of static constructors for pass registration.  Instead, every pass exposes an initializeMyPassFunction(), which</title>
<updated>2010-10-19T17:21:58Z</updated>
<author>
<name>Owen Anderson</name>
<email>resistor@mac.com</email>
</author>
<published>2010-10-19T17:21:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=081c34b725980f995be9080eaec24cd3dfaaf065'/>
<id>urn:sha1:081c34b725980f995be9080eaec24cd3dfaaf065</id>
<content type='text'>
must be called in the pass's constructor.  This function uses static dependency declarations to recursively initialize
the pass's dependencies.

Clients that only create passes through the createFooPass() APIs will require no changes.  Clients that want to use the
CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
before parsing commandline arguments.

I have tested this with all standard configurations of clang and llvm-gcc on Darwin.  It is possible that there are problems
with the static dependencies that will only be visible with non-standard options.  If you encounter any crash in pass
registration/creation, please send the testcase to me directly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116820 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Now with fewer extraneous semicolons!</title>
<updated>2010-10-07T22:25:06Z</updated>
<author>
<name>Owen Anderson</name>
<email>resistor@mac.com</email>
</author>
<published>2010-10-07T22:25:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=ce665bd2e2b581ab0858d1afe359192bac96b868'/>
<id>urn:sha1:ce665bd2e2b581ab0858d1afe359192bac96b868</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115996 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Reapply r110396, with fixes to appease the Linux buildbot gods.</title>
<updated>2010-08-06T18:33:48Z</updated>
<author>
<name>Owen Anderson</name>
<email>resistor@mac.com</email>
</author>
<published>2010-08-06T18:33:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=90c579de5a383cee278acc3f7e7b9d0a656e6a35'/>
<id>urn:sha1:90c579de5a383cee278acc3f7e7b9d0a656e6a35</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110460 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Revert r110396 to fix buildbots.</title>
<updated>2010-08-06T00:23:35Z</updated>
<author>
<name>Owen Anderson</name>
<email>resistor@mac.com</email>
</author>
<published>2010-08-06T00:23:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=1f74590e9d1b9cf0f1f81a156efea73f76546e05'/>
<id>urn:sha1:1f74590e9d1b9cf0f1f81a156efea73f76546e05</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110410 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Don't use PassInfo* as a type identifier for passes.  Instead, use the address of the static</title>
<updated>2010-08-05T23:42:04Z</updated>
<author>
<name>Owen Anderson</name>
<email>resistor@mac.com</email>
</author>
<published>2010-08-05T23:42:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=9ccaf53ada99c63737547c0235baeb8454b04e80'/>
<id>urn:sha1:9ccaf53ada99c63737547c0235baeb8454b04e80</id>
<content type='text'>
ID member as the sole unique type identifier.  Clean up APIs related to this change.


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