<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/tools/llvm-diff, branch release_33</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/tools/llvm-diff?h=release_33</id>
<link rel='self' href='https://git.amat.us/llvm/atom/tools/llvm-diff?h=release_33'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2013-03-26T03:45:47Z</updated>
<entry>
<title>Manually update the dependencies in the Makefiles. It turns out that all</title>
<updated>2013-03-26T03:45:47Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2013-03-26T03:45:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=0f3e4b149503d85403ec1181e5ffe9b60509c090'/>
<id>urn:sha1:0f3e4b149503d85403ec1181e5ffe9b60509c090</id>
<content type='text'>
that work on the LLVMBuild based dependency specification didn't
actually work, we just now maintain dependencies in *3* places instead
of 2. Yay.

There may still be some missing dependencies, I'm still sifting through
the bots and my builds, but this is a step in the right direction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177988 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Split out the IRReader header and the utility functions it provides into</title>
<updated>2013-03-26T02:25:37Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2013-03-26T02:25:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=7fc162f893d67ffd96fdb19e2eb9a03b4621f0c0'/>
<id>urn:sha1:7fc162f893d67ffd96fdb19e2eb9a03b4621f0c0</id>
<content type='text'>
its own library. These functions are bridging between the bitcode reader
and the ll parser which are in different libraries. Previously we didn't
have any good library to do this, and instead played fast and loose with
a "header only" set of interfaces in the Support library. This really
doesn't work well as evidenced by the recent attempt to add timing logic
to the these routines.

As part of this, make them normal functions rather than weird inline
functions, and sink the implementation into the library. Also clean up
the header to be nice and minimal.

This requires updating lots of build system dependencies to specify that
the IRReader library is needed, and several source files to not
implicitly rely upon the header file to transitively include all manner
of other headers.

If you are using IRReader.h, this commit will break you (the header
moved) and you'll need to also update your library usage to include
'irreader'. I will commit the corresponding change to Clang momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177971 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/llvm/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>Sort the #include lines for tools/...</title>
<updated>2012-12-04T10:44:52Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2012-12-04T10:44:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=f010c464a11444733ec67e31aace8bcebeaf2588'/>
<id>urn:sha1:f010c464a11444733ec67e31aace8bcebeaf2588</id>
<content type='text'>
Again, tools are trickier to pick the main module header for than
library source files. I've started to follow the pattern of using
LLVMContext.h when it is included as a stub for program source files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169252 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix a typo (the the =&gt; the)</title>
<updated>2012-07-23T08:51:15Z</updated>
<author>
<name>Sylvestre Ledru</name>
<email>sylvestre@debian.org</email>
</author>
<published>2012-07-23T08:51:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c8e41c591741b3da1077f7000274ad040bef8002'/>
<id>urn:sha1:c8e41c591741b3da1077f7000274ad040bef8002</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160621 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Remove unused private fields found by clang's new -Wunused-private-field.</title>
<updated>2012-06-06T18:25:08Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2012-06-06T18:25:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=a7542d5f870c5d98960d1676e23ac1d1d975d7e5'/>
<id>urn:sha1:a7542d5f870c5d98960d1676e23ac1d1d975d7e5</id>
<content type='text'>
There are some that I didn't remove this round because they looked like
obvious stubs. There are dead variables in gtest too, they should be
fixed upstream.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158090 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>ConstantRangesSet renamed to IntegersSubset. CRSBuilder renamed to IntegersSubsetMapping.</title>
<updated>2012-05-29T12:26:47Z</updated>
<author>
<name>Stepan Dyatkovskiy</name>
<email>stpworld@narod.ru</email>
</author>
<published>2012-05-29T12:26:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=0aa32d5d0ff6cd65b6cff957858a79e2d2a614bd'/>
<id>urn:sha1:0aa32d5d0ff6cd65b6cff957858a79e2d2a614bd</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157612 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Ordinary PR1255 patch: DifferenceEngine and CPPBackend adopted to the new SwitchInst methods.</title>
<updated>2012-05-19T13:14:30Z</updated>
<author>
<name>Stepan Dyatkovskiy</name>
<email>stpworld@narod.ru</email>
</author>
<published>2012-05-19T13:14:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=f4c261b1378b0f7aaede3a791f0e05c9ab94ea34'/>
<id>urn:sha1:f4c261b1378b0f7aaede3a791f0e05c9ab94ea34</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157112 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>
<entry>
<title>Taken into account Duncan's comments for r149481 dated by 2nd Feb 2012:</title>
<updated>2012-03-08T07:06:20Z</updated>
<author>
<name>Stepan Dyatkovskiy</name>
<email>stpworld@narod.ru</email>
</author>
<published>2012-03-08T07:06:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c10fa6c801e48771b5eade50afc2fe6abaf08227'/>
<id>urn:sha1:c10fa6c801e48771b5eade50afc2fe6abaf08227</id>
<content type='text'>
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120130/136146.html

Implemented CaseIterator and it solves almost all described issues: we don't need to mix operand/case/successor indexing anymore. Base iterator class is implemented as a template since it may be initialized either from "const SwitchInst*" or from "SwitchInst*".

ConstCaseIt is just a read-only iterator.
CaseIt is read-write iterator; it allows to change case successor and case value.

Usage of iterator allows totally remove resolveXXXX methods. All indexing convertions done automatically inside the iterator's getters.

Main way of iterator usage looks like this:
SwitchInst *SI = ... // intialize it somehow

for (SwitchInst::CaseIt i = SI-&gt;caseBegin(), e = SI-&gt;caseEnd(); i != e; ++i) {
  BasicBlock *BB = i.getCaseSuccessor();
  ConstantInt *V = i.getCaseValue();
  // Do something.
}

If you want to convert case number to TerminatorInst successor index, just use getSuccessorIndex iterator's method.
If you want initialize iterator from TerminatorInst successor index, use CaseIt::fromSuccessorIndex(...) method.

There are also related changes in llvm-clients: klee and clang.



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