• Home
  • History
  • Annotate
  • only in /external/llvm/include/llvm/Support/
History log of /external/llvm/include/llvm/Support/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cd81d94322a39503e4a3e87b6ee03d4fcb3465fb 21-Jul-2014 Stephen Hines <srhines@google.com> Update LLVM for rebase to r212749.

Includes a cherry-pick of:
r212948 - fixes a small issue with atomic calls

Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
RMBuildAttributes.h
RMWinEH.h
OFF.h
ompiler.h
onvertUTF.h
rashRecoveryContext.h
ataTypes.h.cmake
ataTypes.h.in
warf.h
LF.h
ndian.h
rrc.h
rrorHandling.h
rrorOr.h
Env.h
ileOutputBuffer.h
ileSystem.h
ormat.h
enericDomTree.h
raphWriter.h
ockFileManager.h
achO.h
anagedStatic.h
athExtras.h
emory.h
emoryBuffer.h
rocess.h
rogram.h
andomNumberGenerator.h
caledNumber.h
ourceMgr.h
pecialCaseList.h
treamableMemoryObject.h
tringPool.h
wapByteOrder.h
argetRegistry.h
hreading.h
indowsError.h
AMLTraits.h
ystem_error.h
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
RMBuildAttributes.h
llocator.h
rrayRecycler.h
lockFrequency.h
ranchProbability.h
OFF.h
asting.h
ommandLine.h
ompression.h
rashRecoveryContext.h
ebug.h
ynamicLibrary.h
LF.h
rrorHandling.h
ileOutputBuffer.h
ileSystem.h
ileUtilities.h
ormattedStream.h
COV.h
enericDomTree.h
enericDomTreeConstruction.h
raphWriter.h
EB128.h
ineIterator.h
ockFileManager.h
achO.h
anagedStatic.h
emory.h
emoryBuffer.h
nDiskHashTable.h
ath.h
rogram.h
egex.h
egistry.h
MLoc.h
aveAndRestore.h
ignals.h
ourceMgr.h
treamableMemoryObject.h
tringPool.h
argetRegistry.h
imer.h
nicode.h
nicodeCharRanges.h
AMLParser.h
AMLTraits.h
ircular_raw_ostream.h
aw_ostream.h
ystem_error.h
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
RMBuildAttributes.h
RMEHABI.h
lignOf.h
llocator.h
rrayRecycler.h
lockFrequency.h
FG.h
OFF.h
allSite.h
asting.h
ommandLine.h
ompiler.h
ompression.h
onstantFolder.h
onstantRange.h
rashRecoveryContext.h
ataFlow.h
ebugLoc.h
warf.h
LF.h
ndian.h
ndianStream.h
rrorOr.h
ileOutputBuffer.h
ileSystem.h
ileUtilities.h
ormat.h
ormattedStream.h
COV.h
enericDomTree.h
enericDomTreeConstruction.h
etElementPtrTypeIterator.h
ost.h
nstIterator.h
EB128.h
eakDetector.h
ineIterator.h
D5.h
achO.h
athExtras.h
emory.h
emoryBuffer.h
oFolder.h
assNameParser.h
ath.h
atternMatch.h
redIteratorCache.h
rettyStackTrace.h
rocess.h
rogram.h
ecycler.h
egex.h
treamableMemoryObject.h
tringRefMemoryObject.h
argetFolder.h
argetRegistry.h
imeValue.h
oolOutputFile.h
nicodeCharRanges.h
algrind.h
alueHandle.h
in64EH.h
AMLParser.h
AMLTraits.h
ircular_raw_ostream.h
aw_os_ostream.h
aw_ostream.h
ystem_error.h
ype_traits.h
ce9904c6ea8fd669978a8eefb854b330eb9828ff 12-Feb-2014 Stephen Hines <srhines@google.com> Merge remote-tracking branch 'upstream/release_34' into merge-20140211

Conflicts:
lib/Linker/LinkModules.cpp
lib/Support/Unix/Signals.inc

Change-Id: Ia54f291fa5dc828052d2412736e8495c1282aa64
7bb782b1cd3b931cf27565bd7c5a8952037f01cb 09-Dec-2013 Manman Ren <manman.ren@gmail.com> Merging r196144:
------------------------------------------------------------------------
r196144 | mren | 2013-12-02 12:09:52 -0800 (Mon, 02 Dec 2013) | 4 lines

Debug Info: Move the constant for Debug Info Version from Dwarf.h to Metadata.h.

Suggested by Eric.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@196819 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
35a02635b23f3b063a8860b6258c5b3e9507840a 09-Dec-2013 Bill Wendling <isanbard@gmail.com> Merging r195494:
------------------------------------------------------------------------
r195494 | mren | 2013-11-22 11:41:59 -0800 (Fri, 22 Nov 2013) | 4 lines

Debug Info: add a constant for debug info version number.

This will be used to output the debug info version number as a module flag.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@196760 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
354362524a72b3fa43a6c09380b7ae3b2380cbba 19-Nov-2013 Juergen Ributzka <juergen@apple.com> [weak vtables] Remove a bunch of weak vtables

This patch removes most of the trivial cases of weak vtables by pinning them to
a single object file. The memory leaks in this version have been fixed. Thanks
Alexey for pointing them out.

Differential Revision: http://llvm-reviews.chandlerc.com/D2068

Reviewed by Andy

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195064 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
alueHandle.h
AMLParser.h
AMLTraits.h
6919bec07f9c4ee57a0e99f263b63546b386f22b 18-Nov-2013 Alexander Kornienko <alexfh@google.com> Recover gracefully when deserializing invalid YAML input.
Fixes http://llvm.org/PR16221, http://llvm.org/PR15927
Phabricator: http://llvm-reviews.chandlerc.com/D1236

Patch by Andrew Tulloch!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195016 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
b21ab43cfc3fa0dacf5c95f04e58b6d804b59a16 18-Nov-2013 Alexey Samsonov <samsonov@google.com> Revert r194865 and r194874.

This change is incorrect. If you delete virtual destructor of both a base class
and a subclass, then the following code:
Base *foo = new Child();
delete foo;
will not cause the destructor for members of Child class. As a result, I observe
plently of memory leaks. Notable examples I investigated are:
ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194997 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
alueHandle.h
AMLParser.h
AMLTraits.h
e5a694ab578416d8d280836937c7d2714b1a83e6 17-Nov-2013 Yaron Keren <yaron.keren@gmail.com> DebugLoc defines LineCol as 32 bit in comment but unsigned in code.
This patch modifies LineCol to be a uint32_t.

See http://llvm.org/bugs/show_bug.cgi?id=17957



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194957 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
e7a1e3ee8279f12d0f2b49fb198d577949795c88 17-Nov-2013 Michael Gottesman <mgottesman@apple.com> [block-freq] Add BlockFrequency::scale that returns a remainder from the division and make the private scale in BlockFrequency more performant.

This change is the first in a series of changes improving LLVM's Block
Frequency propogation implementation to not lose probability mass in
branchy code when propogating block frequency information from a basic
block to its successors. This patch is a simple infrastructure
improvement that does not actually modify the block frequency
algorithm. The specific changes are:

1. Changes the division algorithm used when scaling block frequencies by
branch probabilities to a short division algorithm. This gives us the
remainder for free as well as provides a nice speed boost. When I
benched the old routine and the new routine on a Sandy Bridge iMac with
disabled turbo mode performing 8192 iterations on an array of length
32768, I saw ~600% increase in speed in mean/median performance.

2. Exposes a scale method that returns a remainder. This is important so
we can ensure that when we scale a block frequency by some branch
probability BP = N/D, the remainder from the division by D can be
retrieved and propagated to other children to ensure no probability mass
is lost (more to come on this).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194950 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
35de9946d5fc01d2fed970bdcc7966bad92bdbc4 16-Nov-2013 Jim Grosbach <grosbach@apple.com> X86: Encode the 'h' cpu subtype in the MachO header for x86.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194906 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
5a364c5561ec04e33a6f5d52c14f1bac6f247ea0 15-Nov-2013 Juergen Ributzka <juergen@apple.com> [weak vtables] Remove a bunch of weak vtables

This patch removes most of the trivial cases of weak vtables by pinning them to
a single object file.

Differential Revision: http://llvm-reviews.chandlerc.com/D2068

Reviewed by Andy

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194865 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
alueHandle.h
AMLParser.h
AMLTraits.h
8a631b2cbe2f8621eb3679a4898205da577453b7 15-Nov-2013 Rui Ueyama <ruiu@google.com> Path: Recognize COFF import library file magic.

Summary: Make identify_magic to recognize COFF import file.

Reviewers: Bigcheese

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2165

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194852 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
2b7fef0ad4bfaaf9fd41cda5abda35aab701b598 15-Nov-2013 Rui Ueyama <ruiu@google.com> Include raw_ostream.h.

Including only Debug.h did not cause a compilation error, but you couldn't
do anything (like writing something with <<) to raw_ostreams returned by
llvm::dbgs() or llvm::errs() without including raw_ostream.h. So including
it from Debug.h should make sense.

Differential Revision: http://llvm-reviews.chandlerc.com/D2183

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194759 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
04fca67d6f4b314ba618714698b58dbfba3af005 14-Nov-2013 Nick Kledzik <kledzik@apple.com> Add dyn_cast<> support to YAML I/O's IO class

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194655 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
4e7c22a90b28828e4a28751b65ae24091f7df4ec 14-Nov-2013 Nick Kledzik <kledzik@apple.com> Add simple support for tags in YAML I/O

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194644 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
4bd0224887a8de1434186cad2f618c18dea06c0b 14-Nov-2013 Yuchen Wu <yuchenericwu@hotmail.com> llvm-cov: Slightly improved error checking.

- readInt() should check all 4 bytes can be read, not just 1.
- In the event of false data in the gcno file, it was possible to index
into a non-existent index of SmallVector, causing assertion error.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194639 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
131a764e0e7abc90b322fd568e042d3c5a0633af 14-Nov-2013 Yuchen Wu <yuchenericwu@hotmail.com> llvm-cov: Removed StringMap holding GCOVLines.

According to the hazy gcov documentation, it appeared to be technically
possible for lines within a block to belong to different source files.
However, upon further investigation, gcov does not actually support
multiple source files for a single block.

This change removes a level of separation between blocks and lines by
replacing the StringMap of GCOVLines with a SmallVector of ints
representing line numbers. This also means that the GCOVLines class is
no longer needed.

This paves the way for supporting the "-a" option, which will output
block information.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194637 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
dbb51ff01fd08df39e5040c1cd9edacdc3e4308a 14-Nov-2013 Yuchen Wu <yuchenericwu@hotmail.com> llvm-cov: Replaced asserts with proper error handling.

Unified the interface for read functions. They all return a boolean
indicating if the read from file succeeded. Functions that previously
returned the read value now store it into a variable that is passed in
by reference instead. Callers will need to check the return value to
detect if an error occurred.

Also added a new test which ensures that no assertions occur when file
contains invalid data. llvm-cov should return with error code 1 upon
failure.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194635 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
20d7ed198978f871e91fde66e3b9a4a73a7c5396 13-Nov-2013 Aaron Ballman <aaron@aaronballman.com> Removing llvm::huge_vald and llvm::huge_vall because they are not currently used, and HUGE_VALD does not appear to be supported everywhere anyways.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194535 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
eb3602472026dc029beb45ccbe09bc84162ba949 13-Nov-2013 Aaron Ballman <aaron@aaronballman.com> Replacing HUGE_VALF with llvm::huge_valf in order to work around a warning triggered in MSVC 12.

Patch reviewed by Reid Kleckner and Jim Grosbach.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194533 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c47adf8db2cbe21f5de0a955b8ef89f177c9ad16 12-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com> Revert "Remove unused variable."

This reverts commit r194485.

The variable is unused in some macro instantiations, but not others. We should
probably fix clang to not warn on this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194486 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
67a404dc26ce29338375ad627333a1af082d70d6 12-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused variable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194485 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
38fb3fae3445716686b14e771e08a7ef7b27dec1 11-Nov-2013 Pete Cooper <peter_cooper@apple.com> Don't universally enable initialiser lists on GCC. Thanks for catching this Chandler

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194365 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
43ed63bc8310758d2a80deecb2e470f383ca5691 11-Nov-2013 Pete Cooper <peter_cooper@apple.com> Add LLVM_HAS_INITIALIZER_LISTS for upcoming C++11 support. Use it in ArrayRef

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194362 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
4411ba06fc5777edf4dde239d6ac8289bfd488ce 06-Nov-2013 Simon Atanasyan <simon@atanasyan.com> Add DT_VERSYM dynamic table entry tag definition.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194149 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
c86cf046501035b9b931bb2a86ed7b81b8fa9847 06-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove another unused, and IMHO, not very desirable feature of ErrorOr.

One of the uses of the IsValid flag is to support default constructing
a ErrorOr that is not a Error or a Value. There is not much value in
doing that IMHO. If ErrorOr was to have a default constructor, it
should be implemented by default constructing the value, but even that
looks unnecessary.

The other use is to avoid calling destructors on moved objects. This
looks wrong. If the data being moved has non trivial treatment of
moves (an std::vector for example), it is its destructor that should
handle it, not ~ErrorOr.

With this change ErrorOr becomes a fairly simple wrapper and should
always be better than using an error_code + value in an API.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194109 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
e85959cb2cb6f82959b3cf1a9ef59c6d793a2556 05-Nov-2013 Yuchen Wu <yuchenericwu@hotmail.com> Support for reading run counts in llvm-cov.

This patch enables llvm-cov to correctly output the run count stored in
the GCDA file. GCOVProfiling currently does not generate this
information, so the GCDA run data had to be hacked on from a GCDA file
generated by gcc. This is corrected by a subsequent patch.

With the run and program data included, both llvm-cov and gcov produced
the same output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194033 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
23c8d2bf861ac0984da0b214fa08090abcba1869 05-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com> Fix MSVC build by not putting an error_code directly in a union.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194032 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
f94b3480fce38b376d02fb0775b9448bbda9313b 05-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com> Simplify ErrorOr.

ErrorOr had quiet a bit of complexity and indirection to be able to hold a user
type with the error.

That feature is not used anymore. This patch removes it, it will live in svn
history if we ever need it again.

If we do need it again, IMHO there is one thing that should be done
differently: Holding extra info in the error is not a property a function also
returning a value or not. The ability to hold extra info should be in the error
type and ErrorOr templated over it so that we don't need the funny looking
ErrorOr<void>.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194030 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
5c042162beb3c2dd556e00aab84c4278a69cd5b1 04-Nov-2013 Zoran Jovanovic <zoran.jovanovic@imgtec.com> Support for microMIPS branch instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193992 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
fa0da86a59c502bfbfa01d3d5f694f18f6e8a717 04-Nov-2013 Filip Pizlo <fpizlo@apple.com> Make the pretty stack trace be an opt-in, rather than opt-out, facility. Enable pretty
stack traces by default if you use PrettyStackTraceProgram, so that existing LLVM-based
tools will continue to get it without any changes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193971 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
daaa8b720b026c83bf6d4307042057665348b222 02-Nov-2013 Yuchen Wu <yuchenericwu@hotmail.com> Added command-line option to output llvm-cov to file.

Added -o option to llvm-cov. If no output file is specified, it defaults
to STDOUT.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193899 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
f132bf39b95815ed899c78f0ff33d743a286b1ac 30-Oct-2013 Simon Atanasyan <simon@atanasyan.com> [Mips] Add more SHF_MIPS_xxx ELF section flags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193713 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
8b1d5e20528617b9f026c97714e74b8f7252f343 29-Oct-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove declared but not implemented function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193637 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
1aaf43c2a2ec0fd4c8dbfe56558237219c5f8af7 29-Oct-2013 Zoran Jovanovic <zoran.jovanovic@imgtec.com> Support for microMIPS jump instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193623 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
76a74f72534452b53ba3ba054bd8ab27efc48487 25-Oct-2013 Rafael Espindola <rafael.espindola@gmail.com> Change MemoryBuffer::getFile to take a Twine.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193429 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
a954618c6e6c5f94d3cedc0b6bc19dbc49e56ac2 25-Oct-2013 David Blaikie <dblaikie@gmail.com> DIEHash: Summary hashing of nested types

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193427 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
76fa4d629b22903632529e2cb19c86105a0d1247 25-Oct-2013 Yuchen Wu <yuchenericwu@hotmail.com> Support for reading program counts in llvm-cov.

llvm-cov will now be able to read program counts from the GCDA file and
output it in the same format as gcov. The program summary tag was
identified from gcov-io.h as "\0\0\0\a3".

There is currently a bug in GCOVProfiling.cpp which does not generate
the
run- or program-counting IR, so this change was tested manually by
modifying the GCDA file and comparing the gcov and llvm-cov outputs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193389 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
96b40055489a044a1815d5316f8b865794dd7550 24-Oct-2013 John Thompson <John.Thompson.JTSoftware@gmail.com> Reverting my r193344 checkin due to build breakage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193350 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
43752f2d4f29ebb40318e8da05633c994b694f46 24-Oct-2013 John Thompson <John.Thompson.JTSoftware@gmail.com> Added std::string as a built-in type for mapping.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193344 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
5e4d8a5eca03c977ba01e061078a2d740ee6130a 24-Oct-2013 Zonr Chang <zonr.xchg@gmail.com> Include missing Compiler.h for using LLVM_ENUM_INT_TYPE.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193315 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cbbd20879e8acf35d3326a2459e17a298b5f5d15 24-Oct-2013 Yuchen Wu <yuchenericwu@hotmail.com> Fixed llvm-cov to count edges instead of blocks.

This was a fundamental flaw in llvm-cov where it treated the values in
the GCDA files as block counts instead of edge counts. This created
incorrect line counts when branching was present. Instead, the edge
counts should be summed to obtain the correct block count.

The fix was tested using custom test files as well as single source
files from the test-suite directory. The behaviour can be verified by
reading the GCOV documentation that describes the GCDA spec ("ARC_COUNTS
gives the counter values for those arcs that are instrumented") and the
header description provided by GCOVProfiling.cpp ("instruments the code
that runs to records (sic) the edges between blocks that run and emit a
complementary "gcda" file on exit").

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193299 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
9db9663d1d2e4e336c2787bacff4ee7125622e21 23-Oct-2013 Yuchen Wu <yuchenericwu@hotmail.com> Use a map instead of vector to store line counts.

There are a few motivations for this:
- Using a map allows for checking if line is in map. This differentiates
unexecutable lines (such as comments) from unexecuted logical lines of
code. "#####" is now outputted in this case, in line with gcov.
- Source files are no longer read in twice: once when storing the line
counts, and once when outputting the data.
- Greatly simplifies the function FileInfo::addLineCount().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193264 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
0082717cb537e2d1424f755a49510fa9f9e67071 23-Oct-2013 Zoran Jovanovic <zoran.jovanovic@imgtec.com> Support for microMIPS relocations 1.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193247 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
51ec77d880ce53cbc8a48168185edc085df9b6d9 22-Oct-2013 Bob Wilson <bob.wilson@apple.com> Fix llvm-cov counts to be 64-bit integers to avoid overflows.

Line counts in llvm-cov are read in as 64-bit integers but were being truncated
to 32-bit in collectLineCounts(), which caused overflow for large counts.
This patch fixes all counts to be uint64_t.

Patch by Yuchen Wu!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193172 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
135fe6ac5f5b80ef68c19b3ec7bb0063e28f2bab 22-Oct-2013 Benjamin Kramer <benny.kra@googlemail.com> Speling fixes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193165 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
ileSystem.h
e877eebfe9d716ed1101aecf958af473836e70e1 22-Oct-2013 Bob Wilson <bob.wilson@apple.com> Change llvm-cov output formatting to be more similar to gcov.

- Replaced tabs with proper padding
- print() takes two arguments, which are the GCNO and GCDA filenames
- Files are listed at the top of output, appended by line 0
- Stripped strings of trailing \0s
- Removed last two lines of whitespace in output

Patch by Yuchen Wu!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193148 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
770530babc78e444bb6d0aadc87702ef138293fd 21-Oct-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: Put each kind of constant (form, attribute, tag, etc) into its own enum for ease of use.

This allows various variables to be more self-documenting and easier to
debug by being of specific types without overlapping enum values.

Precommit review by Eric Christopher.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193091 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
44a4cfb63d87dc0ba778982a1796673ca1513e90 19-Oct-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][YAML] Add support for accessing tags and tag handle substitution.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193004 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
e6b1095e31677720708181f1bc998924340e5d46 16-Oct-2013 Rafael Espindola <rafael.espindola@gmail.com> Allow repeated registration again.

Our use of -fvisibility-inlines-hidden means we cannot check function pointers
against non null values.

Unfortunately, we also cannot assert that the callbacks are initialized only
once. The problem is that lldb has multiple subsystems that need to call this
and they don't have a unique initialization order.

Thanks to Sean Callanan for reporting it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192835 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
670655471dfc35d90271393bd3e6e26a708f1a3c 16-Oct-2013 Rafael Espindola <rafael.espindola@gmail.com> Assert on duplicate registration. Don't depend on function pointer equality.

Before this patch we would assert when building llvm as multiple shared
libraries (cmake's BUILD_SHARED_LIBS). The problem was the line

if (T.AsmStreamerCtorFn == Target::createDefaultAsmStreamer)

which returns false because of -fvisibility-inlines-hidden. It is easy
to fix just this one case, but I decided to try to also make the
registration more strict. It looks like the old logic for ignoring
followup registration was just a temporary hack that outlived its
usefulness.

This patch converts the ifs to asserts, fixes the few cases that were
registering twice and makes sure all the asserts compare with null.

Thanks for Joerg for reporting the problem and reviewing the patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192803 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
cdfdb5e92bef3333be8445c4a6a78134f088bb63 16-Oct-2013 NAKAMURA Takumi <geek4civic@gmail.com> Support/FileSystem.h: Remove a trailing comma in enum file_magic::Impl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192745 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
b32b0376d4ac04fc2401e70aa0bdd2f6ce5a8968 16-Oct-2013 Rui Ueyama <ruiu@google.com> Path: Recognize Windows compiled resource file.

Some background: One can pass compiled resource files (.res files) directly
to the linker on Windows. If a resource file is given, the linker will run
"cvtres" command in background to convert the resource file to a COFF file
to link it.

What I'm trying to do with this patch is to make the linker to recognize
the resource file by file magic, so that it can run cvtres command.

Differential Revision: http://llvm-reviews.chandlerc.com/D1943

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192742 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
efc053bd679aec40cc3fc0ac9a3ff7ecca35be2a 15-Oct-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove dead code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192642 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
320296a4cfe414ce59f406b8a5ce15272f563103 08-Oct-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a MCTargetStreamer interface.

This patch fixes an old FIXME by creating a MCTargetStreamer interface
and moving the target specific functions for ARM, Mips and PPC to it.

The ARM streamer is still declared in a common place because it is
used from lib/CodeGen/ARMException.cpp, but the Mips and PPC are
completely hidden in the corresponding Target directories.

I will send an email to llvmdev with instructions on how to use this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192181 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
0d94d8f9f1f8b8d45560b1e30cb6b3504e682371 08-Oct-2013 Nick Kledzik <kledzik@apple.com> update mach-o EXPORT_SYMBOL_* names

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192151 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
379f76e873b91550e3d9cee79dff814e3ce1e86e 07-Oct-2013 Richard Mitton <richard@codersnotes.com> Formally added an explicit enum for DWARF TLS support. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192118 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
6a971bb8f59f4e20c953a2cc360cab7bae8642e4 07-Oct-2013 David Majnemer <david.majnemer@gmail.com> Revert "Revert "Windows: Add support for unicode command lines""

This reverts commit r192070 which reverted r192069, I forgot to
regenerate the configure scripts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192079 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
b262556c45bb7b3add826bc3f050c99db6990c37 06-Oct-2013 David Majnemer <david.majnemer@gmail.com> Revert "Windows: Add support for unicode command lines"

This is causing MinGW bots to fail.
This reverts commit r192069.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192070 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
5a1a1856a4dfa1335d937437fade5c0bbab06560 06-Oct-2013 David Majnemer <david.majnemer@gmail.com> Windows: Add support for unicode command lines

Summary:
The MSVCRT deliberately sends main() code-page specific characters.
This isn't too useful to LLVM as we end up converting the arguments to
UTF-16 and subsequently attempt to use the result as, for example, a
file name. Instead, we need to have the ability to access the Unicode
command line and transform it to UTF-8.

This has the distinct advantage over using the MSVC-specific wmain()
function as our entry point because:
- It doesn't work on cygwin.
- It only work on MinGW with caveats and only then on certain versions.
- We get to keep our entry point as main(). :)

N.B. This patch includes fixes to other parts of lib/Support/Windows
s.t. we would be able to take advantage of getting the Unicode paths.
E.G. clang spawning clang -cc1 would want to give it Unicode arguments.

Reviewers: aaron.ballman, Bigcheese, rnk, ruiu

Reviewed By: rnk

CC: llvm-commits, ygao

Differential Revision: http://llvm-reviews.chandlerc.com/D1834

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192069 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
26ba5df2ebc123b1d214a5e7334c650e90d3738a 06-Oct-2013 Simon Atanasyan <simon@atanasyan.com> [Mips] Add MIPS program header types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192059 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
0d1785a2e64648584d8230172125d171d5f1ca02 02-Oct-2013 NAKAMURA Takumi <geek4civic@gmail.com> Program.h: Fix \Note into \note. [-Wdocumentation]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191815 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
c269c4f505a2dd7c3a88d12706257410ed6c7068 01-Oct-2013 Tareq A. Siraj <tareq.a.siraj@intel.com> Add non-blocking Wait() for launched processes

- New ProcessInfo class to encapsulate information about child processes.
- Generalized the Wait() to support non-blocking wait on child processes.
- ExecuteNoWait() now returns a ProcessInfo object with information about
the launched child. Users will be able to use this object to
perform non-blocking wait.
- ExecuteNoWait() now accepts an ExecutionFailed param that tells if execution
failed or not.

These changes will allow users to implement basic process parallel
tools.

Differential Revision: http://llvm-reviews.chandlerc.com/D1728


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191763 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
8a93c3ab2121f8c9f0739971070b042cd6aa8024 27-Sep-2013 Dmitri Gribenko <gribozavr@gmail.com> Make SourceMgr::PrintMessage() testable and add unit tests


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191558 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
118a0659ab8a4d0e0af343b88e5fa71a5c1eb6a6 24-Sep-2013 Reid Kleckner <reid@kleckner.net> Explicitly request unsigned enum types when desired

The underlying type of all plain enums in MSVC is 'int', even if the
enumerator contains large 32-bit unsigned values or values greater than
UINT_MAX. The only way to get a large or unsigned enum type is to
request it explicitly with the C++11 strong enum types feature.

However, since LLVM isn't C++11 yet, I had to add a conditional
LLVM_ENUM_INT_TYPE to Compiler.h to control its usage.

The motivating true positive for this change is compiling PointerIntPair
with MSVC for win64. The PointerIntMask value is supposed to be pointer
sized value of all ones with some low zeros. Instead, it's truncated to
32-bits! We are only saved later because it is sign extended back in
the AND with int64_t, and we happen to want all ones.

This silences lots of -Wmicrosoft warnings during a clang self-host
targeting Windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191241 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
ompiler.h
warf.h
LF.h
achO.h
0d293e45b66c742fdbc3998209bb20ed6c5806bf 22-Sep-2013 Benjamin Kramer <benny.kra@googlemail.com> Provide basic type safety for array_pod_sort comparators.

This makes using array_pod_sort significantly safer. The implementation relies
on function pointer casting but that should be safe as we're dealing with void*
here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191175 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
ac3f016599ac50a4777b0348c43892c041ef489b 20-Sep-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: GDBIndexEntry*String conversion functions now return const char* for easy llvm::formating

This was previously invoking UB by passing a user-defined type to
format. Thanks to Jordan Rose for pointing this out.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191060 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
0bb2c300a339531b5df3e8c12dbed4e8770e2833 20-Sep-2013 Richard Mitton <richard@codersnotes.com> Fixed warning

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191053 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
5cc319a42a914b24b164a94d9a563c728a7a4026 20-Sep-2013 Richard Mitton <richard@codersnotes.com> Added support for generate DWARF .debug_aranges sections automatically.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191052 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
994c37fcb001bc5a53bf2c676009b327b882d765 20-Sep-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: llvm-dwarfdump support for gnu_pubnames section

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191050 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
18a6ade6cd638c1e5d2c7c7d044cec0fec5c63d3 20-Sep-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: Improve IR annotation comments for GNU pubthings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191043 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
03fadd7f14c94620a5135968de155505b1bb7c4f 19-Sep-2013 Benjamin Kramer <benny.kra@googlemail.com> Unbreak C++03 build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191039 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
9599f51559c692bb20092da23e3a34b2cc841e03 19-Sep-2013 David Blaikie <dblaikie@gmail.com> Unshift the GDB index/GNU pubnames constants modified in r191025

Based on code review feedback from Eric Christopher, unshifting these
constants as they can appear in the gdb_index itself, shifted a further
24 bits. This means that keeping them preshifted is a bit inflexible, so
let's not do that.

Given the motivation, wrap up some nicer enums, more type safety, and
some utility functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191035 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
ecb41cfe36c9e60664c95970bfae82e4cf7397c5 19-Sep-2013 David Blaikie <dblaikie@gmail.com> DebugInfo: Simplify gnu_pubnames index computation.

Names open to bikeshedding. Could switch back to the constants being
unshifted, but this way seems a bit easier to work with.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191025 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
766f25306af343fb2784350cb4d8cd9ca180f0d3 15-Sep-2013 Benjamin Kramer <benny.kra@googlemail.com> ELF: Add support for the exclude section bit for gas compat.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190769 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
e94e0984dfd22ede6211080d1f3e47138f1ea857 14-Sep-2013 Filip Pizlo <fpizlo@apple.com> Make PrettyStackTraceEntry use ManagedStatic for its ThreadLocal.

This was somewhat tricky because ~PrettyStackTraceEntry() may run after
llvm_shutdown() has been called. This is rare and only happens for a common idiom
used in the main() functions of command-line tools. This works around the idiom by
skipping the stack clean-up if the PrettyStackTraceHead ManagedStatic is not
constructed (i.e. llvm_shutdown() has been called).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190730 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
8f1a9299de0333c8c310b7580ea63ba5b7a3c400 13-Sep-2013 Eric Christopher <echristo@gmail.com> Add initial support for handling gnu style pubnames accepted by some
versions of gold. This support is designed to allow gold to produce
gdb_index sections similar to the accelerator tables and consumable
by gdb.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190649 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
715d98d657491b3fb8ea0e14643e9801b2f9628c 12-Sep-2013 Joey Gouly <joey.gouly@arm.com> Add an instruction deprecation feature to TableGen.

The 'Deprecated' class allows you to specify a SubtargetFeature that the
instruction is deprecated on.

The 'ComplexDeprecationPredicate' class allows you to define a custom
predicate that is called to check for deprecation.
For example:
ComplexDeprecationPredicate<"MCR">

would mean you would have to define the following function:
bool getMCRDeprecationInfo(MCInst &MI, MCSubtargetInfo &STI,
std::string &Info)

Which returns 'false' for not deprecated, and 'true' for deprecated
and store the warning message in 'Info'.

The MCTargetAsmParser constructor was chaned to take an extra argument of
the MCInstrInfo class, so out-of-tree targets will need to be changed.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190598 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
f37a324baa7f3893111827f03959fc036da1ed23 11-Sep-2013 Benjamin Kramer <benny.kra@googlemail.com> Path: Add an in-place version of path::native.

This reflects the common use case of nativizing a prepared path. The existing
version invokes undefined behavior if input = output, add an assert to catch
that case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190510 91177308-0d34-0410-b5e6-96231b3b80d8
ath.h
44a61bde15d456527156ee2080f0964344b939fe 11-Sep-2013 Nico Rieck <nico.rieck@gmail.com> Support ANSI escape code on Windows

In some cases (e.g. when a build system pipes stderr) the Windows console
API cannot be used to color output. For these, provide a way to switch to
ANSI escape codes. This is required for Clang's -fansi-escape-codes option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190460 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
f42d4247ae1138c6deed50f92dcd1a4f34e07dec 10-Sep-2013 Rui Ueyama <ruiu@google.com> Add getenv() wrapper that works on multibyte environment variable.

On Windows, character encoding of multibyte environment variable varies
depending on settings. The only reliable way to handle it I think is to use
GetEnvironmentVariableW().

GetEnvironmentVariableW() works on wchar_t string, which is on Windows UTF16
string. That's not ideal because we use UTF-8 as the internal encoding in LLVM.
This patch defines a wrapper function which takes and returns UTF-8 string for
GetEnvironmentVariableW().

The wrapper function does not do any conversion and just forwards the argument
to getenv() on Unix.

Differential Revision: http://llvm-reviews.chandlerc.com/D1612

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190423 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
d4ad5e32a61da5eb046cc109a2bb7c68cc06745f 09-Sep-2013 Eric Christopher <echristo@gmail.com> Add constant defines for gnu pubnames and gnu pubtypes - they're used
for the gdb index as the names convey.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190343 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
8e54341935c475d2ea4b64da9933c0103cb83842 09-Sep-2013 Eric Christopher <echristo@gmail.com> Formatting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190342 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
db3a9e64f856e3a233a427da1f3969fd3a65a438 09-Sep-2013 Bob Wilson <bob.wilson@apple.com> Revert patches to add case-range support for PR1255.

The work on this project was left in an unfinished and inconsistent state.
Hopefully someone will eventually get a chance to implement this feature, but
in the meantime, it is better to put things back the way the were. I have
left support in the bitcode reader to handle the case-range bitcode format,
so that we do not lose bitcode compatibility with the llvm 3.3 release.

This reverts the following commits: 155464, 156374, 156377, 156613, 156704,
156757, 156804 156808, 156985, 157046, 157112, 157183, 157315, 157384, 157575,
157576, 157586, 157612, 157810, 157814, 157815, 157880, 157881, 157882, 157884,
157887, 157901, 158979, 157987, 157989, 158986, 158997, 159076, 159101, 159100,
159200, 159201, 159207, 159527, 159532, 159540, 159583, 159618, 159658, 159659,
159660, 159661, 159703, 159704, 160076, 167356, 172025, 186736

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190328 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
c3cee57f7d20f69a84fd88464ed8cf050e63c7ad 09-Sep-2013 Bill Wendling <isanbard@gmail.com> Generate compact unwind encoding from CFI directives.

We used to generate the compact unwind encoding from the machine
instructions. However, this had the problem that if the user used `-save-temps'
or compiled their hand-written `.s' file (with CFI directives), we wouldn't
generate the compact unwind encoding.

Move the algorithm that generates the compact unwind encoding into the
MCAsmBackend. This way we can generate the encoding whether the code is from a
`.ll' or `.s' file.

<rdar://problem/13623355>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190290 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
577056f89c840537b059ea4cef8d2ae18513cda0 05-Sep-2013 Eric Christopher <echristo@gmail.com> Move accelerator table defines and constants to Dwarf.h since
we're proposing it for DWARF5.

No functional change intended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190074 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
c65d2010084fe471e1e8b86d0cec1d051e5a524f 05-Sep-2013 Eric Christopher <echristo@gmail.com> Rename enums to match convention and remove superfluous "dwarf" in names.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190067 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
c7c07f6e5595edd205f35acb452fbc4133ce2830 05-Sep-2013 Nick Lewycky <nicholas@mxc.ca> Fix typos in assert message.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190034 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
1aaf8843dc1c29f9dd9fa59cb507f7de924674dd 05-Sep-2013 Eric Christopher <echristo@gmail.com> Clean up some whitespace and comment formatting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190015 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
a38c27be0ff5dd35fcd20cfce827f9dbdb24d1ea 05-Sep-2013 Nick Kledzik <kledzik@apple.com> Add names for mach-o permissions bits and use the symbol names in place of magic numbers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190013 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
5afaf5d1c1879d5cfbb3230dcb56297bd886bda4 05-Sep-2013 Eric Christopher <echristo@gmail.com> Move default dwarf version enum into the llvm dwarf constants rather
than the spec dwarf constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190011 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
5b34493843fee70dd0aba300466da2b020676d65 05-Sep-2013 Nick Kledzik <kledzik@apple.com> fix typo in enum name

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190009 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
280e5eef43ecf2279ab78f132922920ed7ce7952 04-Sep-2013 Alexander Kornienko <alexfh@google.com> Move generic isPrint and columnWidth implementations to a separate header/source to allow using both generic and system-dependent versions on win32.

Summary:
This is needed so we can use generic columnWidthUTF8 in clang-format on
win32 simultaneously with a separate system-dependent implementations of
isPrint/columnWidth in TextDiagnostic.cpp to avoid attempts to print Unicode
characters using narrow-character interfaces (which is not supported on Windows,
and we'll have to figure out how to handle this).

Reviewers: jordan_rose

Reviewed By: jordan_rose

CC: llvm-commits, klimek

Differential Revision: http://llvm-reviews.chandlerc.com/D1559

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189952 91177308-0d34-0410-b5e6-96231b3b80d8
nicode.h
886631cc2790cc0143966069e613d933914724b4 04-Sep-2013 Eric Christopher <echristo@gmail.com> Use Intrinsic::ID for the pattern match templates, fixing a signed/unsigned
comparison warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189921 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
27ed5716ef97210879c1e2163210608679c5129e 03-Sep-2013 Eric Christopher <echristo@gmail.com> Migrate the DWARF_VERSION constant to 4. It largely needs to go away.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189824 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
9071f68fd2b18abaee614e07ae6da6d8bc34426e 29-Aug-2013 Kaelyn Uhrain <rikka@google.com> Fix the following error when NDEBUG is defined:

include/llvm/Support/UnicodeCharRanges.h:56:5: error:
use of this statement in a constexpr constructor is a C++1y extension
[-Werror,-Wc++1y-extensions]
assert(rangesAreValid());
^

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189599 91177308-0d34-0410-b5e6-96231b3b80d8
nicodeCharRanges.h
2f02ded68a114410f11bc2f4e901d0d8e5850de1 29-Aug-2013 Alexander Kornienko <alexfh@google.com> isCharInSet refactoring.

Summary:
Made UnicodeCharSet a class, perform validity checking inside its
constructor instead of each isCharInSet call, use std::binary_search instead of
own implementation.
This patch comes with a necessary change in clang (sent separately).

Reviewers: jordan_rose, klimek

Reviewed By: klimek

CC: cfe-commits, rsmith

Differential Revision: http://llvm-reviews.chandlerc.com/D1534

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189582 91177308-0d34-0410-b5e6-96231b3b80d8
nicodeCharRanges.h
7f9a887d3f64d1227b911c9180767d95dbba4c10 28-Aug-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> [BumpPtrAllocator] Move DefaultSlabAllocator to a member of BumpPtrAllocator, instead of a static variable.

The problem with having DefaultSlabAllocator being a global static is that it is undefined if BumpPtrAllocator
will be usable during global initialization because it is not guaranteed that DefaultSlabAllocator will be
initialized before BumpPtrAllocator is created and used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189433 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
9dc1842b3f7bab8304f0dd23c077c6ef3788b6f1 27-Aug-2013 Joey Gouly <joey.gouly@arm.com> Add an assertion to the fixed-size allocator to ensure that we don't request
an allocation that is greater than what we will actually allocate.

Patch by Artyom Skrobov!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189340 91177308-0d34-0410-b5e6-96231b3b80d8
ecyclingAllocator.h
bf778d0546a4d8814339d946ca5c7e52291cc00c 27-Aug-2013 Charles Davis <cdavis5x@gmail.com> Support/MachO: Add a bunch of defines.

Right now we have two headers for the Mach-O format. I'd like to get rid
of one. Since the other object formats are all in Support, I chose to
keep the Mach-O header in Support, and discard the other one.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189314 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
676537aaaaaefe982207da058af27bb09ad1949d 24-Aug-2013 Saleem Abdulrasool <compnerd@compnerd.org> [Support] fix compile with -Werror

error: commas at the end of enumerator lists are a C++11 extension
[-Werror,-Wc++11-extensions]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189183 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
a6d055847068f8fe195603b96f07327c5abbfaeb 24-Aug-2013 Saleem Abdulrasool <compnerd@compnerd.org> [Support] add missing enumeration values

This adds additional missing Windows subsystem identifiers to the
IMAGE_SUBSYSTEM enumeration.

Signed-off-by: Saleem Abdulrasool <compnerd@compnerd.org>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189180 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
fe018c414542141010ef0706820ebfde0a4b3e41 21-Aug-2013 Ahmed Bougacha <ahmed.bougacha@gmail.com> Add Mach-O entry_point_command declaration.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188885 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
d7d43dc435f24e611d9d8090f6ca80a4998efd31 21-Aug-2013 David Majnemer <david.majnemer@gmail.com> DebugInfo: Do not use the DWARF Version for the .debug_pubnames or .debug_pubtypes version field

Summary:
LLVM would generate DWARF with version 3 in the .debug_pubname and
.debug_pubtypes version fields. This would lead SGI dwarfdump to fail
parsing the DWARF with (in the instance of .debug_pubnames) would exit
with:
dwarfdump ERROR: dwarf_get_globals: DW_DLE_PUBNAMES_VERSION_ERROR (123)

This fixes PR16950.

Reviewers: echristo, dblaikie

Reviewed By: echristo

CC: cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1454

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188869 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
5f560af5411fe4e9f62d4563a74f836b1dae3eae 21-Aug-2013 Jakub Staszak <kubastaszak@gmail.com> Fix include guards.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188841 91177308-0d34-0410-b5e6-96231b3b80d8
algrind.h
630d17566793c7f25a05cd407ab9b79a1756966a 19-Aug-2013 Jakub Staszak <kubastaszak@gmail.com> Add definition of __warn_unused_result__ attribute. It will be used in the
futher commits.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188689 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
0009850524f72183c49b506f3eb4c3bdc5f3a0d4 16-Aug-2013 Aaron Ballman <aaron@aaronballman.com> Removing unused functionality.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188565 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
d5f33aa33fbf865e15a3dced11b847e88f6a8239 16-Aug-2013 Aaron Ballman <aaron@aaronballman.com> Tighten up the yamilizer so it stops eliding empty sequences if the embedded empty sequence is the first key/value in a map which is itself in a sequence.

Patch with help from Nick Kledzik.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188508 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
ef7aefc53bf24214f489bf9e4100bcff45f7b12a 14-Aug-2013 Alexey Samsonov <samsonov@google.com> Expose CRC-32 implementation from zlib

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188380 91177308-0d34-0410-b5e6-96231b3b80d8
ompression.h
5752b08aef30386cc6720b59f1103e770ae4eb9c 09-Aug-2013 Benjamin Kramer <benny.kra@googlemail.com> Make directory iterator sentinels free.

This trades some complexity in operator== for not introducing static objects
into any functions using recursive directory iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188081 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
bf473e22406143bcce9613b09f54adc1ba9301b8 08-Aug-2013 Ted Kremenek <kremenek@apple.com> Forward resetColor() et al to the underlying stream.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187947 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
fab2daa4a1127ecb217abe2b07c1769122b6fee1 08-Aug-2013 Stephen Hines <srhines@google.com> Merge commit '10251753b6897adcd22cc981c0cc42f348c109de' into merge-20130807

Conflicts:
lib/Archive/ArchiveReader.cpp
lib/Support/Unix/PathV2.inc

Change-Id: I29d8c1e321a4a380b6013f00bac6a8e4b593cc4e
9e8eafa0f0ad36c3e4397e97b67b8245b04ba618 07-Aug-2013 Dmitri Gribenko <gribozavr@gmail.com> YAMLTraits.h: replace DenseMap that used a bad implementation of DenseMapInfo
for StringRef with a StringMap

The bug is that the empty key compares equal to the tombstone key.

Also added an assertion to DenseMap to catch similar bugs in future.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187866 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
ece0bec0c824e71f062656ed5c727baf2a7bfc90 07-Aug-2013 Alexander Kornienko <alexfh@google.com> Implemented llvm::sys::locale::columnWidth and isPrint for the case of generic UTF8-capable terminal.

Summary:
This is a second attempt to get this right. After reading the Unicode
Standard I came up with the code that uses definitions of "printable" and
"column width" more suitable for terminal output (i.e. fixed-width fonts and
special treatment of many control characters).
The implementation here can probably be used for Windows and MacOS if someone
can test it properly.
The patch addresses PR14910.

Reviewers: jordan_rose, gribozavr

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1253

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187837 91177308-0d34-0410-b5e6-96231b3b80d8
nicodeCharRanges.h
ae8e3cfbca31cddac5a891b1d5606399dd4fefe0 06-Aug-2013 Reid Kleckner <reid@kleckner.net> Use gnu style builtins in MathExtras.h with clang on Windows

Clang does not provide BitScan* intrinsic implementations yet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187813 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
aa80e61b0d79ddf9593f6217063574d0c66c3099 05-Aug-2013 Peter Collingbourne <peter@pcc.me.uk> Introduce Regex::isLiteralERE function.

This will be used to implement an optimisation for literal entries
in special case lists.

Differential Revision: http://llvm-reviews.chandlerc.com/D1278

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187731 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
8cb1d81250ab0957f956146af7bfe62cdd0a9f3e 01-Aug-2013 Rafael Espindola <rafael.espindola@gmail.com> Expose that the unique file ID has a device and a file component.

The use of sd_dev and st_ino has reached libclang, so expose the two components
in UniqueID so that we can use it in clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187616 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
9d45f914f080e591e12787ac1c12b3819870076a 01-Aug-2013 Eric Christopher <echristo@gmail.com> Formatting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187554 91177308-0d34-0410-b5e6-96231b3b80d8
EB128.h
63a5619410cfb92add9f3d161d5faef80bd5794e 31-Jul-2013 Eric Christopher <echristo@gmail.com> Make these just inline, not static inline.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187457 91177308-0d34-0410-b5e6-96231b3b80d8
EB128.h
e0913798bca5724d2852386d369d1aa830f97173 29-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Make file_status::getUniqueID const.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187383 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
3ed45fe2be4356351942a2cfe9bd92e996d4fcad 29-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Include st_dev to make the result of getUniqueID actually unique.

This will let us use getUniqueID instead of st_dev directly on clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187378 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
b390abce164eb5ba931ec220be02fc5f35a12b43 26-Jul-2013 Stephen Lin <stephenwlin@gmail.com> Remove trailing whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187226 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
3b6bb79578bcc09b6a588af488da4f6e6d958f01 26-Jul-2013 Stephen Lin <stephenwlin@gmail.com> Correct case of m_UIToFp to m_UIToFP to match instruction name, add m_SIToFP for consistency.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187225 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
65985348c5ece4efecce485029b147c45453c4c8 26-Jul-2013 Reid Kleckner <reid@kleckner.net> Remove dead or useless header checks from cmake and autoconf

On Windows, this improves clean cmake configuration time on my
workstation from 1m58s to 1m32s, which is pretty significant. There's
probably more that can be done here, but this is the low hanging fruit.

Eric volunteered to regenerate ./configure for me.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187209 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
6fccaafd8be0eb7619b5a210387b0d1254ef4174 25-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the mblaze backend from llvm.

Approval in here http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/064169.html

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187145 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
3af1c9d3343357849f19f7467f9c16220ad37ca4 24-Jul-2013 Akira Hatanaka <ahatanaka@mips.com> [mips] Use pristine object file while processing relocations.

Similar to ARM change r182800, dynamic linker will read bits/addends from
the original object rather than from the object that might have been patched
previously. For the purpose of relocations for MCJIT stubs on MIPS, we
internally use otherwise unused MIPS relocations.

The change also enables MCJIT unit tests for MIPS (EL/BE), and the following
two tests now pass:

- MCJITTest.return_global and
- MCJITTest.multiple_functions.

These issues have been tracked as Bug 16250.

Patch by Petar Jovanovic.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187019 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
25c6cec2a29f7f835d559865cecb18621a0d61de 23-Jul-2013 Eli Bendersky <eliben@google.com> Expand the comment on getOpenFileSlice a bit for more details and consistency


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186987 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
70c7e485453fdbc228406715556f9447bc9f9fd8 23-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Split getOpenFile into getOpenFile and getOpenFileSlice.

The main observation is that we never need both the filesize and the map size.
When mapping a slice of a file, it doesn't make sense to request a null
terminator and that would be the only case where the filesize would be used.

There are other cleanups that should be done in this area:

* A client should not have to pass the size (even an explicit -1) to say if
it wants a null terminator or not, so we should probably swap the argument
order.
* The default should be to not require a null terminator. Very few clients
require this, but many end up asking for it just because it is the default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186984 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
f01742d03fb034e50f2a7717fb1325644e02ca72 22-Jul-2013 Eric Christopher <echristo@gmail.com> Fix typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186852 91177308-0d34-0410-b5e6-96231b3b80d8
EB128.h
ac9e819ca9ad93cfbcf0b7c5b0a7cbbd34cd9176 20-Jul-2013 Matt Arsenault <Matthew.Arsenault@amd.com> Fix size_t -> uint warnings with MSVC 64-bit build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186736 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
ntegersSubset.h
ourceMgr.h
f28019e5f77bff438d13aa4b73486fed603bca02 19-Jul-2013 Rui Ueyama <ruiu@google.com> Clarify comment for extension().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186636 91177308-0d34-0410-b5e6-96231b3b80d8
ath.h
894fd78d93d663df8286d4d4edeafc076e00ff15 18-Jul-2013 Hans Wennborg <hans@hanshq.net> Fix -Wdocumentation warning

s/Tokenize/Tokenizer/ to make the comment correspond to the
parameter name

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186608 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
431b0a7646105c53c607cbf0015c615269bc5f11 18-Jul-2013 Reid Kleckner <reid@kleckner.net> [Support] Beef up and expose the response file parsing in llvm::cl

The plan is to use it for clang and lld.

Major behavior changes:
- We can now parse UTF-16 files that have a byte order mark.
- PR16209: Don't drop backslashes on the floor if they don't escape
anything.

The actual parsing loop was based on code from Clang's driver.cpp,
although it's been rewritten to track its state with control flow rather
than state variables.

Reviewers: hans

Differential Revision: http://llvm-reviews.chandlerc.com/D1170

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186587 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
1c881d9d35a7880d0c102119b29d20ceb2ed1975 18-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove dead code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186561 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
60f18ad8a5fa7d5b008a1fecf9a79b68883ca192 18-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Fix a regression I introduced back in r178147.

We don't want cast and dyn_cast to work on temporaries. They don't extend
lifetime like a direct bind to a reference would, so they can introduce
hard to find bugs.

I added tests to make sure we don't regress this. Thanks to Eli Friedman for
noticing this and for his suggestions on how to test it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186559 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
09df10df0d6f327049a7f315f175ab77044e6aaa 17-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add simpler version of is_directory. It will be used in clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186486 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
c1b49b56d4132efa2e06deb8f23508d0de4c8800 16-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a wrapper for open.

This centralizes the handling of O_BINARY and opens the way for hiding more
differences (like how open behaves with directories).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186447 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
oolOutputFile.h
aw_ostream.h
06c847e83e558f0cc6fea742498b2730eb6837c6 16-Jul-2013 Reid Kleckner <reid@kleckner.net> [Support] Add a Unicode conversion wrapper from UTF16 to UTF8

This is to support parsing UTF16 response files in LLVM/lib/Option for
lld and clang.

Reviewers: hans

Differential Revision: http://llvm-reviews.chandlerc.com/D1138

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186426 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.h
87be8d353b3454383940ce5abc1a176268a33d33 16-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a version of sys::fs::status that uses fstat.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186378 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
3a101048affcb00654b85558157150ad270fc46d 16-Jul-2013 Rui Ueyama <ruiu@google.com> COFF: Add constants for optional data directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186377 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
77e31bca0321c6b470a844e3d5468fd998eef44e 16-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Instead friending status, provide windows and posix constructors to file_status.

This opens the way of having static helpers in the .inc files that can
construct a file_status.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186376 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
ff8f9e58ec8507b951043a367d72f2385e12cf70 16-Jul-2013 NAKAMURA Takumi <geek4civic@gmail.com> Fix TimeValue::toWin32Time() to be symmetric to fromWin32Time() and compatible to Win32's FILETIME.

llvm-ar is the only user of toWin32Time() (via setLastModificationAndAccessTime), and r186298 can be reverted.
It had been buggy since the initial commit.

FIXME: Could we rename {from|to}Win32Time as {from|to}Win32FILETIME in TimeValue?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186374 91177308-0d34-0410-b5e6-96231b3b80d8
imeValue.h
6c5ae22c6ac3890f5bb9bbb8ef62ef02271987c8 15-Jul-2013 Eric Christopher <echristo@gmail.com> Add DW_AT_GNU_odr_signature to the set of dwarf attributes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186296 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
318b7cc7f10d41370929ff93274de29c11f87b81 11-Jul-2013 Benjamin Kramer <benny.kra@googlemail.com> Use move semantics if possible to construct ConstantRanges.

Arithmetic on ConstantRanges creates a lot of large temporary APInts that
benefit from move semantics.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186091 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
dbe3efb86eaad7c9d4c16d9fe512e247d944461c 10-Jul-2013 Benjamin Kramer <benny.kra@googlemail.com> Update doxygen comment to match renamed parameters.

Found by -Wdocumentation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186021 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
ac2de33d2aaa076dc54ce2cea675bcca5b50261e 10-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Use status to implement file_size.

The status function is already using a syscall that returns the file size.
Remember it and implement file_size as a simple wrapper.

No functionally change, but clients that already use status now can avoid
calling file_size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186016 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
6afede522e4dfe34c1d42ccc251036596c300203 08-Jul-2013 Manman Ren <mren@apple.com> Revert r185852.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185861 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
f856249d496663b72b9eac37cdabb52932abd0e0 08-Jul-2013 Manman Ren <mren@apple.com> StringRef: add DenseMapInfo for StringRef.

Remove the implementation in include/llvm/Support/YAMLTraits.h.
Added a DenseMap type DITypeHashMap in DebugInfo.h:
DenseMap<std::pair<StringRef, unsigned>, MDNode*>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185852 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
ca4ed882f4b0d9ddb0ed49474ae5e217dde3ab5e 08-Jul-2013 Reid Kleckner <reid@kleckner.net> Reland "Use Clang's __has_* macros in Compiler.h ..." with fixes

This reverts r185841 and relands r185831 without using
__has_attribute(const).

Clang prior to r161767 (between 3.1 and 3.2) does not accept
__has_attribute(const) due to rdar://10253857. __const and __const__
are both keyword aliases of const, so they don't work either.

I was able to repro the buildbot failure using clang 3.1 and this patch
fixes it. Various important versions of XCode use clang 2.9-ish, so
this workaround is necessary.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185850 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
7b42bedca4a3e68adbaf9dad7511320d0480a55b 08-Jul-2013 Quentin Colombet <qcolombet@apple.com> Revert: "Use Clang's __has_* macros in Compiler.h to test for features"

This reverts r185831 and 185833.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185841 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
9f439059e60053ae1b8bb40efbe5df0966add03c 08-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> clang-format this enum.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185835 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
1cce797d32aa465c054fc4a313d8c330c89bd862 08-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> We now always create files with the correct permissions. Simplify the interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185834 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
a2030eedf1094ef8508ca90341c5a7ec8f638308 08-Jul-2013 Reid Kleckner <reid@kleckner.net> Attempt to fix Compiler.h for some self-hosting bots

I tested r185831 by self-hosting clang with a recent clang, and got no
warnings. I haven't been able to reproduce the problem locally.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185833 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
221f6d777e56517591766a582f542af92d1f19c9 08-Jul-2013 Reid Kleckner <reid@kleckner.net> Use Clang's __has_* macros in Compiler.h to test for features

When targetting Windows, clang does not define __GNUC__, and as a result
we don't use our attributes with it. This leads to warnings about
unused functions that are already annotated with LLVM_ATTRIBUTE_UNUSED.
Rather than testing for __clang__, we can use its __has_attribute and
__has_builtin macros directlty.

While I'm here, conditionally define and use __GNUC_PREREQ for gcc
version checks. Spelling the check out with three comparisons is
verbose and error prone.

Reviewers: aaron.ballman

Differential Revision: http://llvm-reviews.chandlerc.com/D1080

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185831 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
dc89737bcdbb8f69d8ae7578bdfa904cabcfc5ed 06-Jul-2013 Nick Lewycky <nicholas@mxc.ca> Extend 'readonly' and 'readnone' to work on function arguments as well as
functions. Make the function attributes pass add it to known library functions
and when it can deduce it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185735 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
01c9d28fece665972c9d355ae738cf3fc73d22d4 05-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unique_file now that it is unused.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185728 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
200c748a8643cd127271f4d6849da1e147d4442f 05-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a createUniqueFile function and switch llvm's users of unique_file.

This function is complementary to createTemporaryFile. It handles the case were
the unique file is *not* temporary: we will rename it in the end. Since we
will rename it, the file has to be in the same filesystem as the final
destination and we don't prepend the system temporary directory.

This has a small semantic difference from unique_file: the default mode is 0666.
This matches the behavior of most unix tools. For example, with this change
lld now produces files with the same permissions as ld. I will add a test
of this change when I port clang over to createUniqueFile (next commit).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185726 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
e11874f6c5e33f5c2d634bfd33e1ae67c93f9b74 05-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a higher level createTemporaryFile function.

This function is inspired by clang's Driver::GetTemporaryPath. It hides the
pattern used for uniquing and requires simple file names that are always
placed in the system temporary directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185716 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
764a3d502e3e195c6d51c20cfeccbef6835f3da1 04-Jul-2013 Aaron Ballman <aaron@aaronballman.com> Changing long to int for consistency.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185656 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
98abba7b661502f71a090ab254fb3f0db248c4c6 04-Jul-2013 Aaron Ballman <aaron@aaronballman.com> Supporting ssize_t on WIN64 with its proper size. Patch thanks to David Cournapeau!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185627 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
2a210b7df7156cfc348e8287e05fcf662646614d 02-Jul-2013 Tobias Grosser <grosser@fim.uni-passau.de> Fix typo in comment

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185413 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
228e0afcfd0d5f167a95c6ddbec2c6a4a90b6d2b 02-Jul-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Add support for TLS data relocations

This adds support for TLS data relocations and modifiers:
.quad target@dtpmod
.quad target@tprel
.quad target@dtprel
Currently exploited by the asm parser only.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185394 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
74d2a3e1a014b93e9037a7b04e85dc92bfb54fa7 02-Jul-2013 Jakob Stoklund Olesen <stoklund@2pi.dk> Remove floating point computations form SpillPlacement.cpp.

Patch by Benjamin Kramer!

Use the BlockFrequency class instead of floats in the Hopfield network
computations. This rescales the node Bias field from a [-2;2] float
range to two block frequencies BiasN and BiasP pulling in opposite
directions. This construct has a more predictable behavior when block
frequencies saturate.

The per-node scaling factors are no longer necessary, assuming the block
frequencies around a bundle are consistent.

This patch can cause the register allocator to make different spilling
decisions. The differences should be small.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185393 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
bbeba2c20023c8bf6b34585fadf2abcc77ba8f32 02-Jul-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Fix 32-bit PowerPC TLS relocs

Some TLS relocs were copied incorrectly from ppc64 to ppc32,
and some were missing completely.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185390 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
d7648ff20f8bbc8217a26576ca96addc55e003de 28-Jun-2013 Jakob Stoklund Olesen <stoklund@2pi.dk> Add a division operator to BlockFrequency.

Allow a BlockFrequency to be divided by a non-zero BranchProbability
with saturating arithmetic. This will be used to compute the frequency
of a loop header given the probability of leaving the loop.

Our long division algorithm already saturates on overflow, so that was a
freebie.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185184 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
ae19c89e1da816adbd6c7ffc28f679dabec83573 28-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Don't ask for a mode when we are not keeping the file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185123 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
ab7bcc60bc2b5592c9a3d82c16e84d67c4c95e25 28-Jun-2013 Matt Arsenault <Matthew.Arsenault@amd.com> Fix typo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185120 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
f00e9ae990f5a836555c9d4f911c941953d14e19 27-Jun-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> [Support/Registry.h] Include llvm/Support/Compiler.h.

Because Registry.h is using the LLVM_DELETED_FUNCTION macro.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185087 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
08ddd12e444880b4d570ac42a42414a227022190 27-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a convenience createUniqueDirectory function.

There are a few valid situation where we care about the structure inside a
directory, but not about the directory itself. A simple example is for unit
testing directory traversal.

PathV1 had a function like this, add one to V2 and port existing users of the
created temp file and delete it hack to using it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185059 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
2253a2f52f3c46ae75cd05f5885acb987bd1d6b6 27-Jun-2013 Michael Gottesman <mgottesman@apple.com> Added support for the Builtin attribute.

The Builtin attribute is an attribute that can be placed on function call site that signal that even though a function is declared as being a builtin,

rdar://problem/13727199

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185049 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
97c2a0a1100fecb3c2dcd4d582eeaa8fe2ffb335 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Use enums instead of raw octal values.

Patch by 罗勇刚(Yonggang Luo).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184971 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
460e75a453c256828caaf454c0bbae3eab79f440 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> PathV1 is deprecated since the 18th of Dec 2010. Remove it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184960 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
4ae6d4042b5335a97da54110b7e9a4a59e377485 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a convenience functions that don't return if the directory existed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184955 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
903701dfb7b03b9390c763bb1e2c0b64eec60a30 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a simpler version of remove_all.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184919 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
bdfe4399dba7370827146e44734b5a5456d223fa 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove sys::GetMainExecutable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184916 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
50188c1f42c122640ab9ccac2134acf371c26b2c 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Port GetMainExecutable over to PathV2.

I will remove the V1 version as soon as I change clang in the next commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184914 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
2c63b27e9f36dddc2660639026b19e606ad52cd0 26-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove PathWithStatus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184910 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
5de735a962a255676cf3a9bc255579d465670633 25-Jun-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Support @got modifier

Add VK_... values and relocation types necessary to support
the @got family of modifiers. Used by the asm parser only.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184860 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
46fa7cf91af03373b6ab54f31215bb671698000f 25-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Move GetEXESuffix to the one place it is used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184853 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
deeb5724b8e6dfb911bde7c4b5d4e2f10953f52b 25-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove sys::PathSeparator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184852 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
75b51621540c23ddfc1e9ef6b4dc803453d9d122 25-Jun-2013 Benjamin Kramer <benny.kra@googlemail.com> BlockFrequency: Bump up the entry frequency a bit.

This is a band-aid to fix the most severe regressions we're seeing from basing
spill decisions on block frequencies, until we have a better solution.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184835 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
dd5af27a74a01f0d03356cea15d3a403f4964f8b 25-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> keep only the StringRef version of getFileOrSTDIN.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184826 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
593fcb56b37857d64e58ac3be5277d3cfccb9492 25-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Create a replacement for sys::Path::PathSeparator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184806 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
89ced61187bc9805f2894f5988c07d12531a3a0e 24-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a simpler version of is_regular_file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184764 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
2ea475cddf42ce3421f0463be670c77c93329b2c 22-Jun-2013 Benjamin Kramer <benny.kra@googlemail.com> Reapply documentation changes from r184584.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184609 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
b47aceaf068352eebf4da87a647363b2317f0f22 21-Jun-2013 Benjamin Kramer <benny.kra@googlemail.com> Revert "BlockFrequency: Saturate at 1 instead of 0 when multiplying a frequency with a branch probability."

This reverts commit r184584. Breaks PPC selfhost.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184590 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
93702a3b0754052d926c75082abf7ca156b80c45 21-Jun-2013 Benjamin Kramer <benny.kra@googlemail.com> BlockFrequency: Saturate at 1 instead of 0 when multiplying a frequency with a branch probability.

Zero is used by BlockFrequencyInfo as a special "don't know" value. It also
causes a sink for frequencies as you can't ever get off a zero frequency with
more multiplies.

This recovers a 10% regression on MultiSource/Benchmarks/7zip. A zero frequency
was propagated into an inner loop causing excessive spilling.

PR16402.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184584 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
84569698f01bcb49afe5b6140bf0d61cf4f3cf5a 21-Jun-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Support R_PPC_REL16 family of relocations

The GNU assembler supports (as extension to the ABI) use of PC-relative
relocations in half16 fields, which allows writing code like:

li 1, base-.

This patch adds support for those relocation types in the assembler.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184552 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cab0a1933875935c717136d251e2af9749533ba8 21-Jun-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Support various tls-related modifiers

The current code base only supports the minimum set of tls-related
relocations and @modifiers that are necessary to support compiler-
generated code. This patch extends this to the full set defined
in the ABI (and supported by the GNU assembler) for the benefit
of the assembler parser.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184551 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
f7c1ee79fe90353fcd3f545f9d45a01a837bbf4b 21-Jun-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Support @higher et.al. modifiers

This adds support for the @higher, @highera, @highest, and @highesta
modifers, including some missing relocation types.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184550 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
f8f87dcfceadd1b842d130303a7091ad7d7d67d0 21-Jun-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Support @toc@h modifier

This adds the relocation type and other necessary infrastructure
to use the @toc@h modifier in the assembler.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184549 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
bdae6fa82ce92c0782dc291fb75e207398a26c68 21-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove last use of PathV1.h from Archive.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184484 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
b0bdcb5f8af7cc4e64aad5954f2230f47fa4ef90 20-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> make getLastModificationTime const. Move it with the other getters.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184478 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
11ca2e508c2152732c364d02e5b381e61c851084 20-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a setLastModificationAndAccessTime to PathV2.

With this we can remove the last use of PathV1 from llvm-ar.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184464 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
29c17db6508eec1c7c9fb23f3ce863d5ed9bef0e 20-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add support for getting the last modification time from a file_status.

Use that in llvm-ar.cpp to replace a use of sys::PathWithStatus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184450 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
438600e697448ff704770825d6b92d95ee250905 20-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the transitional GetUniqueID.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184433 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
9aa3365426ef5b8b82361945bc6a8dbcd3d2bc2a 20-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Rename fs::GetUniqueID to fs::getUniqueID to match the style guide.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184431 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
4655485eb7dc1d137595149b9bd58eb73e11bb19 19-Jun-2013 Aaron Ballman <aaron@aaronballman.com> Modified the implementation of fs::GetUniqueID on Windows such that it actually finds a unique identifier for a file. Also adds unit tests for GetUniqueID.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184351 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
7c8397081c3d101fe467e8375601b091056465e0 19-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::getDirectoryContents.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184311 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
ca0984cb8647e5eae58e384715523476e3170d50 19-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::isObjectFile.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184305 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
f6f3be69d81e8e41f90de9913738a9ba11190221 19-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::canExecute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184298 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
1fbf3a3aca2b7d16a7869ea6c6f39c7ffd28b6d2 18-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::canWrite.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184235 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
68ba1825fcaf94bdf7e057ef19585226ec48ce5d 18-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a can_write function to PathV2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184233 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
f3426a482ea24c399df7c4abaa1ff8f7a9d9dfc8 18-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused Path::canRead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184229 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
2e0f70bdd8814eefb752f1d0221800cbdbd8d1f5 18-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove uniqueID from PathV1.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184219 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
605510d16ead87dc48a363addb8a99eca6e3f17c 18-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a GetUniqueID that will replace the uniqueID of PathV1.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184217 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
8ee23f00c7e9343d09313051c318906558d6ad17 18-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a version of unique_file that return just the file name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184206 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
9c22f87b1374b06dc6c07f6e8047890e390bbe2d 18-Jun-2013 Alexey Samsonov <samsonov@google.com> Basic support for parsing Mach-O universal binaries in LLVMObject library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184191 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
68c0efac35021516bf46b2793e56e0d9d804c9e8 17-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Don't use PathV1.h in LTOCodeGenerator.cpp

This patch also adds a simpler version of sys::fs::remove and a tool_output_file
constructor for when we already have an open file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184095 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
oolOutputFile.h
7d75760066d1a38e3f5eac80416b5574ffed0468 17-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Delete declared but not implemented functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184087 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
3018f0ddd4677eadf33af4284b8fa41ed929a2f0 16-Jun-2013 Dmitri Gribenko <gribozavr@gmail.com> Put back variable names because they are referenced in the documentation
comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184051 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
9e89fe77ce532e1d2704f55159d5474b35645685 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add GetCurrentDirectory back.

It looks like clang-tools-extra/unittests/cpp11-migrate/TransformTest.cpp
depends on the behaviour of the old one on Windows. Maybe a difference
between GetCurrentDirectoryA and GetCurrentDirectoryW?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184009 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
76858a7abd4faeb462e04f177666b87b23b65287 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Replace use of PathV1.h in MCContext.cpp.

GetCurrentDirectory is now unused. Remove it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184003 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
fcba9c56a25edc71e32a407dfd6191de6dba0ed7 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Replace use of PathV1.h in Program.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183996 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
a54ba12ae7a8cf826b65d2e4a882258e952c35b1 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Convert a use of sys::Path::GetTemporaryDirectory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183987 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
c65aba032ebd4899687d75d542e0d2a39e286936 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Move PrependMainExecutablePath next to its only user.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183980 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
b7e2188f7fb9a1c1cb6dbd32b206e44b11b4a157 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Don't use PathV1.h in Signals.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183947 91177308-0d34-0410-b5e6-96231b3b80d8
ignals.h
6c3df8e93ece684f54a07d553085824f4e66984a 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a RemoveFileOnSignal that takes a StringRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183943 91177308-0d34-0410-b5e6-96231b3b80d8
ignals.h
bbf97ea7d5832922b3c40b67701b5719bfcb772b 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Don't use PathV1.h in FileUtilities.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183941 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
675e0ac0bfd6fb78423d9fbee9f50c1dec62c111 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Avoid using PathV1.h in Program.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183940 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
a29ece1693ff16ff991e184f6e073c9fb30fcb4b 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a version of sys::ExecuteAndWait that takes StringRefs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183934 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
6585b388cb7bfc623adb9e4dd910423f838e5d96 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Have sys::FindProgramByName return a std::string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183928 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
4d39727eaee3e7cb5c72dba469855cb538110782 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Reduce usage of sys::Path in the graph writer.

Now PathV1.h is not needed in GraphWriter.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183919 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
ba0e380ea9eaf051c45ce072f4cac7dccc867c90 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a version of DisplayGraph that takes a StringRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183915 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
9f1d9fd1964d82f3e801efb71518144492cdf290 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the program class.

It was only used to implement ExecuteAndWait and ExecuteNoWait. Expose just
those two functions and make Execute and Wait implementations details.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183864 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
609baa376a6f3e0c3930555c5055e6da193fd8a8 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add global versions of some Program static methods.

This is a temporary stepping stone for moving them out of Program.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183860 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
1878f9a7874b1ff569d745c0269f49d3daf7203d 12-Jun-2013 Stephen Hines <srhines@google.com> Merge commit '100fbdd06be7590b23c4707a98cd605bdb519498' into merge_20130612
c3907f387f0b2ec20913c6f869131c5ffd9f08df 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Inline Path::isBitcodeFile into only use and remove it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183840 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
2a4005688c05e26439ce83c0b1da482e3c346ba9 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::getMagicNumber.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183839 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
26ace5720d471dcff6ab6495f5898597cda54496 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::hasMagicNumber.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183838 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
fa2bbb31fae64bc8cc3dc3736f5465d3ddba1704 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::isAbsolute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183836 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
5475e2b01e8f69c398353736bf3afe9b40e01cf8 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::isAbsolute().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183835 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
55d529fd8a0931999d96829b0e9f0df55d43f85d 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::getSuffix.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183833 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
36782c514ae7c5f9270c317bdea660bdcd86d9d6 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove sys::CopyFile.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183831 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
a5e855d8594ccc7e7fffd2c1886088175ba84950 12-Jun-2013 Patrik Hagglund <patrik.h.hagglund@ericsson.com> Fix 'gcc -flto' builds for unittest binaries (undefined reference to
`typeinfo for llvm::cl::GenericOptionValue').

Remove an "anchor" method for an abstract class. (This does not
increase the number of vtables.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183830 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2e0372d69ab11fb6c38b35d533e0a6358fd38658 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the old file memory mapping functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183828 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
ddee9b46917d10e7d854011d275b77ad41693726 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::createFileOnDisk.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183827 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
f90690f202901c7f6ba633bc144c9de9247b1834 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::makeExecutableOnDisk.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183826 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
a11c3e25015a62c817e60ec4f955a7f3f3bb6c67 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Move PathV2.h to Path.h

Most clients have already been moved from Path V1 to V2. The ones using V1
now include PathV1.h explicitly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183801 91177308-0d34-0410-b5e6-96231b3b80d8
ath.h
athV2.h
1a4f2a33fbd94c840d620ff572dd25540c650f70 11-Jun-2013 Rui Ueyama <ruiu@google.com> [PECOFF] Remove COFF header from PE header for simplicity.

COFF header is always present both in executable and in object file. PE header
is present only in executable. So the natural way to handle PE/COFF file is
treating COFF is mandatory header and PE is optional. Current data structre
does not allow it, because PE header includes COFF header. Removing COFF
header will simplify the code to handle PE/COFF files.

Reviewers: Bigcheese

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D952

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183788 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
f3e397eb17327423b3f8fff5eac8547c85efddb1 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Include PathV1.h in files that use it.

This is preparation for replacing Path.h with PathV2.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183782 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
raphWriter.h
ath.h
rogram.h
ignals.h
715a1be51fe25a09fcc5318cd787893a8fbfc9e1 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::getDirname.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183780 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
b4d07b770c41b285a613a5b4953fe815044fad19 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::getBasename.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183779 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
aab313f80bc447ecd3a6073014243b108bac6855 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::getLast.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183778 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
189c27e871763efac38c65a9786127af8d5b92b8 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove GetDLLSuffix.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183777 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
6cbae0160600086e271904d7339c46f34ff57e73 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove GetRootDirectory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183775 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
6438fd54ac475d378f47f2bbf6892e43212a7ff1 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove GetUserHomeDirectory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183773 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
40de55a5569bd175cee6abab2070fa0edfbd8658 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove GetSystemLibraryPaths.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183770 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
0e33231d554b32e32e23400eb92c9aa44e0e251b 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove Path::GetBitcodeLibraryPaths.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183765 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
9a82d21512da4a8129ef32d6749b9ae3997de517 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused FindLibrary function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183764 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
af2c42e3d2ee918c4195ce5f32e732c43d93cea8 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove sys::identifyFileType.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183763 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
athV1.h
4fbf6633024d40dcb7849f45db5a4d41b2a5b3f1 11-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Fix variable name style. Don't cast to and from int.

This enables the compiler to see the enum and produce warnings about a switch
not being fully covered. Fix one of these warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183749 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
6d315c6cf201a111d6e7c9118fafc6c39915d1db 10-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a missing 'e'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183692 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
27b7adef95a726555190072fd8603ba3a62b5d12 10-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the old IdentifyFileType now that lld was updated.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183671 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
f12745f7a7e68c05c89ebd515b9b4faedce37dd0 10-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Pass a StringRef to sys::identifyFileType.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183669 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
91de80a5350b801b10323e65a6f3ee0f7dfb54f5 10-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Update for current naming conventions.

I will change identifyFileType to use a StringRef in the next patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183664 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
48d5e750a8189c55087333d2bbc5dd0e1e07ddfa 10-Jun-2013 Duncan Sands <baldrick@free.fr> Avoid warnings about unused parameters that tend to come up a lot when
building outside projects with a different compiler than that used to build
LLVM itself (eg switching between gcc and clang).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183650 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
athExtras.h
argetRegistry.h
0c793018079803628b5aeee6bbc1e6464fbefd65 08-Jun-2013 Aaron Ballman <aaron@aaronballman.com> sys::process::get_id() now returns the process ID instead of a process handle on Windows. Patch thanks to Kim Gräsman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183621 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
d56d756611173394e4ec937601ab825280fc2577 05-Jun-2013 Sean Silva <silvas@purdue.edu> [ELF] Add ELFOSABI_GNU.

ELFOSABI_LINUX is a historical alias for ELFOSABI_GNU according to
<http://www.sco.com/developers/gabi/latest/ch4.eheader.html>.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183339 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
7e129466d8bf25d7e0a65a4087a30a4c07746018 05-Jun-2013 Sylvestre Ledru <sylvestre@debian.org> The GNU/HURD is also using the libc. Therefor, endian.h should be included, not machine/endian.h. See full build log https://buildd.debian.org/status/fetch.php?pkg=llvm-toolchain-3.3&arch=hurd-i386&ver=1%3A3.3~%2Brc3-1~exp1&stamp=1370358869

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183303 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
769d24a60d798ffa3a47a01c9e7a0dcfaefbb882 01-Jun-2013 Eric Christopher <echristo@gmail.com> Add support for adding the contents of a StringRef to the MD5 hash.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183054 91177308-0d34-0410-b5e6-96231b3b80d8
D5.h
800e6ee52fd32e0b129cbccd811166d7e215e6ad 01-Jun-2013 Eric Christopher <echristo@gmail.com> Move "unsigned char" -> "uint8_t".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183051 91177308-0d34-0410-b5e6-96231b3b80d8
D5.h
e4ee452576449d79db4e82b9e5dd08c732327e71 28-May-2013 Simon Atanasyan <simon@atanasyan.com> [Mips] Add Mips specific dynamic table entry tags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182803 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
60057270d9ea9cb9527e0ac8b77ba2c5a08a8af9 25-May-2013 Eric Christopher <echristo@gmail.com> Add some comments to the stringify function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182710 91177308-0d34-0410-b5e6-96231b3b80d8
D5.h
ba3500e4d2f7a8646ea0f5a1acfaed832f8e062e 25-May-2013 Andrew Trick <atrick@apple.com> Fix RecyclingAllocator::PrintStats to print the underlying allocator's stats.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182700 91177308-0d34-0410-b5e6-96231b3b80d8
ecyclingAllocator.h
f7306f224e7f85c2690256636613422c4a7b8230 25-May-2013 Eric Christopher <echristo@gmail.com> ArrayRef-ize MD5 and clean up a few variable names.
Add a stringize method to make dumping a bit easier, and add a testcase
exercising a few different paths.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182692 91177308-0d34-0410-b5e6-96231b3b80d8
D5.h
3b77151a61d2985ad5b29ee3d05b34d553322c2a 25-May-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Remove Count{Leading,Trailing}Zeros_{32,64}.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182690 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
de7cbbfcce5c068f0699bdcb6dac093c0c91ba6f 25-May-2013 Quentin Colombet <qcolombet@apple.com> Follow up of the introduction of MCSymbolizer.
- Ressurect old MCDisassemble API to soften transition.
- Extend MCTargetDesc to set target specific symbolizer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182688 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
927d8dcb47a50b4471f5619733fb8196fa1e52ea 25-May-2013 Benjamin Kramer <benny.kra@googlemail.com> MathExtras: Return the result of find(First|Last)Set in the input type.

Otherwise ZB_Max returns a wrong result when sizeof(T) > sizeof(size_t).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182684 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c6af2432c802d241c8fffbe0371c023e6c58844e 25-May-2013 Michael J. Spencer <bigcheesegs@gmail.com> Replace Count{Leading,Trailing}Zeros_{32,64} with count{Leading,Trailing}Zeros.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182680 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
a0cfb8f21baf94fb8c40ff90bfc043de1ef700ec 24-May-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][MathExtras] Add missing include and disable _BitScan{Forward,Reverse}64 on non x64 MSVC systems.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182671 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
36fe3f2b5651882b12e24b49dc7818ebb1a5d79f 24-May-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Add type generic bit utilities to MathExtras.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182667 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
49a6a8d8f2994249c81b7914b07015714748a55c 24-May-2013 Benjamin Kramer <benny.kra@googlemail.com> Remove the Copied parameter from MemoryObject::readBytes.

There was exactly one caller using this API right, the others were relying on
specific behavior of the default implementation. Since it's too hard to use it
right just remove it and standardize on the default behavior.

Defines away PR16132.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182636 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
treamableMemoryObject.h
tringRefMemoryObject.h
ef99356dfebb96f6f90efb912c2877214bad060e 24-May-2013 Ahmed Bougacha <ahmed.bougacha@gmail.com> MC: Disassembled CFG reconstruction.

This patch builds on some existing code to do CFG reconstruction from
a disassembled binary:
- MCModule represents the binary, and has a list of MCAtoms.
- MCAtom represents either disassembled instructions (MCTextAtom), or
contiguous data (MCDataAtom), and covers a specific range of addresses.
- MCBasicBlock and MCFunction form the reconstructed CFG. An MCBB is
backed by an MCTextAtom, and has the usual successors/predecessors.
- MCObjectDisassembler creates a module from an ObjectFile using a
disassembler. It first builds an atom for each section. It can also
construct the CFG, and this splits the text atoms into basic blocks.

MCModule and MCAtom were only sketched out; MCFunction and MCBB were
implemented under the experimental "-cfg" llvm-objdump -macho option.
This cleans them up for further use; llvm-objdump -d -cfg now generates
graphviz files for each function found in the binary.

In the future, MCObjectDisassembler may be the right place to do
"intelligent" disassembly: for example, handling constant islands is just
a matter of splitting the atom, using information that may be available
in the ObjectFile. Also, better initial atom formation than just using
sections is possible using symbols (and things like Mach-O's
function_starts load command).

This brings two minor regressions in llvm-objdump -macho -cfg:
- The printing of a relocation's referenced symbol.
- An annotation on loop BBs, i.e., which are their own successor.

Relocation printing is replaced by the MCSymbolizer; the basic CFG
annotation will be superseded by more related functionality.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182628 91177308-0d34-0410-b5e6-96231b3b80d8
tringRefMemoryObject.h
2c94d0faa0e1c268893d5e04dc77e8a35889db00 24-May-2013 Ahmed Bougacha <ahmed.bougacha@gmail.com> Add MCSymbolizer for symbolic/annotated disassembly.

This is a basic first step towards symbolization of disassembled
instructions. This used to be done using externally provided (C API)
callbacks. This patch introduces:
- the MCSymbolizer class, that mimics the same functions that were used
in the X86 and ARM disassemblers to symbolize immediate operands and
to annotate loads based off PC (for things like c string literals).
- the MCExternalSymbolizer class, which implements the old C API.
- the MCRelocationInfo class, which provides a way for targets to
translate relocations (either object::RelocationRef, or disassembler
C API VariantKinds) to MCExprs.
- the MCObjectSymbolizer class, which does symbolization using what it
finds in an object::ObjectFile. This makes simple symbolization (with
no fancy relocation stuff) work for all object formats!
- x86-64 Mach-O and ELF MCRelocationInfos.
- A basic ARM Mach-O MCRelocationInfo, that provides just enough to
support the C API VariantKinds.

Most of what works in otool (the only user of the old symbolization API
that I know of) for x86-64 symbolic disassembly (-tvV) works, namely:
- symbol references: call _foo; jmp 15 <_foo+50>
- relocations: call _foo-_bar; call _foo-4
- __cf?string: leaq 193(%rip), %rax ## literal pool for "hello"
Stub support is the main missing part (because libObject doesn't know,
among other things, about mach-o indirect symbols).

As for the MCSymbolizer API, instead of relying on the disassemblers
to call the tryAdding* methods, maybe this could be done automagically
using InstrInfo? For instance, even though PC-relative LEAs are used
to get the address of string literals in a typical Mach-O file, a MOV
would be used in an ELF file. And right now, the explicit symbolization
only recognizes PC-relative LEAs. InstrInfo should have already have
most of what is needed to know what to symbolize, so this can
definitely be improved.

I'd also like to remove object::RelocationRef::getValueString (it seems
only used by relocation printing in objdump), as simply printing the
created MCExpr is definitely enough (and cleaner than string concats).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182625 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
01ef4f6982451e6a7c00a713d9ae677d3a15d042 21-May-2013 Jakob Stoklund Olesen <stoklund@2pi.dk> Define BYTE_ORDER on Solaris.

Solaris doesn't have an endian.h header, but SPARC is the only
big-endian architecture that runs Solaris, so just use that to detect
endianness at compile time.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182419 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
olaris.h
9f31f7c3055a3c028c54888832ed61c6912aac41 21-May-2013 Eric Christopher <echristo@gmail.com> Add an md5 library derived from a public domain implementation for dwarf4
type signature computation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182348 91177308-0d34-0410-b5e6-96231b3b80d8
D5.h
e932e891e55d90398f07957b7333b4ce66ae3829 20-May-2013 Benjamin Kramer <benny.kra@googlemail.com> Enable pod-like optimizations for pred and succ iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182257 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
115fb708fc1f92159d1d0f4c423f5b432efe758b 17-May-2013 Derek Schuff <dschuff@google.com> Add missing verb to comment in PassNameParser.h
Patch by Mark Seaborn.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182131 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
453f4f01302f00651aae2fc7658f6e23a2beadb0 15-May-2013 David Blaikie <dblaikie@gmail.com> Use only explicit bool conversion operators

BitVector/SmallBitVector::reference::operator bool remain implicit since
they model more exactly a bool, rather than something else that can be
boolean tested.

The most common (non-buggy) case are where such objects are used as
return expressions in bool-returning functions or as boolean function
arguments. In those cases I've used (& added if necessary) a named
function to provide the equivalent (or sometimes negative, depending on
convenient wording) test.

One behavior change (YAMLParser) was made, though no test case is
included as I'm not sure how to reach that code path. Essentially any
comparison of llvm::yaml::document_iterators would be invalid if neither
iterator was at the end.

This helped uncover a couple of bugs in Clang - test cases provided for
those in a separate commit along with similar changes to `operator bool`
instances in Clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181868 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
AMLParser.h
4a971705bc6030dc2e4338b3cd5cffa2e0f88b7b 13-May-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the MachineMove class.

It was just a less powerful and more confusing version of
MCCFIInstruction. A side effect is that, since MCCFIInstruction uses
dwarf register numbers, calls to getDwarfRegNum are pushed out, which
should allow further simplifications.

I left the MachineModuleInfo::addFrameMove interface unchanged since
this patch was already fairly big.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181680 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
6e53180db120b30f600ac31611a9dd47ef7f4921 10-May-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181618 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
96e70b2a0065488e8b72f5c6ace4de9e2e87035c 09-May-2013 Dmitri Gribenko <gribozavr@gmail.com> Use correct parameter names in comments [-Wdocumentation]


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181478 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
f28e3c501e033f103405c03a4bbf848cb6e67a2a 08-May-2013 Daniel Malea <daniel.malea@intel.com> Add line tracking support to FormattedStream
- previously formatted_raw_ostream tracked columns, now it tracks lines too
- used by (upcoming) DebugIR pass to know the line number to connect to each IR
instruction



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181463 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
c37077af7bfdc22da2d267eee7905927dd5fdd17 08-May-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> [PowerPC] Add some missing PPC64 relocs

All R_PPC_... relocs should also be present (using the same number)
under the corresponding R_PPC64_... name. The latter were missing
for a couple of cases, which this patch adds.

This is not a big problem when emitting the reloc, because we can
just use the R_PPC_... define instead. But it is a problem when
*dumping* relocations e.g. using llvm-readobj, because this will
expect only R_PPC64_... values when inspecting a ppc64 ELF file.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181451 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
61e01721978af4c2979c4b9153e56e72eb6389fb 06-May-2013 Andrew Trick <atrick@apple.com> Implemented public interface for modifying registered (not positional or sink options) command line options at runtime.

Patch by Dan Liew!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181254 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b7ad33b7195cb99b0cbb1c5308324d328650ca45 06-May-2013 Andrew Trick <atrick@apple.com> Support command line option categories.

Patch by Dan Liew!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181253 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
c5cf6e536598a3b1e30fce616b771d66a071a54c 06-May-2013 Jean-Luc Duprat <jduprat@apple.com> Provide InstCombines for the following 3 cases:
A * (1 - (uitofp i1 C)) -> select C, 0, A
B * (uitofp i1 C) -> select C, B, 0
select C, 0, A + select C, B, 0 -> select C, B, A

These come up in code that has been hand-optimized from a select to a linear blend,
on platforms where that may have mattered. We want to undo such changes
with the following transform:
A*(1 - uitofp i1 C) + B*(uitofp i1 C) -> select C, A, B



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181216 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f127be1e380d47d4c6588c7445a4db90f98ab534 05-May-2013 Arnold Schwaighofer <aschwaighofer@apple.com> PatternMatch: Fix documentation - 'function' not 'attribute'

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181146 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
e79d92c592d75e210dbe3abe1a975e859d17e953 05-May-2013 Arnold Schwaighofer <aschwaighofer@apple.com> PatternMatch: Matcher for (un)ordered floating point min/max

Add support for matching 'ordered' and 'unordered' floating point min/max
constructs.

In LLVM we can express min/max functions as a combination of compare and select.
We have support for matching such constructs for integers but not for floating
point. In floating point math there is no total order because of the presence of
'NaN'. Therefore, we have to be careful to preserve the original fcmp semantics
when interpreting floating point compare select combinations as a minimum or
maximum function. The resulting 'ordered/unordered' floating point maximum
function has to select the same value as the select/fcmp combination it is based
on.

ordered_max(x,y) = max(x,y) iff x and y are not NaN, y otherwise
unordered_max(x,y) = max(x,y) iff x and y are not NaN, x otherwise
ordered_min(x,y) = min(x,y) iff x and y are not NaN, y otherwise
unordered_min(x,y) = min(x,y) iff x and y are not NaN, x otherwise

This matches the behavior of the underlying select(fcmp(olt/ult/.., L, R), L, R)
construct.

Any code using this predicate has to preserve this semantics.

A follow-up patch will use this to implement floating point min/max reductions
in the vectorizer.

radar://13723044

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181143 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
5c332dbd30d9398ed25b30c3080506f7b8e92290 05-May-2013 Dmitri Gribenko <gribozavr@gmail.com> Add ArrayRef constructor from None, and do the cleanups that this constructor enables

Patch by Robert Wilhelm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181138 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
820b3fd7716cf5ab26961d1b2b21fd5d0f330fe1 03-May-2013 Richard Sandiford <rsandifo@linux.vnet.ibm.com> [SystemZ] Add ELF relocation support

Another step towards reinstating the SystemZ backend. Tests will be
included in the main backend patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181008 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
38578c4919ea18ceb27e29988b2d857afe6215bf 03-May-2013 Stephen Hines <srhines@google.com> Merge remote-tracking branch 'upstream/master' into merge-20130502

Conflicts:
lib/Support/Unix/Signals.inc
unittests/Transforms/Utils/Cloning.cpp

Change-Id: I027581a4390ec3ce4cd8d33da8b5f4c0c7d372c8
0e1327e4aa1426aaa3f99a2cbfcb1f2b575791ad 02-May-2013 Filip Pizlo <fpizlo@apple.com> This exposes more MCJIT options via the C API:

CodeModel: It's now possible to create an MCJIT instance with any CodeModel you like. Previously it was only possible to
create an MCJIT that used CodeModel::JITDefault.

EnableFastISel: It's now possible to turn on the fast instruction selector.

The CodeModel option required some trickery. The problem is that previously, we were ensuring future binary compatibility in
the MCJITCompilerOptions by mandating that the user bzero's the options struct and passes the sizeof() that he saw; the
bindings then bzero the remaining bits. This works great but assumes that the bitwise zero equivalent of any field is a
sensible default value.

But this is not the case for LLVMCodeModel, or its internal equivalent, llvm::CodeModel::Model. In both of those, the default
for a JIT is CodeModel::JITDefault (or LLVMCodeModelJITDefault), which is not bitwise zero.

Hence this change introduces LLVMInitializeMCJITCompilerOptions(), which will initialize the user's options struct with
defaults. The user will use this in the same way that they would have previously used memset() or bzero(). MCJITCAPITest.cpp
illustrates the change, as does the comment in ExecutionEngine.h.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180893 91177308-0d34-0410-b5e6-96231b3b80d8
odeGen.h
de3931241a23ffe9a5e67a0b758c3b32b4b3b5e4 01-May-2013 Filip Pizlo <fpizlo@apple.com> Fix file header comment.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180882 91177308-0d34-0410-b5e6-96231b3b80d8
BindingWrapping.h
40be1e85665d10f5444186f0e7106e368dd735b8 01-May-2013 Filip Pizlo <fpizlo@apple.com> This patch breaks up Wrap.h so that it does not have to include all of
the things, and renames it to CBindingWrapping.h. I also moved
CBindingWrapping.h into Support/.

This new file just contains the macros for defining different wrap/unwrap
methods.

The calls to those macros, as well as any custom wrap/unwrap definitions
(like for array of Values for example), are put into corresponding C++
headers.

Doing this required some #include surgery, since some .cpp files relied
on the fact that including Wrap.h implicitly caused the inclusion of a
bunch of other things.

This also now means that the C++ headers will include their corresponding
C API headers; for example Value.h must include llvm-c/Core.h. I think
this is harmless, since the C API headers contain just external function
declarations and some C types, so I don't believe there should be any
nasty dependency issues here.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180881 91177308-0d34-0410-b5e6-96231b3b80d8
BindingWrapping.h
emoryBuffer.h
ee03c949b85036b68c261dcc27dca064ee7e525d 23-Apr-2013 Alexey Samsonov <samsonov@google.com> Add basic zlib support to LLVM. This would allow to use compression/uncompression in selected LLVM tools.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180083 91177308-0d34-0410-b5e6-96231b3b80d8
ompression.h
c9363ef67a5716a282bd7b4810c61da522bb7fd9 15-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Fix silly typo that broke big endian hosts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179551 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
92b0d0ec4f9fa33de80373de504b00fef06f5be1 15-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Fix endianness on some MSVC versions.

Looks like it was evaluating undef == undef to true.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179549 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
0851ce0d8ed32830515549e41e55cb6e3a857ccc 15-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Try to fix the mingw builds.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179536 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
0034c1f3dfcf8ee1105732985e6b3678f1f01543 15-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179530 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
21a01d1ea89dba97c4f9e1f9f41485729a4046bc 15-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Make the host endianness check an integer constant expression.

I will remove the isBigEndianHost function once I update clang.

The ifdef logic is designed to
* not use configure/cmake to avoid breaking -arch i686 -arch ppc.
* default to little endian
* be as small as possible

It looks like sys/endian.h is the preferred header on most modern BSD systems,
but it is better to change this in a followup patch as machine/endian.h is
available on FreeBSD, OpenBSD, NetBSD and OS X.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179527 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
ost.h
a6cd815994a30888d579e7731a98e668f07a5965 12-Apr-2013 Nico Rieck <nico.rieck@gmail.com> Add missing relocation names

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179358 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
845a932af74ecbd2a20af5751dd61fa8cf2246f5 11-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a function to check if an argument list is too long.

This will be used in clang to decide if it should create an @file or not. It
will be tested on the clang side.

Patch by Nathan Froyd.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179285 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
c3b5997910d34b7cdd4bca4f0da48c4488009e5b 10-Apr-2013 Eric Christopher <echristo@gmail.com> Revert "Update the version of dwarf we say we're emitting to at least 3."
temporarily while we work on plumbing through some changes to continue
supporting gdb on darwin.

This reverts commit r179122.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179222 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
af12ad7c9264cb5840ccff5055d0a112a91798a5 09-Apr-2013 Eric Christopher <echristo@gmail.com> Update the version of dwarf we say we're emitting to at least 3.

Deals with a dwarf2 -> dwarf3 DW_FORM_ref_addr change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179122 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
76e70f340c09ba759ad96d8dfe416b64f24bc287 03-Apr-2013 Eric Christopher <echristo@gmail.com> Implements low-level object file format specific output for COFF and
ELF with support for:

- File headers
- Section headers + data
- Relocations
- Symbols
- Unwind data (only COFF/Win64)

The output format follows a few rules:
- Values are almost always output one per line (as elf-dump/coff-dump already do). - Many values are translated to something readable (like enum names), with the raw value in parentheses.
- Hex numbers are output in uppercase, prefixed with "0x".
- Flags are sorted alphabetically.
- Lists and groups are always delimited.

Example output:
---------- snip ----------
Sections [
Section {
Index: 1
Name: .text (5)
Type: SHT_PROGBITS (0x1)
Flags [ (0x6)
SHF_ALLOC (0x2)
SHF_EXECINSTR (0x4)
]
Address: 0x0
Offset: 0x40
Size: 33
Link: 0
Info: 0
AddressAlignment: 16
EntrySize: 0
Relocations [
0x6 R_386_32 .rodata.str1.1 0x0
0xB R_386_PC32 puts 0x0
0x12 R_386_32 .rodata.str1.1 0x0
0x17 R_386_PC32 puts 0x0
]
SectionData (
0000: 83EC04C7 04240000 0000E8FC FFFFFFC7 |.....$..........|
0010: 04240600 0000E8FC FFFFFF31 C083C404 |.$.........1....|
0020: C3 |.|
)
}
]
---------- snip ----------

Relocations and symbols can be output standalone or together with the section header as displayed in the example.
This feature set supports all tests in test/MC/COFF and test/MC/ELF (and I suspect all additional tests using elf-dump), making elf-dump and coff-dump deprecated.

Patch by Nico Rieck!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178679 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
in64EH.h
080e3c523e87ec68ca1ea5db4cd49816028dd8bd 02-Apr-2013 Chris Lattner <sabre@nondot.org> unindent the file to follow coding standards, change class doc comment
to be correct. No functionality or behavior change.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178511 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aab230545459fea4204d7e8a82e93109ebaa880f 28-Mar-2013 Howard Hinnant <hhinnant@apple.com> Seciton 24.2.2 of the C++ standard, [iterator.iterators], Table 106
requires that the return type of *r for all iterators r be reference,
where reference is defined in [iterator.requirements.general]/p11 as
iterator_traits<X>::reference, and X is the type of r.

But in CFG.h, the dereference operator of PredIterator and SuccIterator
return pointer, not reference.

Furthermore the nested type reference is value_type&, which is not the
type returned from operator*().

This patch simply makes the iterator::reference type value_type*, which
is what the operator*() returns, and then re-lables the return type as
reference.

From a functionality point of view, the only difference is that the
nested reference type is now value_type* instead of value_type&.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178240 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
ce945578ee190cefee0cdd987c1c287d04b8536a 27-Mar-2013 Chad Rosier <mcrosier@apple.com> Add a boolean parameter to the llvm::report_fatal_error() function to indicated
if crash diagnostics should be generated. By default this is enabled.
Part of rdar://13296693


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178161 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
7fe65d691dcce550d53ec9310913aab67ab6d654 27-Mar-2013 Rafael Espindola <rafael.espindola@gmail.com> Cleanup the simplify_type implementation.

As far as simplify_type is concerned, there are 3 kinds of smart pointers:

* const correct: A 'const MyPtr<int> &' produces a 'const int*'. A
'MyPtr<int> &' produces a 'int *'.
* always const: Even a 'MyPtr<int> &' produces a 'const int*'.
* no const: Even a 'const MyPtr<int> &' produces a 'int*'.

This patch then does the following:

* Removes the unused specializations. Since they are unused, it is hard
to know which kind should be implemented.
* Make sure we don't drop const.
* Fix the default forwarding so that const correct pointer only need
one specialization.
* Simplifies the existing specializations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178147 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
alueHandle.h
ype_traits.h
847e36fb60ed4c9fa08215df4fddbe085bbad87a 27-Mar-2013 Chad Rosier <mcrosier@apple.com> Add a boolean parameter to the ExecuteAndWait static function to indicated
if execution failed. ExecuteAndWait returns -1 upon an execution failure, but
checking the return value isn't sufficient because the wait command may
return -1 as well. This new parameter is to be used by the clang driver in a
subsequent commit.
Part of rdar://13362359


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178087 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
65e90c036472380bba160c349412f37128608e1c 26-Mar-2013 Ulrich Weigand <ulrich.weigand@de.ibm.com> PowerPC: Simplify handling of fixups.

MCTargetDesc/PPCMCCodeEmitter.cpp current has code like:

if (isSVR4ABI() && is64BitMode())
Fixups.push_back(MCFixup::Create(0, MO.getExpr(),
(MCFixupKind)PPC::fixup_ppc_toc16));
else
Fixups.push_back(MCFixup::Create(0, MO.getExpr(),
(MCFixupKind)PPC::fixup_ppc_lo16));

This is a problem for the asm parser, since it requires knowledge of
the ABI / 64-bit mode to be set up. However, more fundamentally,
at this point we shouldn't make such distinctions anyway; in an assembler
file, it always ought to be possible to e.g. generate TOC relocations even
when the main ABI is one that doesn't use TOC.

Fortunately, this is actually completely unnecessary; that code was added
to decide whether to generate TOC relocations, but that information is in
fact already encoded in the VariantKind of the underlying symbol.

This commit therefore merges those fixup types into one, and then decides
which relocation to use based on the VariantKind.

No changes in generated code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178007 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
7fc162f893d67ffd96fdb19e2eb9a03b4621f0c0 26-Mar-2013 Chandler Carruth <chandlerc@gmail.com> Split out the IRReader header and the utility functions it provides into
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
RReader.h
d5e1be03eda2e8036f136fdf12a5f5d9e1e684d8 26-Mar-2013 Nick Lewycky <nicholas@mxc.ca> Add a new watchdog timer interface. The interface does not permit handling timeouts, so
it's only really useful if you're going to crash anyways. Use it in the pretty stack trace
printer to kill the compiler if we hang while printing the stack trace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177962 91177308-0d34-0410-b5e6-96231b3b80d8
atchdog.h
f9a7132df8f8e0dd0f54fd603d358fc5a2285011 25-Mar-2013 Joerg Sonnenberger <joerg@bec.de> Refine fenv.h handling: check if the desired macros exist, before using
it. NetBSD/ARM and TILE-Gx are examples for platforms that have an
unusable fenv.h and this avoids the need for a blacklist.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177865 91177308-0d34-0410-b5e6-96231b3b80d8
Env.h
d1995b2a362c45d4d119b0cec8977360dd6ef33f 22-Mar-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce LLVM_STATIC_ASSERT macro, which expands to C/C++'s static_assert on compilers which support it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177699 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f0b0f1f9d97f4cf4d2f00c60fbc3d377a93465f8 22-Mar-2013 Chandler Carruth <chandlerc@gmail.com> Revert r177543: Add timing of the IR parsing code with a new
-time-ir-parsing flag

This breaks the layering of the Support library. We can't add an
implementation side to IRReader because it refers directly to entities
only accessible as part of the IR, AsmParser, and BitcodeReader
libraries. It can only be used in a context where all of those libraries
will be available.

We'll need to find some other way to get this functionality, and
hopefully solve the long-standing layering problem of IRReader.h...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177695 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
0f9b8503dece38059743e3adc6083ea493b73744 20-Mar-2013 Eli Bendersky <eliben@google.com> Add timing of the IR parsing code with a new -time-ir-parsing flag


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177543 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
2d4629c5d7dcc6582fa7b85a517744f1a3654eba 19-Mar-2013 Stephen Hines <srhines@google.com> Merge branch 'upstream' into merge_2013_03_18
02a2d4fb9e29f7a2b270bb23596dba02a1f79a03 19-Mar-2013 Jakub Staszak <kubastaszak@gmail.com> Remove unneeded #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177351 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
4a8dbb7da30bfe389ac5470cba98035451f329da 19-Mar-2013 Jakub Staszak <kubastaszak@gmail.com> Remove trailing spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177339 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
4bf030402de033aa0f0eb10165a169b9042c65da 14-Mar-2013 Joerg Sonnenberger <joerg@bec.de> Add two of the float related ARM-specific entries for e_flags needed for
linkers to interact with GNU ld.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177016 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cc3a595ab938352f3acf8652c5858ddf879524a5 14-Mar-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Fix lifetime of file descriptors when using MemoryBuffer.

Clients of MemoryBuffer::getOpenFile expect it not to take ownership of the file
descriptor passed in. So don't.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176995 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
76c25dc2bf23b0c710d896ca61f236fe5b18ee08 06-Mar-2013 Andrew Trick <atrick@apple.com> Generalize my previous fix for -print-options.

Always print options that differ from their implicit default. At least
for simple option types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176572 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
5adb136be579e8fff3734461580cb34d1d2983b8 06-Mar-2013 Stephen Hines <srhines@google.com> Merge commit 'b3201c5cf1e183d840f7c99ff779d57f1549d8e5' into merge_20130226

Conflicts:
include/llvm/Support/ELF.h
lib/Support/DeltaAlgorithm.cpp

Change-Id: I24a4fbce62eb39d924efee3c687b55e1e17b30cd
9b4886ee55c4d13cf0f663fe0ee5e0cfacb39667 28-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][ErrorOr] Add support for implicit conversion from error code/condition enums.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176228 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
b3508821533854b1879e7d6a83824b4ba84ce633 27-Feb-2013 Aaron Ballman <aaron@aaronballman.com> Suppressing MSVC warnings; patch thanks to Peng Cheng!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176193 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
b6080b48cfce5de877a90f34eba344afcf2f9f2c 26-Feb-2013 Eli Bendersky <eliben@google.com> Slight cosmetic fixes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176107 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
fc7695a653323071ec141aee994e4188592ad1f5 25-Feb-2013 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Fix missing relocation for TLS addressing peephole optimization.

Report and fix due to Kai Nacke. Testcase update by me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176029 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
0711d46a72580a943d60a770776a22aeb494e66c 21-Feb-2013 David Blaikie <dblaikie@gmail.com> Limit cast machinery to preserve const and not accept temporaries

After cleaning up the following type hierarchies:
* TypeLoc: r175462
* SVal: r175594
* CFGElement: r175462
* ProgramPoint: r175812
that all invoked undefined behavior by causing a derived copy construction of a
base object through an invalid cast (thus supporting code that relied on
casting temporaries that were direct base objects) Clang/LLVM is now clean of
casts of temporaries. So here's some fun SFINAE machinery (courtesy of Eli
Friedman, with some porting back from C++11 to LLVM's traits by me) to cause
compile-time failures if llvm::cast & friends are ever passed an rvalue.

This should avoid a repeat of anything even remotely like PR14321/r168124.

Thanks to Jordan Rose for the help with the various Static Analyzer related
hierarchies that needed cleaning up, Eli for the SFINAE, Richard Smith, John
McCall, Ted Kremenek, and Anna Zaks for their input/reviews/patience along the
way.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175819 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
2bbc19c1c6cd60b9c56750d7b03311c47a88b748 21-Feb-2013 David Blaikie <dblaikie@gmail.com> Make Optional<T>'s operator bool 'explicit' in C++11

Provides a general way to add 'explicit' for conversion operators (a no-op when
compiling as C++98).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175723 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
5cdeca8b1d726790fe9687bc4a4d615d299bc151 19-Feb-2013 Jack Carter <jcarter@mips.com> ELF symbol table field st_other support,
excluding visibility bits.

Mips (o32 abi) specific e_header setting.

EF_MIPS_ABI_O32 needs to be set in the
ELF header flags for o32 abi output.

Contributer: Reed Kotler


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175569 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
c989c61798783f99abe7f8c27baf76bd2aea5067 19-Feb-2013 Jack Carter <jcarter@mips.com> ELF symbol table field st_other support,
excluding visibility bits.

Mips (Mips16) specific e_header setting.

EF_MIPS_ARCH_ASE_M16 needs to be set in the
ELF header flags for Mips16.

Contributer: Reed Kotler


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175566 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
ccb3c9c2702f548fd0a7d60a622e6f4fdf0940e7 19-Feb-2013 Jack Carter <jcarter@mips.com> ELF symbol table field st_other support,
excluding visibility bits.

Mips (MicroMips) specific STO handling .

The st_other field settig for STO_MIPS_MICROMIPS

Contributer: Zoran Jovanovic




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175564 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
fef8b70f9d40e57fdd2e0c2bdf013cb7d0ea6df2 19-Feb-2013 Jakub Staszak <kubastaszak@gmail.com> Simplify code. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175559 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9f306bdc70757d11b6510525938c0d92c5529cc7 19-Feb-2013 Alexey Samsonov <samsonov@google.com> Fix initialization-order bug in llvm::Support::TimeValue. TimeValue::now() is explicitly called during module initialization of lib/Support/Process.cpp. It reads the field of global object PosixZeroTime, which is not guaranteed to be initialized at this point. Found by AddressSanitizer with -fsanitize=init-order option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175509 91177308-0d34-0410-b5e6-96231b3b80d8
imeValue.h
a39058aaed4540fc37681cad728b99546595b2e8 19-Feb-2013 David Blaikie <dblaikie@gmail.com> Use LLVM_DELETED_FUNCTION rather than '// do not implement' comments.

Also removes some redundant DNI comments on function declarations already
using the macro.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175466 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
6d3a278aabb0007e75a6c36c904538950e4b0093 16-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [ELF] Add STN_UNDEF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175338 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
ff91f2ef47cd16adffaa16ee83c45f6c3933a415 13-Feb-2013 Alex Rosenberg <alexr@leftfield.org> llvm-gcc -pedantic warns about C++ comments in C90 mode even if they're
inside an #if 0 block.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175098 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.h
782a65056aeed8ed3b632deeeec6973986c751bf 13-Feb-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> Fix MSan annotations inclusion guard.

#cmakedefine does not behave the way I though it was.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175050 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
dc08bfbd565ba6540be698bba551b2039661299d 12-Feb-2013 Jack Carter <jcarter@mips.com> This patch just fixes up various llvm formatting
violations such as tabs, blanks at eol and long
lines.





git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175007 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
86f18eb0b39804cf9cf1d17cdb58f44d8d846545 11-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][Compiler] Add LLVM_HAS_VARIADIC_TEMPLATES.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174913 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
780e9004c85ee33a0bdd592aebe9b959f29c4fb2 06-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][ErrorOr] Add support for convertable types.

Thanks to Andrew, David, and Aaron for helping fix this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174552 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
60bdc5b16e2fc17be184b515a00c2e2a2eb40b89 06-Feb-2013 Eli Bendersky <eliben@google.com> Initial support for DWARF CFI parsing and dumping in LLVM


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174463 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
5e215f9bfd9e113d2b14e1d2cd7395fbeb3c0561 06-Feb-2013 Eli Bendersky <eliben@google.com> Be consistent about the field name - AddressSize, not PointerSize. Add
a setter and fix some comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174462 91177308-0d34-0410-b5e6-96231b3b80d8
ataExtractor.h
2a78bb961ad99cfc9ae4e8a05a9a5a6bf84e41f3 05-Feb-2013 Andrew Trick <atrick@apple.com> Revert "[Support][ErrorOr] Add support for convertable types."

This reverts commit a33e1fafac7fedb1b080ef07ddf9ad6ddff3a830.

This unit test crashes on Darwon. It needs to be temporarily reverted
to unblock the test infrastructure.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174458 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
2ebc580638548744dfbd7637d56156e2dcf7ea2c 05-Feb-2013 Meador Inge <meadori@codesourcery.com> Support: ensure proper state in ErrorOr copy ctors before calling 'get'

Some paths through the copy constructors for 'ErrorOr' were calling
'get' when 'HasError' and 'IsValid' were not properly initialized.
Depending on what happened to be in memory for those member variables
the asserts in 'get' might incorrectly fire. Fixed by ensuring that
the member variables in question are always initialized before calling
'get'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174381 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
7304702ef99f98897d15baae0eede55f294bc602 05-Feb-2013 Jack Carter <jcarter@mips.com> This patch that sets the Mips ELF header flag for
MicroMips architectures.

Contributer: Zoran Jovanovic



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174360 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
a33e1fafac7fedb1b080ef07ddf9ad6ddff3a830 05-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][ErrorOr] Add support for convertable types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174357 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
9c02a276049cbd1d1511a88ebc7a22bb33658237 04-Feb-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> More MSan/ASan annotations.

This change lets us bootstrap LLVM/Clang under ASan and MSan. It contains
fixes for 2 issues:

- X86JIT reads return address from stack, which MSan does not know is
initialized.
- bugpoint tests run binaries with RLIMIT_AS. This does not work with certain
Sanitizers.

We are no longer including config.h in Compiler.h with this change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174306 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
d9d2f187759d0154574657c195068d367c338473 03-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Add LLVM_IS_UNALIGNED_ACCESS_FAST.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174271 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
72062f5744557e270a38192554c3126ea5f97434 31-Jan-2013 Tim Northover <Tim.Northover@arm.com> Add AArch64 as an experimental target.

This patch adds support for AArch64 (ARM's 64-bit architecture) to
LLVM in the "experimental" category. Currently, it won't be built
unless requested explicitly.

This initial commit should have support for:
+ Assembly of all scalar (i.e. non-NEON, non-Crypto) instructions
(except the late addition CRC instructions).
+ CodeGen features required for C++03 and C99.
+ Compilation for the "small" memory model: code+static data <
4GB.
+ Absolute and position-independent code.
+ GNU-style (i.e. "__thread") TLS.
+ Debugging information.

The principal omission, currently, is performance tuning.

This patch excludes the NEON support also reviewed due to an outbreak of
batshit insanity in our legal department. That will be committed soon bringing
the changes to precisely what has been approved.

Further reviews would be gratefully received.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174054 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
ea2d8780e9c78628fe5e3312ca4c17c054156c83 31-Jan-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> Annotate BumpPtrAllocator for MemorySanitizer.

This change adds MemorySanitizer annotations to BumpPtrAllocator to
improve report quality.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174051 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f121b79a6abb2afdf2b7cfe4eca92eaee48d6466 30-Jan-2013 Dmitri Gribenko <gribozavr@gmail.com> LLDB uses ConvertUTF16toUTF8, remove #ifdef


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173936 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.h
328027bf269bb0c108bd8533908ccb36ba11e9f0 30-Jan-2013 Dmitri Gribenko <gribozavr@gmail.com> Move UTF conversion routines from clang/lib/Basic to llvm/lib/Support

This is required to use them in TableGen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173923 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.h
97130e2b3de080e231caac86dbce1500e4e7af16 30-Jan-2013 Jack Carter <jcarter@mips.com> This patch implements runtime ARM specific
setting of ELF header e_flags.

Contributer: Jack Carter



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173885 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
66f1f30725eb20760069823ec015234cce6b887c 25-Jan-2013 Reid Kleckner <reid@kleckner.net> Add parens to suppress an MSVC 2012 << precedence warning

It doesn't seem to like instantiating the isUInt<unsigned N> template
with 6+3, and then doing <<N.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173507 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c6ada8e5f38168f13830e448f2b9e2d8e3eac72b 25-Jan-2013 Andrew Trick <atrick@apple.com> ScheduleDAG: colorize the DOT graph and improve formatting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173431 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
e35badad221354a53bc07a523120ed82d93e0569 24-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [ELF] Add R_X86_64_IRELATIVE.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173316 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
4d79724e130e69e3ce6327680460f399c18cb7eb 23-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][ErrorOr] Don't use nullptr :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173212 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
bdd4e1311830bea92c8b8c09f0644cba15421241 23-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][ErrorOr] Add optimized specialization of ErrorOr<void>.

ErrorOr<void> represents an operation that returns nothing, but can still fail.
It should be used in cases where you need the aditional user data that ErrorOr
provides over error_code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173209 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
7ad70bf46adf7a444c3318ba165e0cfd37fdd591 22-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][ErrorOr] Make old gcc happy.

Apparently this is how C++98 worked pre-DR. (Thanks Richard).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173203 91177308-0d34-0410-b5e6-96231b3b80d8
rrorOr.h
318b2cc86faeec1edd330eabba6cfcaab36e3fac 22-Jan-2013 Tim Northover <Tim.Northover@arm.com> Fix truncation of relocation types in Support/ELF.h

This is a follow-up to r171845, which fixes the same issue in the Support code.
Only targets with >256 relocations (principally AArch64) should be affected.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173151 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
059800f9e3fee2852672f846d91a2da14da7783a 21-Jan-2013 Stephen Hines <srhines@google.com> Merge remote-tracking branch 'upstream/master' into merge-llvm

Conflicts:
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
lib/MC/MCAssembler.cpp
lib/Support/Atomic.cpp
lib/Support/Memory.cpp
lib/Target/ARM/ARMJITInfo.cpp

Change-Id: Ib339baf88df5b04870c8df1bedcfe1f877ccab8d
f3c437b167a98cbe47cace318989f1807b523cd5 21-Jan-2013 NAKAMURA Takumi <geek4civic@gmail.com> Support/Compiler.h: MSC1600, aka VS2010, is not C++11-ready.

LLVM_HAS_CXX11_TYPETRAITS -- std::is_constructible
LLVM_HAS_CXX11_STDLIB -- std::unique_ptr

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172997 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
01812bebcc345b09ce261317b6fdefde8f097642 20-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Port ErrorOr<T> from lld to C++03.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172991 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorOr.h
ype_traits.h
c91cbb9b0c90a480299cc7deaef166d47a61d9df 18-Jan-2013 Jack Carter <jcarter@mips.com> This is a resubmittal. For some reason it broke the bots yesterday
but I cannot reproduce the problem and have scrubed my sources and
even tested with llvm-lit -v --vg.
Support for Mips register information sections.

Mips ELF object files have a section that is dedicated
to register use info. Some of this information such as
the assumed Global Pointer value is used by the linker
in relocation resolution.

The register info file is .reginfo in o32 and .MIPS.options
in 64 and n32 abi files.

This patch contains the changes needed to create the sections,
but leaves the actual register accounting for a future patch.


Contributer: Jack Carter



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172847 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cb4830cc99e790e0a76e1a9b1414e4b7e6e06134 17-Jan-2013 Aaron Ballman <aaron@aaronballman.com> Reverting back to the fallback instead of using the 64-bit popcnt instruction as it doesn't exist on all x64 CPU architectures.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172751 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
67828056ddfcfe089f9b5448839137508e39ac32 17-Jan-2013 Aaron Ballman <aaron@aaronballman.com> Reverting back to the fallback instead of using popcnt; this instruction doesn't exist on all CPU architectures. Fixes PR14982

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172734 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
69877d6db907be210696282c9f9f41f977c844d2 17-Jan-2013 Aaron Ballman <aaron@aaronballman.com> Wrapping __popcnt64 for MSVC so that it's only used on 64-bit builds.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172670 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c8b909ae499e5b0d7e38ba5c54c35e98c936300b 16-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Include the intrisics header and check for definition properly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172655 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
2dcc27367ccc0ce03a78336472b9476d708d351e 16-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Add MSVC intrinsic for CountPopulation.

Patch by Jakub Staszak.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172645 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
235c022296c2dc225bf3b4dfd5c8f8631222e570 16-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Update MSVC compiler support in Compiler.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172644 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
fbb662f840c2f76988ff9f3f152695632cfc71be 16-Jan-2013 Peter Collingbourne <peter@pcc.me.uk> Introduce llvm::sys::getProcessTriple() function.

In r143502, we renamed getHostTriple() to getDefaultTargetTriple()
as part of work to allow the user to supply a different default
target triple at configure time. This change also affected the JIT.
However, it is inappropriate to use the default target triple in the
JIT in most circumstances because this will not necessarily match
the current architecture used by the process, leading to illegal
instruction and other such errors at run time.

Introduce the getProcessTriple() function for use in the JIT and
its clients, and cause the JIT to use it. On architectures with a
single bitness, the host and process triples are identical. On other
architectures, the host triple represents the architecture of the
host CPU, while the process triple represents the architecture used
by the host CPU to interpret machine code within the current process.
For example, when executing 32-bit code on a 64-bit Linux machine,
the host triple may be 'x86_64-unknown-linux-gnu', while the process
triple may be 'i386-unknown-linux-gnu'.

This fixes JIT for the 32-on-64-bit (and vice versa) build on non-Apple
platforms.

Differential Revision: http://llvm-reviews.chandlerc.com/D254

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172627 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
b5f8cd5bb04df52c05cbd1eddf081e6d9cf9cd64 15-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Add LLVM_CONSTEXPR.

Marks a decl as constexpr if the compiler supports it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172508 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
96f498bd9f140a98321c478f517877c4767b94fa 13-Jan-2013 Dmitri Gribenko <gribozavr@gmail.com> Remove redundant 'llvm::' qualifications


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172358 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
caa91f8b8562a18eb9b66916660f950be027fd9f 11-Jan-2013 Dmitri Gribenko <gribozavr@gmail.com> Add a new portability macro LLVM_FUNCTION_NAME, that expands to __func__, if
supported.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172156 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
9b1f44b147ff943729207be2b0509f6e53d62bbb 10-Jan-2013 Jordan Rose <jordan_rose@apple.com> Add basic fix-its to SMDiagnostic.

Like Clang's FixItHint, SMFixIt represents an insertion, replacement, or
removal of source text. One or more fix-its can be emitted as part of
a diagnostic, and will be printed below the source range line to show the
user how they can fix their code.

Currently, the only client of SMFixIt is clang-tblgen; thus, the tests for
this behavior live in clang/test/TableGen/tg-fixits.td. If/when SMFixIt is
adopted within LLVM itself, those tests should be moved to the LLVM suite.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172086 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
1930fbf3ebfd988e71a96bf8839afb772f675233 10-Jan-2013 NAKAMURA Takumi <geek4civic@gmail.com> Signal.h: Add <cstdio> for FILE*, since r171989.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172044 91177308-0d34-0410-b5e6-96231b3b80d8
ignals.h
69a2d6f55afb2bc42bc19e754bcebee39ecdb8bc 10-Jan-2013 Douglas Gregor <dgregor@apple.com> Fix a race condition in the lock-file manager: once the lock file is
gone, check for the actual file we care about.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172033 91177308-0d34-0410-b5e6-96231b3b80d8
ockFileManager.h
674be02d525d4e24bc6943ed9274958c580bcfbc 10-Jan-2013 Jakub Staszak <kubastaszak@gmail.com> Fix include guards so they exactly match file names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172025 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRecycler.h
tomic.h
OFF.h
onstantRange.h
ataStream.h
ebugLoc.h
ynamicLibrary.h
rrno.h
Env.h
ileSystem.h
COV.h
etElementPtrTypeIterator.h
ost.h
ncludeFile.h
ntegersSubset.h
ntegersSubsetMapping.h
EB128.h
ocale.h
emory.h
emoryObject.h
utex.h
assNameParser.h
athV1.h
rocess.h
rogram.h
egistryParser.h
MLoc.h
aveAndRestore.h
ignals.h
olaris.h
ourceMgr.h
treamableMemoryObject.h
wapByteOrder.h
hreadLocal.h
hreading.h
imeValue.h
oolOutputFile.h
AMLParser.h
AMLTraits.h
ystem_error.h
f48acd5ecd2616623f441f2922d8b4c637e3cd6c 09-Jan-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> Move the internal PrintStackTrace function that is used for llvm::sys::PrintStackTraceOnErrorSignal(),
into a new function llvm::sys::PrintStackTrace, so that it's available to clients for logging purposes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171989 91177308-0d34-0410-b5e6-96231b3b80d8
ignals.h
a1db5de9e70dd8ffda57b1a4373915ea866b6f1d 09-Jan-2013 Adhemerval Zanella <azanella@linux.vnet.ibm.com> PowerPC: EH adjustments

This patch adjust the r171506 to make all DWARF enconding pc-relative
for PPC64. It also adds the R_PPC64_REL32 relocation handling in MCJIT
(since the eh_frame will not generate PIC-relative relocation) and also
adds the emission of stubs created by the TTypeEncoding.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171979 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cde81689649ca62688e22a2d068ca893ce221332 09-Jan-2013 Shankar Easwaran <shankare@codeaurora.org> add hexagon flags in ELF.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171977 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
b1349fa3c52f328896a4182a8e7b90bce75f1e1e 09-Jan-2013 Manuel Klimek <klimek@google.com> Incrase the number of parameters for AlignedCharArrayUnion.

We need this to correctly fix ASTMatchers/ASTTypeTraits.h in clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171965 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
02fa38344c1cf1f27d59da5c3358d19bbb752f01 08-Jan-2013 Nick Kledzik <kledzik@apple.com> Fix memory leak in YAML I/O.

Stop using BumpPtrAllocator for HNodes because
they have fields (vector, map) which require HNode
destructors to be run.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171896 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
9a1e0e252a7ede548acaac98cf304d4bb135fb97 08-Jan-2013 Eric Christopher <echristo@gmail.com> Remove the llvm-local DW_TAG_vector_type tag and add a test to
make sure that vector types do work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171833 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
72a81be37452983f9960a376c19682034ef7db35 08-Jan-2013 Eric Christopher <echristo@gmail.com> Remove what appears to be a dead llvm-specific debug tag.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171821 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
3ebe59c892051375623fea55e977ff559fdb3323 07-Jan-2013 Jordan Rose <jordan_rose@apple.com> Change SMRange to be half-open (exclusive end) instead of closed (inclusive)

This is necessary not only for representing empty ranges, but for handling
multibyte characters in the input. (If the end pointer in a range refers to
a multibyte character, should it point to the beginning or the end of the
character in a char array?) Some of the code in the asm parsers was already
assuming this anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171765 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
AMLParser.h
637582eaf77e6892094cea0bf6b9483f50b5d94e 07-Jan-2013 Quentin Colombet <qcolombet@apple.com> When code size is the priority (Oz, MinSize attribute), help llvm
turning a code like this:

if (foo)
free(foo)

into that:
free(foo)

Move a call to free from basic block FB into FB's predecessor, P,
when the path from P to FB is taken only if the argument of free is
not equal to NULL.

Some restrictions apply on P and FB to be sure that this code motion
is profitable. Namely:
1. FB must have only one predecessor P.
2. FB must contain only the call to free plus an unconditional
branch to S.
3. P's successors are FB and S.

Because of 1., we will not increase the code size when moving the call
to free from FB to P.
Because of 2., FB will be empty after the move.
Because of 2. and 3., P's branch instruction becomes useless, so as FB
(simplifycfg will do the job).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171762 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
8a0631a35e7719c5a3dc8678ec342fe5a83170da 05-Jan-2013 Jakob Stoklund Olesen <stoklund@2pi.dk> Add an ArrayRecycler class.

This is similar to the existing Recycler allocator, but instead of
recycling individual objects from a BumpPtrAllocator, arrays of
different sizes can be allocated.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171581 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRecycler.h
fa511bf6c286bb93236ee5aa08e7848414459d94 05-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Provide a default constructor for TimeValue. This was used, but only in
if-ed out code paths and on Windows. Hopefully restores the Windows
build. Thanks to Reid Kleckner for helping triage this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171568 91177308-0d34-0410-b5e6-96231b3b80d8
imeValue.h
73c35d86b9d5236be5b3f49bc8df11008b96636e 05-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Add time getters to the process interface for requesting the elapsed
wall time, user time, and system time since a process started.

For walltime, we currently use TimeValue's interface and a global
initializer to compute a close approximation of total process runtime.

For user time, this adds support for an somewhat more precise timing
mechanism -- clock_gettime with the CLOCK_PROCESS_CPUTIME_ID clock
selected.

For system time, we have to do a full getrusage call to extract the
system time from the OS. This is expensive but unavoidable.

In passing, clean up the implementation of the old APIs and fix some
latent bugs in the Windows code. This might have manifested on Windows
ARM systems or other systems with strange 64-bit integer behavior.

The old API for this both user time and system time simultaneously from
a single getrusage call. While this results in fewer system calls, it
also results in a lower precision user time and if only user time is
desired, it introduces a higher overhead. It may be worthwhile to switch
some of the pass timers to not track system time and directly track user
and wall time. The old API also tracked walltime in a confusing way --
it just set it to the current walltime rather than providing any measure
of wall time since the process started the way buth user and system time
are tracked. The new API is more consistent here.

The plan is to eventually implement these methods for a *child* process
by using the wait3(2) system call to populate an rusage struct
representing the whole subprocess execution. That way, after waiting on
a child process its stats will become accurate and cheap to query.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171551 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
b2e01b3707e23276a087f0f67edfc86082acdaa2 04-Jan-2013 Jakob Stoklund Olesen <stoklund@2pi.dk> Special case Recycler::clear(BumpPtrAllocator).

A BumpPtrAllocator has an empty Deallocate() method, but
Recycler::clear() would still call it for every single object ever
allocated, bringing all those objects into cache. As a bonus,
iplist::remove() will also write to the Prev/Next pointers on all the
objects, so all those cache lines have to be written back to RAM before
the pages are given back to the OS.

Stop wasting time and memory bandwith by using the new
clearAndLeakUnsafely() function to jettison all the recycled objects.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171541 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
50c30427405142f1b587edee846606184ae6af8e 04-Jan-2013 Nick Kledzik <kledzik@apple.com> Fix how YAML I/O detects flow sequences.
Update test case to verify flow sequence is
written as a flow sequence.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171514 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
7b449889e7886b263718b5103538970f287bc37e 04-Jan-2013 Adhemerval Zanella <azanella@linux.vnet.ibm.com> PowerPC: Fix eh_frame relocation for PIC

This patch fixes the PPC eh_frame definitions for the personality and
frame unwinding for PIC objects. It makes PIC build correctly creates
relative relocations in the '.rela.eh_frame' segments and thus avoiding
a text relocation that generates a DT_TEXTREL segments in link phase.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171506 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
1eae141f195b7edd060c2c872ea3eac4ce937262 03-Jan-2013 NAKAMURA Takumi <geek4civic@gmail.com> Compiler.h: Leave LLVM_BUILTIN_UNREACHABLE undefined if it is unavailable in host compiler.

Users of LLVM_BUILTIN_UNREACHABLE should be responsible in the case when LLVM_BUILTIN_UNREACHABLE is undefined.

Actually, (0, (p)) in LLVM_ASSUME_ALIGNED(p, a) caused thousands of warnings on g++-4.4. It was a motivation in this commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171455 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
39227578242d96bc67e4ee1a408bfc0d83c6aa24 02-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> Restrict __builtin_assume_aligned to gcc 4.7+

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171408 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
c8b18df9a79ddb759d6a563dd7ebd90b85ae4918 02-Jan-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Support][Endian] Add support for specifying the alignment and native unaligned types.

* Add support for specifying the alignment to use.
* Add the concept of native endianness. Used for unaligned native types.

The native alignment and read/write simplification is based on a patch by Richard Smith.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171406 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
ndian.h
8da72f82be858234e81e8a95bd202ab2f2bf891b 02-Jan-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> Don't #include stuff outside the include guards.

This defeats the include-guard optimization when parsing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171405 91177308-0d34-0410-b5e6-96231b3b80d8
imeValue.h
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
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
FG.h
allSite.h
onstantFolder.h
ataFlow.h
etElementPtrTypeIterator.h
nstIterator.h
ntegersSubset.h
oFolder.h
atternMatch.h
argetFolder.h
alueHandle.h
eda54e193efe9d3337caca7f1fa4631cea12d517 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Make it explicit that the only entry points to the Program object are
through the static helper functions. This is already true throughout the
codebase.

Slowly, I'm going to re-implement these static helpers in terms of a new
process based interface which can expose more information, and remove
the program object entirely.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171335 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
a0d8f28a9cbebfd3ddb32dfe3e0a286ede1678c5 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Remove an unused method on Program.

I'm simplifying this interface as much as I can before merging it with
the new process interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171334 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
2bbe46647555cdd05fe0db5f1dd2839330a647b2 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Remove an unused method on the Program class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171332 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
f5867ab7178784bc63a3deafcf4fb09260e4d19a 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Go ahead and get rid of the old page size interface and convert all the
users over to the new one. No sense maintaining this "compatibility"
layer it seems.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171331 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
814afe91ccad0e5e1f767303d780fa0318fa5212 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Flesh out a page size accessor in the new API.

Implement the old API in terms of the new one. This simplifies the
implementation on Windows which can now re-use the self_process's once
initialization.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171330 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
02d75477cd9bed5acf46979869f041e7f9726200 31-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Remove the declspecs from small alignments that we can force with
a union. These don't actually work for by-value function arguments, and
MSVC warns if they exist even while (we hope) it aligns the argument
correctly due to the other union member.

This means MSVC will miss out on optimizations based on the alignment of
the buffer, but really, there aren't that many for x86 and MSVC is
likely not doing a great job of optimizing LLVM and Clang anyways.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171328 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
e0e1985b3b71f21cd1d6c1e4924abf0f5b499a73 31-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Remove an unused function in the old Process interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171327 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
3c6f89aa2e489b79f16270dae42d10059234cf82 31-Dec-2012 Michael J. Spencer <bigcheesegs@gmail.com> [AlignOf] Add AlignedCharArray and refactor AlignedCharArrayUnion.

This adds AlignedCharArray<Alignment, Size>. A templated struct that contains
a member named buffer of type char[Size] that is aligned to Alignment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171319 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
0184a841d3914bb78c7c6fa87ce9da86a2d5992a 31-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Begin sketching out the process interface.

The coding style used here is not LLVM's style because this is modeled
after a Boost interface and thus done in the style of a candidate C++
standard library interface. I'll probably end up proposing it as
a standard C++ library if it proves to be reasonably portable and
useful.

This is just the most basic parts of the interface -- getting the
process ID out of it. However, it helps sketch out some of the boiler
plate such as the base class, derived class, shared code, and static
factory function. It also introduces a unittest so that I can
incrementally ensure this stuff works.

However, I've not even compiled this code for Windows yet. I'll try to
fix any Windows fallout from the bots, and if I can't fix it I'll revert
and get someone on Windows to help out. There isn't a lot more that is
mandatory, so soon I'll switch to just stubbing out the Windows side and
get Michael Spencer to help with implementation as he can test it
directly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171289 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
dac1eeb4b7948456682e9aa641d2d5ef3eba8869 31-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Start sketching out a roadmap for better subprocess management in the
LLVM libraries. Also, clean up the doxygen and formatting of the
existing interfaces.

With this change I'm calling the existing interface "legacy" because I'd
like to replace it with something much better. My end goal is to expose
a common set of interfaces for inspecting various properties of
a process, and implementations to expose those both for the current
process and for child processes. This will also expose more rich
interfaces for spawning and controling a subprocess, notably to use
system calls like wait3 and wait4 where available and gather detailed
resource usage stats about the subprocess.

My plan (discussed with Michael Spencer on IRC) is to base this loosely
around the proposed Boost.Process interface, but to implement
a relatively small subset of that functionality based around the needs
of LLVM, Clang, the Clang driver, etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171285 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
629fb82419d9bfff6ae475363bcce66192dfcc8e 22-Dec-2012 Bill Wendling <isanbard@gmail.com> Change 'AttrVal' to 'AttrKind' to better reflect that it's a kind of attribute instead of the value of the attribute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170972 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
9679a04da65b33037abac50a54884bb9b7b73698 22-Dec-2012 Richard Smith <richard-llvm@metafoo.co.uk> Fix some undefined behavior when parsing YAML input: don't try to compare an
uninitialized value against a default value. Found by -fsanitize=enum.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170970 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
6af228a92a7b8414fa3c1b3c37ee659d32e66e1b 20-Dec-2012 Roman Divacky <rdivacky@freebsd.org> Remove MCTargetAsmLexer and its derived classes now that edis,
its only user, is gone.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170699 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
034b94b17006f51722886b0f2283fb6fb19aca1f 19-Dec-2012 Bill Wendling <isanbard@gmail.com> Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170502 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6c583141bf6b7a6b5f8125c1037ecbc089813288 18-Dec-2012 Eric Christopher <echristo@gmail.com> Add support for passing -main-file-name all the way through to
the assembler.

Part of PR14624

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170390 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
fbc8a73e0c9f4e9da49faa4782c9bfb0acb50a24 17-Dec-2012 Nick Kledzik <kledzik@apple.com> Use different trait techniques to be compatible with g++

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170355 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
b453e16855f347e300f1dc0cd0dfbdd65c27b0d2 14-Dec-2012 Bill Schmidt <wschmidt@linux.vnet.ibm.com> This patch improves the 64-bit PowerPC InitialExec TLS support by providing
for a wider range of GOT entries that can hold thread-relative offsets.
This matches the behavior of GCC, which was not documented in the PPC64 TLS
ABI. The ABI will be updated with the new code sequence.

Former sequence:

ld 9,x@got@tprel(2)
add 9,9,x@tls

New sequence:

addis 9,2,x@got@tprel@ha
ld 9,x@got@tprel@l(9)
add 9,9,x@tls

Note that a linker optimization exists to transform the new sequence into
the shorter sequence when appropriate, by replacing the addis with a nop
and modifying the base register and relocation type of the ld.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170209 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
8ad435fa4809b5a4ad1043435cbafd5c9ddf2d93 13-Dec-2012 Michael Ilseman <milseman@apple.com> Pattern matching code for intrinsics.

Provides m_Argument that allows matching against a CallSite's specified argument. Provides m_Intrinsic pattern that can be templatized over the intrinsic id and bind/match arguments similarly to other pattern matchers. Implementations provided for 0 to 4 arguments, though it's very simple to extend for more. Also provides example template specialization for bswap (m_BSwap) and example of code cleanup for its use.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170091 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
896192402204c5a9a519ccc6ecc6834888fa7d51 13-Dec-2012 Michael Ilseman <milseman@apple.com> m_CombineOr and m_CombineAnd pattern combinators

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170086 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
ae3ce26f995f4747516a756f73d152c7188ff43b 12-Dec-2012 Benjamin Kramer <benny.kra@googlemail.com> YAMLIO: Remove all of the template instantiation hacks, I don't see why they're necessary and it breaks linking of the unit tests.

Also comes with a clang-format run on the cpp file, it had major style violations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170036 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
df2f74fa411e54bc1e5f16eb86e5cb1bde973746 12-Dec-2012 Nick Kledzik <kledzik@apple.com> AlignedCharArrayUnion is erroring with non-clang compilers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170031 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
8ceb8b764f266ff00a590c88a7ecc654b13a8f0b 12-Dec-2012 Nick Kledzik <kledzik@apple.com> Initial implementation of a utility for converting native data
structures to and from YAML using traits. The first client will
be the test suite of lld. The documentation will show up at:

http://llvm.org/docs/YamlIO.html




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170019 91177308-0d34-0410-b5e6-96231b3b80d8
AMLTraits.h
349c2787cf9e174c8aa955bf8e3b09a405b2aece 12-Dec-2012 Bill Schmidt <wschmidt@linux.vnet.ibm.com> This patch implements local-dynamic TLS model support for the 64-bit
PowerPC target. This is the last of the four models, so we now have
full TLS support.

This is mostly a straightforward extension of the general dynamic model.
I had to use an additional Chain operand to tie ADDIS_DTPREL_HA to the
register copy following ADDI_TLSLD_L; otherwise everything above the
ADDIS_DTPREL_HA appeared dead and was removed.

As before, there are new test cases to test the assembly generation, and
the relocations output during integrated assembly. The expected code
gen sequence can be read in test/CodeGen/PowerPC/tls-ld.ll.

There are a couple of things I think can be done more efficiently in the
overall TLS code, so there will likely be a clean-up patch forthcoming;
but for now I want to be sure the functionality is in place.

Bill


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170003 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
1d4b1507045075273cb301efec8722b961b78c22 12-Dec-2012 Michael Ilseman <milseman@apple.com> Pattern matchers for floating point values

m_ConstantFP - match and bind a float constant
m_SpecificConstantFP - match a specific floating point value or vector of floats of that value
m_FPOne - match a floating point 1.0 or vector of 1.0s
m_NegZero - match -0.0
m_AnyZero - match 0 or -0.0



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169939 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
08b25ce0a1efe4f71b557a131e764fb5fc97cbe7 12-Dec-2012 Michael Ilseman <milseman@apple.com> Remove FIXMEs surrounding Constant[Data]Vectors, instead

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169938 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
57ac1f458a754f30cf500410b438fb260f9b8fe5 11-Dec-2012 Bill Schmidt <wschmidt@linux.vnet.ibm.com> This patch implements the general dynamic TLS model for 64-bit PowerPC.

Given a thread-local symbol x with global-dynamic access, the generated
code to obtain x's address is:

Instruction Relocation Symbol
addis ra,r2,x@got@tlsgd@ha R_PPC64_GOT_TLSGD16_HA x
addi r3,ra,x@got@tlsgd@l R_PPC64_GOT_TLSGD16_L x
bl __tls_get_addr(x@tlsgd) R_PPC64_TLSGD x
R_PPC64_REL24 __tls_get_addr
nop
<use address in r3>

The implementation borrows from the medium code model work for introducing
special forms of ADDIS and ADDI into the DAG representation. This is made
slightly more complicated by having to introduce a call to the external
function __tls_get_addr. Using the full call machinery is overkill and,
more importantly, makes it difficult to add a special relocation. So I've
introduced another opcode GET_TLS_ADDR to represent the function call, and
surrounded it with register copies to set up the parameter and return value.

Most of the code is pretty straightforward. I ran into one peculiarity
when I introduced a new PPC opcode BL8_NOP_ELF_TLSGD, which is just like
BL8_NOP_ELF except that it takes another parameter to represent the symbol
("x" above) that requires a relocation on the call. Something in the
TblGen machinery causes BL8_NOP_ELF and BL8_NOP_ELF_TLSGD to be treated
identically during the emit phase, so this second operand was never
visited to generate relocations. This is the reason for the slightly
messy workaround in PPCMCCodeEmitter.cpp:getDirectBrEncoding().

Two new tests are included to demonstrate correct external assembly and
correct generation of relocations using the integrated assembler.

Comments welcome!

Thanks,
Bill


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169910 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
99faa3b4ec6d03ac7808fe4ff3fbf3d04e375502 08-Dec-2012 Bill Wendling <isanbard@gmail.com> s/AttrListPtr/AttributeSet/g to better label what this class is going to be in the near future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169651 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
829c8bd98db63bc57f2e6c21bfcd5464f08ef548 07-Dec-2012 Michael Ilseman <milseman@apple.com> Remove trailing whitespace

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169637 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
717a142823f84bd3aa958755ead1d991860ca8f4 05-Dec-2012 Michael J. Spencer <bigcheesegs@gmail.com> Updates to Win64EH.h structures.

Change member types of RuntimeFunction and UnwindInfo from uint64_t to
uint32_t:
These members represent addresses. According to MSDN, they are image
relative, that is, they are 32-bit offsets from the starting address
of the image that contains the function table entry.
See MSDN for more information:
RUNTIME_FUNCTION: http://msdn.microsoft.com/en-us/library/ft9x1kdx.aspx
UNWIND_INFO: http://msdn.microsoft.com/en-us/library/ddssxxy8.aspx

Make Win64.h platform-neutral:
The standard types unit8_t, uint16_t and uint32_t are replaced with
their counterparts from Endian.h. Accessor functions are introduced to
replace bit fields.

Patch by João Matos and Kai Nacke.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169414 91177308-0d34-0410-b5e6-96231b3b80d8
in64EH.h
d7802bf0ddcac16ee910105922492aee86a53e1b 04-Dec-2012 Bill Schmidt <wschmidt@linux.vnet.ibm.com> This patch introduces initial-exec model support for thread-local storage
on 64-bit PowerPC ELF.

The patch includes code to handle external assembly and MC output with the
integrated assembler. It intentionally does not support the "old" JIT.

For the initial-exec TLS model, the ABI requires the following to calculate
the address of external thread-local variable x:

Code sequence Relocation Symbol
ld 9,x@got@tprel(2) R_PPC64_GOT_TPREL16_DS x
add 9,9,x@tls R_PPC64_TLS x

The register 9 is arbitrary here. The linker will replace x@got@tprel
with the offset relative to the thread pointer to the generated GOT
entry for symbol x. It will replace x@tls with the thread-pointer
register (13).

The two test cases verify correct assembly output and relocation output
as just described.

PowerPC-specific selection node variants are added for the two
instructions above: LD_GOT_TPREL and ADD_TLS. These are inserted
when an initial-exec global variable is encountered by
PPCTargetLowering::LowerGlobalTLSAddress(), and later lowered to
machine instructions LDgotTPREL and ADD8TLS. LDgotTPREL is a pseudo
that uses the same LDrs support added for medium code model's LDtocL,
with a different relocation type.

The rest of the processing is straightforward.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169281 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
6bc86018d189e9ab62d30ef8190bac961dd22248 03-Dec-2012 Michael J. Spencer <bigcheesegs@gmail.com> [Support] Make FileOutputBuffer work on Windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169167 91177308-0d34-0410-b5e6-96231b3b80d8
ileOutputBuffer.h
255f89faee13dc491cb64fbeae3c763e7e2ea4e6 03-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort the #include lines for the include/... tree with the script.

AKA: Recompile *ALL* the source code!

This one went much better. No manual edits here. I spot-checked for
silliness and grep-checked for really broken edits and everything seemed
good. It all still compiles. Yell if you see something that looks goofy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
allSite.h
ommandLine.h
ataFlow.h
rrorHandling.h
etElementPtrTypeIterator.h
raphWriter.h
ntegersSubset.h
assNameParser.h
redIteratorCache.h
ourceMgr.h
treamableMemoryObject.h
tringPool.h
argetFolder.h
argetRegistry.h
hreadLocal.h
imer.h
algrind.h
AMLParser.h
4334dd96a9e622fdcf2825a8f73a2d941d67be72 30-Nov-2012 Chandler Carruth <chandlerc@gmail.com> Switch LLVM_USE_RVALUE_REFERENCES to LLVM_HAS_RVALUE_REFERENCES.

Rationale:
1) This was the name in the comment block. ;]
2) It matches Clang's __has_feature naming convention.
3) It matches other compiler-feature-test conventions.

Sorry for the noise. =]

I've also switch the comment block to use a \brief tag and not duplicate
the name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168996 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
ileSystem.h
a5bf44b0b396e8b9ae0db5c62c05ac6618aab5d3 30-Nov-2012 Chandler Carruth <chandlerc@gmail.com> Separate out the tests for whether the compiler suports R-value
references from whether it supports an R-value reference *this. No
version of GCC today supports the latter, which breaks GCC C++11
compiles of LLVM and Clang now.

Also add doxygen comments clarifying what's going on here, and update
the usage in Optional. I'll update the usages in Clang next.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168993 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
84bcf93e0fd225de2217d1b712c01586a633a6d8 30-Nov-2012 Chandler Carruth <chandlerc@gmail.com> Move the InstVisitor utility into VMCore where it belongs. It heavily
depends on the IR infrastructure, there is no sense in it being off in
Support land.

This is in preparation to start working to expand InstVisitor into more
special-purpose visitors that are still generic and can be re-used
across different passes. The expansion will go into the Analylis tree
though as nothing in VMCore needs it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168972 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
adf0c3d82dbff1480c63f1ebe68c7c1e6bb5828c 30-Nov-2012 Jordan Rose <jordan_rose@apple.com> Add a new C++11 compatibility macro, LLVM_LVALUE_FUNCTION.

This expands to '&', and is intended to be used when an /optional/ rvalue
override is available.

Before:
void foo() const { ... }

After:
void foo() const LLVM_LVALUE_FUNCTION { ... }
void foo() && { ... }

This is used to allow moving the contents of an Optional.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168963 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
6b731486d4460e5f1088a6066c0081af048c1e45 28-Nov-2012 Eli Bendersky <eliben@google.com> Add backreference matching capabilities to Support/Regex, with
appropriate unit tests. This change in itself is not expected to
affect any functionality at this point, but it will serve as a
stepping stone to improve FileCheck's variable matching capabilities.

Luckily, our regex implementation already supports backreferences,
although a bit of hacking is required to enable it. It supports both
Basic Regular Expressions (BREs) and Extended Regular Expressions
(EREs), without supporting backrefs for EREs, following POSIX strictly
in this respect. And EREs is what we actually use (rightly). This is
contrary to many implementations (including the default on Linux) of
POSIX regexes, that do allow backrefs in EREs.

Adding backref support to our EREs is a very simple change in the
regcomp parsing code. I fail to think of significant cases where it
would clash with existing things, and can bring more versatility to
the regexes we write. There's always the danger of a backref in a
specially crafted regex causing exponential matching times, but since
we mainly use them for testing purposes I don't think it's a big
problem. [it can also be placed behind a flag specific to FileCheck,
if needed].

For more details, see:

* http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-November/055840.html
* http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121126/156878.html



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168802 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
34a9d4b3b9b7858b729a1af67afa721c048fe5e7 27-Nov-2012 Bill Schmidt <wschmidt@linux.vnet.ibm.com> This patch implements medium code model support for 64-bit PowerPC.

The default for 64-bit PowerPC is small code model, in which TOC entries
must be addressable using a 16-bit offset from the TOC pointer. Additionally,
only TOC entries are addressed via the TOC pointer.

With medium code model, TOC entries and data sections can all be addressed
via the TOC pointer using a 32-bit offset. Cooperation with the linker
allows 16-bit offsets to be used when these are sufficient, reducing the
number of extra instructions that need to be executed. Medium code model
also does not generate explicit TOC entries in ".section toc" for variables
that are wholly internal to the compilation unit.

Consider a load of an external 4-byte integer. With small code model, the
compiler generates:

ld 3, .LC1@toc(2)
lwz 4, 0(3)

.section .toc,"aw",@progbits
.LC1:
.tc ei[TC],ei

With medium model, it instead generates:

addis 3, 2, .LC1@toc@ha
ld 3, .LC1@toc@l(3)
lwz 4, 0(3)

.section .toc,"aw",@progbits
.LC1:
.tc ei[TC],ei

Here .LC1@toc@ha is a relocation requesting the upper 16 bits of the
32-bit offset of ei's TOC entry from the TOC base pointer. Similarly,
.LC1@toc@l is a relocation requesting the lower 16 bits. Note that if
the linker determines that ei's TOC entry is within a 16-bit offset of
the TOC base pointer, it will replace the "addis" with a "nop", and
replace the "ld" with the identical "ld" instruction from the small
code model example.

Consider next a load of a function-scope static integer. For small code
model, the compiler generates:

ld 3, .LC1@toc(2)
lwz 4, 0(3)

.section .toc,"aw",@progbits
.LC1:
.tc test_fn_static.si[TC],test_fn_static.si
.type test_fn_static.si,@object
.local test_fn_static.si
.comm test_fn_static.si,4,4

For medium code model, the compiler generates:

addis 3, 2, test_fn_static.si@toc@ha
addi 3, 3, test_fn_static.si@toc@l
lwz 4, 0(3)

.type test_fn_static.si,@object
.local test_fn_static.si
.comm test_fn_static.si,4,4

Again, the linker may replace the "addis" with a "nop", calculating only
a 16-bit offset when this is sufficient.

Note that it would be more efficient for the compiler to generate:

addis 3, 2, test_fn_static.si@toc@ha
lwz 4, test_fn_static.si@toc@l(3)

The current patch does not perform this optimization yet. This will be
addressed as a peephole optimization in a later patch.

For the moment, the default code model for 64-bit PowerPC will remain the
small code model. We plan to eventually change the default to medium code
model, which matches current upstream GCC behavior. Note that the different
code models are ABI-compatible, so code compiled with different models will
be linked and execute correctly.

I've tested the regression suite and the application/benchmark test suite in
two ways: Once with the patch as submitted here, and once with additional
logic to force medium code model as the default. The tests all compile
cleanly, with one exception. The mandel-2 application test fails due to an
unrelated ABI compatibility with passing complex numbers. It just so happens
that small code model was incredibly lucky, in that temporary values in
floating-point registers held the expected values needed by the external
library routine that was called incorrectly. My current thought is to correct
the ABI problems with _Complex before making medium code model the default,
to avoid introducing this "regression."

Here are a few comments on how the patch works, since the selection code
can be difficult to follow:

The existing logic for small code model defines three pseudo-instructions:
LDtoc for most uses, LDtocJTI for jump table addresses, and LDtocCPT for
constant pool addresses. These are expanded by SelectCodeCommon(). The
pseudo-instruction approach doesn't work for medium code model, because
we need to generate two instructions when we match the same pattern.
Instead, new logic in PPCDAGToDAGISel::Select() intercepts the TOC_ENTRY
node for medium code model, and generates an ADDIStocHA followed by either
a LDtocL or an ADDItocL. These new node types correspond naturally to
the sequences described above.

The addis/ld sequence is generated for the following cases:
* Jump table addresses
* Function addresses
* External global variables
* Tentative definitions of global variables (common linkage)

The addis/addi sequence is generated for the following cases:
* Constant pool entries
* File-scope static global variables
* Function-scope static variables

Expanding to the two-instruction sequences at select time exposes the
instructions to subsequent optimization, particularly scheduling.

The rest of the processing occurs at assembly time, in
PPCAsmPrinter::EmitInstruction. Each of the instructions is converted to
a "real" PowerPC instruction. When a TOC entry needs to be created, this
is done here in the same manner as for the existing LDtoc, LDtocJTI, and
LDtocCPT pseudo-instructions (I factored out a new routine to handle this).

I had originally thought that if a TOC entry was needed for LDtocL or
ADDItocL, it would already have been generated for the previous ADDIStocHA.
However, at higher optimization levels, the ADDIStocHA may appear in a
different block, which may be assembled textually following the block
containing the LDtocL or ADDItocL. So it is necessary to include the
possibility of creating a new TOC entry for those two instructions.

Note that for LDtocL, we generate a new form of LD called LDrs. This
allows specifying the @toc@l relocation for the offset field of the LD
instruction (i.e., the offset is replaced by a SymbolLo relocation).
When the peephole optimization described above is added, we will need
to do similar things for all immediate-form load and store operations.

The seven "mcm-n.ll" test cases are kept separate because otherwise the
intermingling of various TOC entries and so forth makes the tests fragile
and hard to understand.

The above assumes use of an external assembler. For use of the
integrated assembler, new relocations are added and used by
PPCELFObjectWriter. Testing is done with "mcm-obj.ll", which tests for
proper generation of the various relocations for the same sequences
tested with the external assembler.






git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168708 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
7279809d97a7094f6b7c6eb83203dd6b56b00ecc 25-Nov-2012 Craig Topper <craig.topper@gmail.com> Add an extra slash so doxygen comments will be properly recognized.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168554 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
525398e1376b0d61fe80a83ed2261e2e6e6ab4a3 20-Nov-2012 Sean Silva <silvas@purdue.edu> Allow using MemoryBuffers with yaml::Stream directly.

The rationale is to get YAML filenames in diagnostics from
yaml::Stream::printError -- currently the filename is hard-coded as
"YAML" because there's no buffer information available.

Patch by Kim Gräsman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168341 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
5094c0c2de9dc6a0345c9cd0f17af6193d917aed 17-Nov-2012 Eric Christopher <echristo@gmail.com> Add constant definitions for fission dwarf attributes, forms, etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168218 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
79c07d2a36282b09b9c5d0aa65ebf4bff017621b 15-Nov-2012 Dmitri Gribenko <gribozavr@gmail.com> Use empty parens for empty function parameter list instead of '(void)'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168049 91177308-0d34-0410-b5e6-96231b3b80d8
ircular_raw_ostream.h
ba6086818d9c5070061f74ac9944666b4312c6f0 13-Nov-2012 Ulrich Weigand <ulrich.weigand@de.ibm.com> Add (some) PowerPC TLS relocation types to ELF.h and
generate them from PPCELFObjectWriter::getRelocTypeInner
as appropriate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167864 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
707276d415002fb37ac3fbc50c66905a4ffe1f75 13-Nov-2012 Duncan Sands <baldrick@free.fr> Fix the instcombine GEP index widening transform to work correctly for vector
getelementptrs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167829 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
806e03d2381709ddfb5a8012729bbe6eae12caf5 08-Nov-2012 Eric Christopher <echristo@gmail.com> Add a relocation visitor to lib object. This works via caching relocated
values in a map that can be passed to consumers. Add a testcase that
ensures this works for llvm-dwarfdump.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167558 91177308-0d34-0410-b5e6-96231b3b80d8
ataExtractor.h
08f9c8d7761f6857ffb86da7a17e9a94a9629ba5 05-Nov-2012 Rafael Espindola <rafael.espindola@gmail.com> Add missing this->. Fixes pr14238.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167383 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2578c123f090821a84586d405e87012b4f32868f 03-Nov-2012 Duncan Sands <baldrick@free.fr> Fix the IntegersSubsetTest unit test when compiled with gcc-4.7. The issue here
is that the unit test doesn't have IntTy equal to APInt, instead it uses a class
derived from APInt. When, as in these lines, an IntTy& reference is returned
but is assigned to an APInt&, the compiler destroys the temporary the IntTy& was
referring to, leaving the APInt& referring to garbage. This causes the unittest
to fail systematically on my machine; it can also be caught by running the test
under valgrind.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167356 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
296815dccee4f5392855c829b8a9e4a661b83a42 31-Oct-2012 James Molloy <james.molloy@arm.com> Add support for ARM segment types PT_ARM_ARCHEXT, PT_ARM_EXIDX and PT_ARM_UNWIND.

Patch by Pete Chou!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167109 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
52d053238aabff0ed7ed0213cb192ce6adf7a190 31-Oct-2012 Rafael Espindola <rafael.espindola@gmail.com> xlc supports __attribute__((aligned(x))), use it.
Patch by Kai.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167087 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
8ceffeb95cca477d1faf176e95140272a28cb91c 30-Oct-2012 Sid Manning <sidneym@codeaurora.org> * Add e_flags enum for Hexagon
* Add Hexagon specific section indexes for small data
- Reviewed by Michael Spencer


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166997 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
976f770e2d008d323b760393c998cfc912763eec 29-Oct-2012 Evgeniy Stepanov <eugeni.stepanov@gmail.com> va_start, va_end, va_copy: InstrinsicInst subclasses and InstVisitor support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166916 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
652b28dbcac156bb6a3b596bdf29aaf17e89eda5 12-Oct-2012 Andrew Kaylor <andrew.kaylor@intel.com> Correcting enum values mentioned in comments.
Patch by Ashok Thirumurthi.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165827 91177308-0d34-0410-b5e6-96231b3b80d8
emory.h
ed84062812c7b8a82d0e8128a22aa1aa07a14d79 12-Oct-2012 Sean Silva <silvas@purdue.edu> Remove unnecessary classof()'s

isa<> et al. automatically infer when the cast is an upcast (including a
self-cast), so these are no longer necessary.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165767 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
8b8fa7b2f403ae2f342413239c4151e075022c97 12-Oct-2012 Sean Silva <silvas@purdue.edu> Casting.h: Automatically handle isa<Base>(Derived).

Additionally, all such cases are handled with no dynamic check.

All `classof()` of the form

class Foo {
[...]
static bool classof(const Bar *) { return true; }
[...]
}

where Foo is an ancestor of Bar are no longer necessary.
Don't write them!

Note: The exact test is `is_base_of<Foo, Bar>`, which is non-strict, so
that Foo is considered an ancestor of itself.

This leads to the following rule of thumb for LLVM-style RTTI:

The argument type of `classof()` should be a strict ancestor.

For more information about implementing LLVM-style RTTI, see
docs/HowToSetUpLLVMStyleRTTI.rst

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165765 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
1b005075b6f0b698eeca69e108688d112bd44519 10-Oct-2012 Bill Wendling <isanbard@gmail.com> Use the attribute builder to add attributes to call/invoke instruction. No functionality change intended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165562 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2fa8af224ea026f9432e833fd6f42a216423a010 09-Oct-2012 Bill Wendling <isanbard@gmail.com> Use the attribute enums to query if a function has an attribute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165551 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3e2d76c946ba753c2b11af192a52e25b6f9b46ff 09-Oct-2012 Bill Wendling <isanbard@gmail.com> Use the attribute enums to query if a parameter has an attribute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165550 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b4e971f376f15325d6918d7fae0c28c8dad5a78c 09-Oct-2012 Rafael Espindola <rafael.espindola@gmail.com> Enable response files in all tools. Patch by Liu, Yaxun (Sam). I have simplified
the test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165535 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
060f20a0fa73d04b871e273fbf7b3e49a3e78b73 09-Oct-2012 Bill Wendling <isanbard@gmail.com> Remove more uses of the attribute enums by supplying appropriate query methods for them.
No functionality change intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165466 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3574eca1b02600bac4e625297f4ecf745f4c4f32 08-Oct-2012 Micah Villmow <villmow@gmail.com> Move TargetData to DataLayout.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165402 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
365b9e0668d44038fa0c2739060c26acae12066e 04-Oct-2012 Bill Wendling <isanbard@gmail.com> Add method to query for NoCapture attribute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165212 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
5df15c692b944b6c46ec6d532fc286b7e0000d5d 04-Oct-2012 Bill Wendling <isanbard@gmail.com> Add method to query for 'NoAlias' attribute on call/invoke instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165208 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
847d165459a8d4c30b57c896c7a7e2722f800f82 03-Oct-2012 Bill Wendling <isanbard@gmail.com> Add methods which query for the specific attribute instead of using the
enums. This allows for better encapsulation of the Attributes class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165132 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
94c22716d60ff5edf6a98a3c67e0faa001be1142 27-Sep-2012 Sylvestre Ledru <sylvestre@debian.org> Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164768 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
imeValue.h
7e2c793a2b5c746344652b6579e958ee42fafdcc 27-Sep-2012 Sylvestre Ledru <sylvestre@debian.org> Fix a typo 'iff' => 'if'

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164767 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
imeValue.h
e2d02349c3a864a825f3152ac5b7999594a0952f 27-Sep-2012 Nick Lewycky <nicholas@mxc.ca> Add missing function CreateFPCast to the TargetFolder. It's there in the other
folders and not having it here fails to compile if you actually try to use it.

Also, CreatePointerCast was failing to do the part where it does TD-aware
constant folding. Granted there is exactly one case where that it will ever
do anything, but there's no reason to skip it. For reference, that case is a
subtraction between two constant offsets on the same global variable, eg.,
"&A[123] - &A[4].f".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164760 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
a96a1824747632ce87ef065b4a13fb777d2b14d6 23-Sep-2012 Craig Topper <craig.topper@gmail.com> Add LLVM_OVERRIDE to methods that override their base classes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164471 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ommandLine.h
ormattedStream.h
rettyStackTrace.h
treamableMemoryObject.h
AMLParser.h
ircular_raw_ostream.h
aw_os_ostream.h
aw_ostream.h
ystem_error.h
f5091b476c46333ecfcf095cd2e422e9748e9546 22-Sep-2012 Jordan Rose <jordan_rose@apple.com> Casting: assert that pointer arguments to isa<> are non-null.

This silences several analyzer warnings within LLVM, and provides a slightly
nicer crash experience when someone calls isa<>, cast<>, or dyn_cast<> with
a null pointer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164439 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
bbf628b6cefc8d817eb9ec04c2a357ad3f27d618 19-Sep-2012 Andrew Kaylor <andrew.kaylor@intel.com> This patch adds memory support functions which will later be used to implement section-specific protection handling in MCJIT.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164249 91177308-0d34-0410-b5e6-96231b3b80d8
emory.h
10a431824831c1d57a62dd84346387238f516e0c 18-Sep-2012 Roman Divacky <rdivacky@freebsd.org> Add PowerPC64 relocation definitions. Patch by Adhemerval Zanella!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164137 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
536a88ad5bf160232205192a7ce72e50bfadbded 18-Sep-2012 Roman Divacky <rdivacky@freebsd.org> When creating MCAsmBackend pass the CPU string as well. In X86AsmBackend
store this and use it to not emit long nops when the CPU is geode which
doesnt support them.

Fixes PR11212.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164132 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
cee033188f7b1a4f1b28b8edce0c1358f19f8158 18-Sep-2012 Craig Topper <craig.topper@gmail.com> Fix a typo. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164100 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
fc601db2ed899d800ea0a50f7ecf7de2a820cbc1 17-Sep-2012 Craig Topper <craig.topper@gmail.com> Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164014 91177308-0d34-0410-b5e6-96231b3b80d8
ileOutputBuffer.h
utexGuard.h
egistry.h
alueHandle.h
f630e49efc7bf3f1716b6daab3c2cc11a908754a 16-Sep-2012 Craig Topper <craig.topper@gmail.com> Use LLVM_DELETED_FUNCTION for copy constructors and copy assignment operators that aren't implemented.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164006 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ockFileManager.h
emoryBuffer.h
utex.h
rettyStackTrace.h
rogram.h
WMutex.h
ourceMgr.h
treamableMemoryObject.h
imer.h
aw_ostream.h
ystem_error.h
fbb13471ed99ab8fdc3dbadb091ee5e2295b7b26 16-Sep-2012 Craig Topper <craig.topper@gmail.com> Add LLVM_OVERRIDE and LLVM_FINAL C++11 compatibility macros.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164005 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
4e0ae44b3a1b5f7157351764fd125c7c85959797 15-Sep-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix Doxygen issues: wrap code examples in \code and use \p to refer to
parameters.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163984 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
dfa997992b16bbea02ac5102efd91f496b27cbb7 15-Sep-2012 Craig Topper <craig.topper@gmail.com> Fix a couple include directives that used angle brackets for llvm files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163978 91177308-0d34-0410-b5e6-96231b3b80d8
EB128.h
10097bd023acd750cff72a9f422608fce2ad81dd 15-Sep-2012 Daniel Dunbar <daniel@zuster.org> formatted_raw_ostream: Fix a serious bug in tell().
- The current_pos function is supposed to return all the written bytes, not the
current position of the underlying stream.
- This caused tell() to be broken whenever the underlying stream had buffered
content.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163948 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
48b6a79b2d367ea2e8cf014d8af9d573889d2f7f 15-Sep-2012 David Blaikie <dblaikie@gmail.com> Fix up erroneous alignas usage while making this portable to GCC 4.7

Review by Chandler Carruth.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163944 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
c5252da873d547a19069eaf9030fec203f128f66 14-Sep-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix Doxygen issues:
* wrap code blocks in \code ... \endcode;
* refer to parameter names in paragraphs correctly (\arg is not what most
people want -- it starts a new paragraph);
* use \param instead of \arg to document parameters in order to be consistent
with the rest of the codebase.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163902 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
egex.h
0067567927b3dad6457158ebc51fedc7ed163cb6 13-Sep-2012 Richard Smith <richard-llvm@metafoo.co.uk> Fix some code which is invalid in C++11: an expression of enumeration type
can't be used as a non-type template argument of type bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163840 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
065c0f800c6ccb889ad55220f8d5e3b0d568d874 13-Sep-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix documentation: parameter being documented was removed in r98220.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163834 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
2d9eb72178af8e79dc6432cd1b7d29bde16da1b9 13-Sep-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix Doxygen issues:
* wrap code blocks in \code ... \endcode;
* refer to parameter names in paragraphs correctly (\arg is not what most
people want -- it starts a new paragraph).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163790 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
argetRegistry.h
hreading.h
aw_ostream.h
36f396e873636ed85618356090b523cd5eba0c8d 13-Sep-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix a doxygen issue: these examples are supposed to be displayed preformatted.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163787 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
67c8978617c3bce9d07210f93f6c64c715f77695 12-Sep-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix a couple of Doxygen comment issues pointed out by -Wdocumentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163721 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
db9ba339b118d89f082c3f7b415ec86405d0258e 12-Sep-2012 Alexander Potapenko <glider@google.com> Suppress the warnings about unused parameters in changeColor()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163714 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1c4ad5ef4fab105f0c8af7edd026e00502fb6279 11-Sep-2012 Stephen Hines <srhines@google.com> Merge branch 'upstream' into merge-2012_09_10

Conflicts:
lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
lib/Support/DynamicLibrary.cpp
lib/Support/LockFileManager.cpp

Change-Id: I91e94c3a7a76e19c688307c5a480a640a3bd2b7e
59324297650c12a8dccf1a7ad650a9e895fdc17e 06-Sep-2012 Roman Divacky <rdivacky@freebsd.org> Stop casting away const qualifier needlessly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163258 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
15515c944a1d36a51d3ab3b910cfdecb2d0717a7 05-Sep-2012 Chad Rosier <mcrosier@apple.com> Clean up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163233 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e20cf3d14997c3511e264748c59687a801caa6ed 04-Sep-2012 Bob Wilson <bob.wilson@apple.com> Make sure macros in the include subdirectory are not used without being defined.

Rationale: For each preprocessor macro, either the definedness is what's
meaningful, or the value is what's meaningful, or both. If definedness is
meaningful, we should use #ifdef. If the value is meaningful, we should use
and #ifdef interchangeably for the same macro, seems ugly to me, even if
undefined macros are zero if used.

This also has the benefit that including an LLVM header doesn't prevent
you from compiling with -Wundef -Werror.

Patch by John Garvin!
<rdar://problem/12189979>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163148 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
ileSystem.h
e4fb6eae9997e80bfedb251ca3251cbed884d4ff 31-Aug-2012 Bill Wendling <isanbard@gmail.com> Move the GCOVFormat enums into their own namespace per the LLVM coding standard.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163008 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
4d69a8c8b2133e441503ac9583c4a6056f52e0f3 30-Aug-2012 Benjamin Kramer <benny.kra@googlemail.com> Explicitly cast an expression to bool before handing it off to __builtin_expect.

Avoids surprises when someone uses LLVM_(UN)LIKELY with an integer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162877 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
55907d1274ce715b92d584e305e0708e333a33c0 30-Aug-2012 Benjamin Kramer <benny.kra@googlemail.com> Replace the BUILTIN_EXPECT macro with a less horrible LLVM_LIKELY/LLVM_UNLIKELY interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162873 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
1144af3c9b4da48cd581156e05b24261c8de366a 25-Aug-2012 Richard Smith <richard-llvm@metafoo.co.uk> Fix integer undefined behavior due to signed left shift overflow in LLVM.
Reviewed offline by chandlerc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162623 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
1a710fdde197b00107ef55df51054925b9a5d2a2 24-Aug-2012 Manman Ren <mren@apple.com> BranchProb: modify the definition of an edge in BranchProbabilityInfo to handle
the case of multiple edges from one block to another.

A simple example is a switch statement with multiple values to the same
destination. The definition of an edge is modified from a pair of blocks to
a pair of PredBlock and an index into the successors.

Also set the weight correctly when building SelectionDAG from LLVM IR,
especially when converting a Switch.
IntegersSubsetMapping is updated to calculate the weight for each cluster.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162572 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
be06428ba3d954662b58d204486771c71c816b94 24-Aug-2012 Chandler Carruth <chandlerc@gmail.com> Try to appease MSVC even more elaborately in the alignment hacking space.

MSVC doesn't support passing by-value parameters with alignment of
16-bytes or higher apparantly. What is deeply confusing is that it seems
to *sometimes* (but not always) apply this to any type whose alignment
is set using __declspec(align(...)). This caused lots of errors when we switch
SmallVector over to use the automatically aligned character array
utilities as they used __declspec(align(...)) heavily.

As a pretty horrible but effective work-around, we instead cherry pick
the smallest alignment sizes with specific types that happen to have the
correct alignment, and then fall back to the attribute solution past
them. This should resolve the MSVC build errors folks have been hitting.
Sorry for that. In good news, it will do this without introducing other
UB I hope. =]

Thanks to Timur Iskhodzhanov for helping me test this!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162549 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
31675153bd2d7617db8cb6aeb58054934c7b9f73 24-Aug-2012 Stephen Hines <srhines@google.com> Merge branch 'upstream' into merge_2

Conflicts:
lib/Target/ARM/ARMCodeEmitter.cpp

Change-Id: I6702d340c733e9721499b5d85b13b96ad9c14eb5
a00b80b04c5edb08639c1c6b32e9231fd8b066f7 23-Aug-2012 Dmitri Gribenko <gribozavr@gmail.com> Fix a bunch of -Wdocumentation warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162446 91177308-0d34-0410-b5e6-96231b3b80d8
ataExtractor.h
athV1.h
athV2.h
ourceMgr.h
imeValue.h
a2ea78f1320c08018e28f82f8fb543fa7b4bb52d 23-Aug-2012 Ted Kremenek <kremenek@apple.com> Fix an assortment of doxygen comment mistakes found by -Wdocumentation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162411 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
athV2.h
imeValue.h
aw_ostream.h
74169b293f2fc8767db3c659fde6b001b7d5075f 21-Aug-2012 David Blaikie <dblaikie@gmail.com> Provide a portability macro for __builtin_trap.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162300 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
734fd27647bbfcf66d26e32fced5e4021dfb67e4 17-Aug-2012 Jin-Gu Kang <jaykang10@imrc.kist.re.kr> Insertion of NoFolder functions to avoid ambiguous overload warnings or errors about whether to convert Idx to ArrayRef<Constant *> or ArrayRef<Value *> like ConstantFolder and TargetFolder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162090 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
cbeb8d9869aafec3c2c1ee0922f0a4d5bb4a916a 17-Aug-2012 Chandler Carruth <chandlerc@gmail.com> Flatten the aligned-char-array utility template to be a directly
templated union at the request of Richard Smith. This makes it
substantially easier to type. =]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162072 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
05b2bc8781d9af403a257599613e12cb8fef19e8 16-Aug-2012 Roman Divacky <rdivacky@freebsd.org> Revert r162034, r162035 and r162037.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162039 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
dd4b9f3fe9980dd0d7741c4e9ec817b330c134fe 16-Aug-2012 Roman Divacky <rdivacky@freebsd.org> Add PPC64 relocations definitions, by Adhemerval Zanella.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162035 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
118f194966d20460c2b1653e06c601e4b66c9b3f 15-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> Properly test the LLVM_USE_RVALUE_REFERENCES macro.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161978 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
1ebd25e438444ae80ec3d9504fe2173b8306501d 15-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> [PathV2] Add mapped_file_region. Implementation for Windows and POSIX.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161976 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
b9d565ac998fc857b20786bae08bb30719eb966b 15-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> Add LLVM_DELETED_FUNCTION compatibility macro.

This should replace uses of:

class A {
A(const &A); // DO NOT IMPLEMENT
public:
...
};

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161975 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
32bab64eec9aae19c1ca159472fba17b6db8538a 15-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> [yaml2obj] Fix incorrect use of signed values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161900 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
fc1a161d76f5cc0204bed3bce3e27cf36ac76d22 14-Aug-2012 Jim Grosbach <grosbach@apple.com> Switch the fixed-length disassembler to be table-driven.

Refactor the TableGen'erated fixed length disassemblmer to use a
table-driven state machine rather than a massive set of nested
switch() statements.

As a result, the ARM Disassembler (ARMDisassembler.cpp) builds much more
quickly and generates a smaller end result. For a Release+Asserts build on
a 16GB 3.4GHz i7 iMac w/ SSD:

Time to compile at -O2 (averaged w/ hot caches):
Previous: 35.5s
New: 8.9s

TEXT size:
Previous: 447,251
New: 297,661

Builds in 25% of the time previously required and generates code 66% of
the size.

Execution time of the disassembler is only slightly slower (7% disassembling
10 million ARM instructions, 19.6s vs 21.0s). The new implementation has
not yet been tuned, however, so the performance should almost certainly
be recoverable should it become a concern.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161888 91177308-0d34-0410-b5e6-96231b3b80d8
EB128.h
7b6783a03f16376e8e2d0d9791f090ef32727c8f 14-Aug-2012 Nadav Rotem <nrotem@apple.com> LICM uses AliasSet information to hoist and sink instructions. However, other passes, such as LoopRotate
may invalidate its AliasSet because SSAUpdater does not update the AliasSet properly.
This patch teaches SSAUpdater to notify AliasSet that it made changes.
The testcase in PR12901 is too big to be useful and I could not reduce it to a normal size.

rdar://11872059 PR12901



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161803 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
2d39a0e52df9ce050bd4e2de3a2ecca8fd9a87c3 09-Aug-2012 Jim Grosbach <grosbach@apple.com> Move [SU]LEB128 encoding to a utility header.

These functions are very generic. There's no reason for them to
be tied to MCObjectWriter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161545 91177308-0d34-0410-b5e6-96231b3b80d8
EB128.h
ba7b890d0b8ca554fac24d24f8c17cb93adc3abc 08-Aug-2012 Bill Wendling <isanbard@gmail.com> Remove OpenBSD defines:

- The defines are in stddint.h, which is #include'd already.
- The block wasn't used anyway, since it was _OpenBSD_, and not __OpenBSD__

Patch by David Hill!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161515 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
7744acd1ab73b3eec6f1449f47083abe3fb1b527 03-Aug-2012 Shih-wei Liao <sliao@google.com> Merge with LLVM upstream r160668 (Jul 24th 2012)

Conflicts:
include/llvm/Support/ELF.h
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/Support/Memory.cpp
lib/Transforms/Instrumentation/AddressSanitizer.cpp

Change-Id: Iddd658cf2eadc7165b2805b446d31af2c5c9917f
a915f247f72570a994d55cd0d2961cd2d7bbd0e1 02-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> Add yaml2obj. A utility to convert YAML to binaries.

yaml2obj takes a textual description of an object file in YAML format
and outputs the binary equivalent. This greatly simplifies writing
tests that take binary object files as input.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161205 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
adfe2637b839efe041165f27c9ad57e3befb2be0 01-Aug-2012 Nick Kledzik <kledzik@apple.com> Initial commit of new FileOutputBuffer support class.
Since the llvm::sys::fs::map_file_pages() support function it relies on
is not yet implemented on Windows, the unit tests for FileOutputBuffer
are currently conditionalized to run only on unix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161099 91177308-0d34-0410-b5e6-96231b3b80d8
ileOutputBuffer.h
5eb301740c4ee5d978535caa917cc004733a7fca 31-Jul-2012 Chandler Carruth <chandlerc@gmail.com> Extend the InstVisitor to visit the specialized classes wrapping
CallInst for intrinsics. This allows users of the InstVisitor that would
like to special case certain very common intrinsics to do so naturally
in keeping with the type hierarchy's utility classes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161006 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
21edb397b27d4501bca932cf5fce036f4f3c9473 27-Jul-2012 Chad Rosier <mcrosier@apple.com> Typos.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160897 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
ad2b592cf95e5db34a48c6e2c9b1fe55405355fb 26-Jul-2012 Chad Rosier <mcrosier@apple.com> Make comments in Debug.cpp and Debug.h consistent. Rename SetCurrentDebugType;
Function names should be camel case, and start with a lower case letter. No
functional change intended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160813 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
c8e41c591741b3da1077f7000274ad040bef8002 23-Jul-2012 Sylvestre Ledru <sylvestre@debian.org> Fix a typo (the the => the)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160621 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
aw_ostream.h
428ff6a6445ac1a0d263776cb0301f77f1454286 20-Jul-2012 Galina Kistanova <gkistanova@gmail.com> Fix few warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160576 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
d79637b940dfbcdc0b7c702d9655491ecca9d93d 20-Jul-2012 Daniel Dunbar <daniel@zuster.org> raw_ostream: Add a has_colors() method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160558 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7d83658140cb99871a43a08715a45c84aa66f3cc 20-Jul-2012 Daniel Dunbar <daniel@zuster.org> Process: Add sys::Process::FileDescriptorHasColors().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160557 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
4cdd17ef47e71f34f9fc50caf78c51b9c7105ed1 19-Jul-2012 Benjamin Kramer <benny.kra@googlemail.com> Pull the simple parts of DenseMapInfo<DebugLoc> inline and prune includes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160507 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
72ea0c9ffaa1700730c8ce36e9b73aef4b914988 19-Jul-2012 Galina Kistanova <gkistanova@gmail.com> Fixed few warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160493 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
17689b13be2f3f6e56c3a9dc3bc6193b7c732abc 19-Jul-2012 Bill Wendling <isanbard@gmail.com> Remove tabs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160472 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
achO.h
6aef977e85d5ff2ae1f8b78a62db0762e82595a5 18-Jul-2012 Simon Atanasyan <satanasyan@mips.com> Add some missed ELF constants definitions:
- section types
- dynamic table entries tags
- state flags for DT_FLAGS_1 entry

The patch reviewed by Rafael Espindola.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160433 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
7f57ba71d8512278cbf5fa70e478a5458b36407b 17-Jul-2012 Shih-wei Liao <sliao@google.com> Add ELF constants for MCLinker.

For dynamic sections and -z options.

Change-Id: Ic324caef95810cd0882a4ba88189cb1204752287
LF.h
38f488e46292e38c776dd6ec3e3a0b8c57952fcb 16-Jul-2012 Chandler Carruth <chandlerc@gmail.com> Move llvm/Support/TypeBuilder.h -> llvm/TypeBuilder.h. This completes
the move of *Builder classes into the Core library.

No uses of this builder in Clang or DragonEgg I could find.

If there is a desire to have an IR-building-support library that
contains all of these builders, that can be easily added, but currently
it seems likely that these add no real overhead to VMCore.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160243 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
0baa4809a8de135a6a7abe9cd78a86f208c99164 16-Jul-2012 Chandler Carruth <chandlerc@gmail.com> Move llvm/Support/MDBuilder.h to llvm/MDBuilder.h, to live with
IRBuilder, DIBuilder, etc.

This is the proper layering as MDBuilder can't be used (or implemented)
without the Core Metadata representation.

Patches to Clang and Dragonegg coming up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160237 91177308-0d34-0410-b5e6-96231b3b80d8
DBuilder.h
1561cee168aa1fa1262ff89a996edec5533d2fc1 13-Jul-2012 Alexander Kornienko <alexfh@google.com> Initializers for some fields were missing in Option::Option


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160170 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
367783223d6e3d1a421041a539172abc984b9684 08-Jul-2012 Benjamin Kramer <benny.kra@googlemail.com> Remove some trivial copy ctors so the classes become trivially copyable and get the optimized SmallVector implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159916 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
d8a627b33bdd3dec806a2fe8c699c1e9896675c6 06-Jul-2012 Dmitri Gribenko <gribozavr@gmail.com> Revert r159789.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159834 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
0da21789b3b1b51dbdf3e6ea5682a8508e747ca9 06-Jul-2012 Dmitri Gribenko <gribozavr@gmail.com> Enable new[] on llvm::BumpPtrAllocator.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159789 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
b163a21940afb639bc8bb57810d48cfc116ea931 04-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Reverted r159658:
Optimized diff operation: implemented the case when LHS and RHS subsets contains single numbers only.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159704 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
66d79cefcb742bdbfef8823ac8491a7ebc4af5a7 04-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Reverted r156659, due to probable performance regressions, DenseMap should be used here:
IntegersSubsetMapping
- Replaced type of Items field from std::list with std::map. In neares future I'll test it with DenseMap and do the correspond replacement
if possible.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159703 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
9ccc83e7f70e63b746cbc7eef9fb06022e758677 03-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntegersSubsetMappin: cosmetic changes in diff operation.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159661 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
2e2a15e26b78a0958ccbac66a03850852721b9cf 03-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Part of r159527. Splitted into series of patches and gone with fixed PR13256:
IntegersSubsetMapping
Added new methods
- add(self& RHS, SuccessorClass *S)
- detachCase
- removeCase
- findSuccessor
- getCases
- getCaseSingleNumber
- isOverlapped



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159660 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
6a590737355e82d83729198715e3fff11b0c6f9e 03-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Part of r159527. Splitted into series of patches and gone with fixed PR13256:
IntegersSubsetMapping
- Replaced type of Items field from std::list with std::map. In neares future I'll test it with DenseMap and do the correspond replacement
if possible.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159659 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
181e0bdafaf33524a9a7f082caf5459615f4ab30 03-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Part of r159527. Splitted into series of patches and gone with fixed PR13256:
Optimized diff operation: implemented the case when LHS and RHS subsets contains single numbers only.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159658 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
c723eb1aef817d47feec620933ee1ec6005cdd14 03-Jul-2012 Eric Christopher <echristo@apple.com> Revert "IntRange:" as it appears to be breaking self hosting.

This reverts commit b2833d9dcba88c6f0520cad760619200adc0442c.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159618 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
ebcaa3cd97bf48c4c56dcf9aab5e9a7df85969ed 02-Jul-2012 David Blaikie <dblaikie@gmail.com> Fix -Wstring-conversion warning.

Patch by Matt Beaumont-Gay.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159583 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
7c3a65c7edceb3a013cf49d376c3bc016eb871bf 02-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Fixed switch in IntRange::isSingleNumber method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159540 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
dbd0f69e546bbf29e4bebb5618acb321365dd4f5 02-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntRange, fixed warning in isSingleNumber method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159532 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
b2833d9dcba88c6f0520cad760619200adc0442c 02-Jul-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntRange:
- Changed isSingleNumber method behaviour. Now this flag is calculated on demand.
IntegersSubsetMapping
- Optimized diff operation.
- Replaced type of Items field from std::list with std::map.
- Added new methods:
bool isOverlapped(self &RHS)
void add(self& RHS, SuccessorClass *S)
void detachCase(self& NewMapping, SuccessorClass *Succ)
void removeCase(SuccessorClass *Succ)
SuccessorClass *findSuccessor(const IntTy& Val)
const IntTy* getCaseSingleNumber(SuccessorClass *Succ)
IntegersSubsetTest
- DiffTest: Added checks for successors.
SimplifyCFG
Updated SwitchInst usage (now it is case-ragnes compatible) for
- SimplifyEqualityComparisonWithOnlyPredecessor
- FoldValueComparisonIntoPredecessors



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159527 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
06cb8ed00696eb14d1b831921452e50ec0568ea2 29-Jun-2012 Chandler Carruth <chandlerc@gmail.com> Move llvm/Support/IRBuilder.h -> llvm/IRBuilder.h

This was always part of the VMCore library out of necessity -- it deals
entirely in the IR. The .cpp file in fact was already part of the VMCore
library. This is just a mechanical move.

I've tried to go through and re-apply the coding standard's preferred
header sort, but at 40-ish files, I may have gotten some wrong. Please
let me know if so.

I'll be committing the corresponding updates to Clang and Polly, and
Duncan has DragonEgg.

Thanks to Bill and Eric for giving the green light for this bit of cleanup.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159421 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
62d7afad8faf7a1fbbf3402f8e23ce4ece9ab108 28-Jun-2012 Nuno Lopes <nunoplopes@sapo.pt> add ConstantRange::difference (to perform set difference/relative complement)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159352 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
b787d41959163f6104af7b34a5ce719210dfb72f 26-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntegersSubsetMapping: implemented "diff" operation. Operation allows at the same time perform up to three operations:
- LHS exclude RHS
- LHS intersect RHS (LHS successors will keeped)
- RHS exclude LHS
The complexity is N+M, where
N is size of LHS
M is size of RHS.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159201 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
0f7a7bcd4820eee293f9300769e1ef4c1cbc1c7c 26-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntegersSubsetMapping: removed exclude operation, it will replaced with more universal "diff" operation in next commit.
Changes was separated onto two commits for better readability.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159200 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
986da6c3fdce52082288094f592e60ba165ae71c 25-Jun-2012 Nuno Lopes <nunoplopes@sapo.pt> add CallSite/CallInst/InvokeInst::hasFnAttr()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159144 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6656afb31a517944accc52a364fb5d1b98bffb4f 25-Jun-2012 Chandler Carruth <chandlerc@gmail.com> Just remove generic support for C++11 alignas -- GCC is already
advertising complete support w/o alignas implemented, and its
implementation of alignas in the latest versions is so convoluted as to
be unusable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159125 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
653bbb494bd4c9737c6efa76b6176f6ede89a391 24-Jun-2012 NAKAMURA Takumi <geek4civic@gmail.com> llvm/Support/IntegersSubset.h: Add a copy constructor on IntegersSubset to appease msvc.

msvc mis-infers ParentTy(RHS) to (const RangesCollectionTy &).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159101 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
19dc8e374a8fd86878ee8f34ff07a8c4645b075f 24-Jun-2012 NAKAMURA Takumi <geek4civic@gmail.com> llvm/Support/IntegersSubset.h: Fix whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159100 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
50b4c52633b0c933aabcd0741d1dae751ba339dd 23-Jun-2012 Marshall Clow <mclow@qualcomm.com> Add relocation types for Hexagon processor; patch by Sidney Manning <sidneym@codeaurora.org>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159081 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
43c3a4a7e76920c5646e473b72620acc7eb4ca5a 22-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Fixed r158979.
Original message:
Performance optimizations:
- SwitchInst: case values stored separately from Operands List. It allows to make faster access to individual case value numbers or ranges.
- Optimized IntItem, added APInt value caching.
- Optimized IntegersSubsetGeneric: added optimizations for cases when subset is single number or when subset consists from single numbers only.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158997 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
37eeb058a30200101836d82098542d3d2fc4f3d5 22-Jun-2012 Duncan Sands <baldrick@free.fr> Revert commit 158979 (dyatkovskiy) since it is causing several buildbots to
fail. Original commit message:

Performance optimizations:
- SwitchInst: case values stored separately from Operands List. It allows to make faster access to individual case value numbers or ranges.
- Optimized IntItem, added APInt value caching.
- Optimized IntegersSubsetGeneric: added optimizations for cases when subset is single number or when subset consists from single numbers only.

On my machine these optimizations gave about 4-6% of compile-time improvement.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158986 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
7351256208c9ff2cb7b5bdcf4427229abe2a50a8 22-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Performance optimizations:
- SwitchInst: case values stored separately from Operands List. It allows to make faster access to individual case value numbers or ranges.
- Optimized IntItem, added APInt value caching.
- Optimized IntegersSubsetGeneric: added optimizations for cases when subset is single number or when subset consists from single numbers only.

On my machine these optimizations gave about 4-6% of compile-time improvement.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158979 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
305b515c2787f47adecbe120e4b4bef55c5e5525 20-Jun-2012 Chandler Carruth <chandlerc@gmail.com> Remove 'static' from inline functions defined in header files.

There is a pretty staggering amount of this in LLVM's header files, this
is not all of the instances I'm afraid. These include all of the
functions that (in my build) are used by a non-static inline (or
external) function. Specifically, these issues were caught by the new
'-Winternal-linkage-in-inline' warning.

I'll try to just clean up the remainder of the clearly redundant "static
inline" cases on functions (not methods!) defined within headers if
I can do so in a reliable way.

There were even several cases of a missing 'inline' altogether, or my
personal favorite "static bool inline". Go figure. ;]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158800 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
ndian.h
athExtras.h
ca077ec5ea41f4537ae58e141781be622d09c786 20-Jun-2012 Nick Kledzik <kledzik@apple.com> Add permissions(), map_file_pages(), and unmap_file_pages() to llvm::sys::fs and add unit test. Unix is implemented. Windows side needs to be implemented.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158770 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
585de7a1b1a51fa29b53bbc8faf3cc07e43bd993 16-Jun-2012 Chandler Carruth <chandlerc@gmail.com> Add support to the alignment support header for conjuring a character
array of a suitable size and alignment for any of a number of different
types to be stored into the character array.

The mechanisms for producing an explicitly aligned type are fairly
complex because this operation is poorly supported on all compilers.
We've spent a fairly significant amount of time experimenting with
different implementations inside of Google, and the one using explicitly
expanded templates has been the most robust.

Credit goes to Nick Lewycky for writing the first 20 versions or so of
this logic we had inside of Google. I based this on the only one to
actually survive. In case anyone is worried, yes we are both explicitly
re-contributing and re-licensing it for LLVM. =]

Once the issues with actually specifying the alignment are finished, it
turns out that most compilers don't in turn align anything the way they
are instructed. Testing of this logic against both Clang and GCC
indicate that the alignment constraints are largely ignored by both
compilers! I've come up with and used a work-around by wrapping each
alignment-hinted type directly in a struct, and using that struct to
align the character array through a union. This elaborate hackery is
terrifying, but I've included testing that caught a terrifying number of
bugs in every other technique I've tried.

All of this in order to implement a poor C++98 programmers emulation of
C++11 unrestricted unions in classes such as SmallDenseMap.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158597 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
b9c592f4c554888c095863cf1e7cda350a371b6c 12-Jun-2012 David Blaikie <dblaikie@gmail.com> Remove use of GNU extension to resolve Clang warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158364 91177308-0d34-0410-b5e6-96231b3b80d8
hreadLocal.h
3e61374295693beb0a899af44ccf4b5085dffbf3 12-Jun-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> Satisfy C++ aliasing rules, per suggestion by Chandler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158346 91177308-0d34-0410-b5e6-96231b3b80d8
hreadLocal.h
793537d21f8aa46458a5733d96816ba8bddeef50 12-Jun-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> For llvm::sys::ThreadLocalImpl instead of malloc'ing the platform-specific
thread local data, embed them in the class using a uint64_t and make sure
we get compiler errors if there's a platform where this is not big enough.

This makes ThreadLocal more safe for using it in conjunction with CrashRecoveryContext.

Related to crash in rdar://11434201.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158342 91177308-0d34-0410-b5e6-96231b3b80d8
hreadLocal.h
77592fe39c404f3c48b06fae48b965058b3a5ee8 09-Jun-2012 Dmitri Gribenko <gribozavr@gmail.com> Convert comments to proper Doxygen comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158248 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
AMLParser.h
5d59b0b38ea2b6f1860fe1e741fbaf1d7457c0b8 05-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntegersSubsetMapping: added exclude operation, that allows to exclude subset of integers from current mapping.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157989 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubsetMapping.h
20cb4919cd01967b11b0b468fd43167b263ed028 05-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> IntegersSubsetMapping:
Changed type of Items collection: from std::vector to std::list.
Also some small fixes made in IntegersSubset.h, IntegersSubsetMapping.h and IntegersSubsetTest.cpp.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157987 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
13776d3fc80e3d5936ecba3a3dc0b20299cf0b6e 03-Jun-2012 NAKAMURA Takumi <geek4civic@gmail.com> IntRange: Restore the copy constuctor explicitly to appase buildbot.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157901 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
31219d2cec17dca632b6d047a15e86dc92b76e18 02-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Added unittests for IntegersSubset and IntegersSubsetMapping.
- Fixed IntegersSubsetGeneric copy/assignment behaviour.
- Fixed IntegersSubsetGeneric::getSize/getSingleValue methods.
- Fixed IntegersSubsetGeneric::verify method.

Also IntegersSubset.h and IntegersSubsetMapping.h headers was fixed.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157887 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
d9b0b025612992a0b724eeca8bdf10b1d7a5c355 02-Jun-2012 Benjamin Kramer <benny.kra@googlemail.com> Fix typos found by http://github.com/lyda/misspell-check

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157885 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
43eb31bfae470b33bab9a6764b98b5e8a0beeda5 02-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: case ranges.
IntRange converted from struct to class. So main change everywhere is replacement of ".Low/High" with ".getLow/getHigh()"



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157884 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
4524dd7518288f3d49bcaf31cff27cb82462c79c 02-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Additional change for 157881. Forget to fix another IntegerSubset constructor.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157882 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
e2c53188ea8b01ca3d91b91c42faa5aa07ba4b70 02-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Small fix due to buildbot failures on mingw32. Fixed call of parent constructor for case when parent is template.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157881 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
4319a552ac98137d511341905711293d541f15e7 02-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: case ranges.
IntegersSubsetGeneric, IntegersSubsetMapping: added IntTy template parameter, that allows use either APInt or IntItem. This change allows to write unittest for these classes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157880 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
6bb5c0074dc4cede2ad8efd420ec91288f91b012 01-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: case ranges.
IntegersSubset devided into IntegersSubsetGeneric and into IntegersSubset itself. The first has no references to ConstantInt and works with IntItem only.
IntegersSubsetMapping also made generic. Here added second template parameter "IntegersSubsetTy" that allows to use on of two IntegersSubset types described below.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157815 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
b778179b86e930a07ce06a9018396ae434540360 01-Jun-2012 Benjamin Kramer <benny.kra@googlemail.com> Remove noisy semicolons.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157814 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
f8d14c4ca3874890cfd8867d9557efca9511c98f 01-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: case ranges.
IntItem cleanup. IntItemBase, IntItemConstantIntImp and IntItem merged into IntItem. All arithmetic operators was propogated from APInt. Also added comparison operators <,>,<=,>=. Currently you will find set of macros that propogates operators from APInt to IntItem in the beginning of IntegerSubset. Note that THESE MACROS WILL REMOVED after all passes will case-ranges compatible. Also note that these macros much smaller pain that something like this:
if (V->getValue().ugt(AnotherV->getValue()) { ... }

These changes made IntItem full featured integer object. It allows to make IntegerSubset class generic (move out all ConstantInt references inside and add unit-tests) in next commits.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157810 91177308-0d34-0410-b5e6-96231b3b80d8
ntegersSubset.h
ntegersSubsetMapping.h
0aa32d5d0ff6cd65b6cff957858a79e2d2a614bd 29-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> ConstantRangesSet renamed to IntegersSubset. CRSBuilder renamed to IntegersSubsetMapping.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157612 91177308-0d34-0410-b5e6-96231b3b80d8
RSBuilder.h
onstantRangesSet.h
ntegersSubset.h
ntegersSubsetMapping.h
484fc93eff0295b1aa52b9a64d22346580e4b0e2 28-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: Case Ranges
Implemented IntItem - the wrapper around APInt. Why not to use APInt item directly right now?
1. It will very difficult to implement case ranges as series of small patches. We got several large and heavy patches. Each patch will about 90-120 kb. If you replace ConstantInt with APInt in SwitchInst you will need to changes at the same time all Readers,Writers and absolutely all passes that uses SwitchInst.
2. We can implement APInt pool inside and save memory space. E.g. we use several switches that works with 256 bit items (switch on signatures, or strings). We can avoid value duplicates in this case.
3. IntItem can be easyly easily replaced with APInt.
4. Currenly we can interpret IntItem both as ConstantInt and as APInt. It allows to provide SwitchInst methods that works with ConstantInt for non-updated passes.

Why I need it right now? Currently I need to update SimplifyCFG pass (EqualityComparisons). I need to work with APInts directly a lot, so peaces of code
ConstantInt *V = ...;
if (V->getValue().ugt(AnotherV->getValue()) {
...
}
will look awful. Much more better this way:
IntItem V = ConstantIntVal->getValue();
if (AnotherV < V) {
}

Of course any reviews are welcome.

P.S.: I'm also going to rename ConstantRangesSet to IntegersSubset, and CRSBuilder to IntegersSubsetMapping (allows to map individual subsets of integers to the BasicBlocks).
Since in future these classes will founded on APInt, it will possible to use them in more generic ways.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157576 91177308-0d34-0410-b5e6-96231b3b80d8
RSBuilder.h
onstantRangesSet.h
937338cf64350a7d05d0c956dc8e8564e959cb7b 26-May-2012 Benjamin Kramer <benny.kra@googlemail.com> Add support for branch weight metadata to MDBuilder and use it in various places.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157515 91177308-0d34-0410-b5e6-96231b3b80d8
DBuilder.h
1c8f4b8c34a75e184ec40251225c2699efecedac 21-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255 (case ranges: work with ConstantRangesSet instead of ConstantInt) related changes for Execution and Verifier.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157183 91177308-0d34-0410-b5e6-96231b3b80d8
RSBuilder.h
4e4c3408a5a1cc72b739a4b448329a281c379c55 19-May-2012 Benjamin Kramer <benny.kra@googlemail.com> Move CallbackVHs dtor inline, it can be devirtualized in many cases. Move the other virtual methods out of line as they are only called from within Value.cpp anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157123 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
18e2f6e94cf9dc48bfc6dfa3848971aa88e334da 18-May-2012 Nick Kledzik <kledzik@apple.com> fix warnings when compiling with -Wshadow

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157061 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
MLoc.h
ourceMgr.h
68ef0382e4efe4a4c06e47a53a275b873ba0cff4 17-May-2012 Evandro Menezes <emenezes@codeaurora.org> [Hexagon] Clean up Hexagon ELF definition.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156996 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
719daba3e01531c6947f07d351550e7ec0a3f0b9 16-May-2012 Daniel Dunbar <daniel@zuster.org> [Support] Add a version of sys::fs::equivalent() that treats errors as false.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156864 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
918f55fe239f00651e396be841f2b3b6e242f98d 15-May-2012 Jim Grosbach <grosbach@apple.com> Allow MCCodeEmitter access to the target MCRegisterInfo.

Add the MCRegisterInfo to the factories and constructors.

Patch by Tom Stellard <Tom.Stellard@amd.com>.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156828 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
752026b69eb265750ca31f345579a4855c02d493 15-May-2012 Michael J. Spencer <bigcheesegs@gmail.com> [Support/COFF] Make the order of members in symbol match the standard.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156785 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
1cce5bf8ef9ee3dc157ae5d8778f84a7a0d1d8b9 12-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Recommited r156374 with critical fixes in BitcodeReader/Writer:
Ordinary patch for PR1255.
Added new case-ranges orientated methods for adding/removing cases in SwitchInst. After this patch cases will internally representated as ConstantArray-s instead of ConstantInt, externally cases wrapped within the ConstantRangesSet object.
Old methods of SwitchInst are also works well, but marked as deprecated. So on this stage we have no side effects except that I added support for case ranges in BitcodeReader/Writer, of course test for Bitcode is also added. Old "switch" format is also supported.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156704 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRangesSet.h
cb7a5f5f577e9477f6d5e3d0fa1558c4f229c1a6 11-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: ConstantRangesSet and CRSBuilder classes moved from include/llvm to include/llvm/Support.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156613 91177308-0d34-0410-b5e6-96231b3b80d8
RSBuilder.h
onstantRangesSet.h
61aef8bdf7a60bb1ab510fee0c5b2792468aadd3 11-May-2012 Eric Christopher <echristo@apple.com> Allow unique_file to take a mode for file permissions, but default
to user only read/write.

Part of rdar://11325849

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156591 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
9ed9e5d0f994c7721185eba963ea9b907dabcde6 09-May-2012 Kevin Enderby <enderby@apple.com> Fix it so llvm-objdump -arch does accept x86 and x86-64 as valid arch names.
PR12731. Patch by Meador Inge!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156444 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
86062e6782798cb52a79fce22c1e4371148f120d 07-May-2012 John McCall <rjmccall@apple.com> Fix trivial typo in llvm_move.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156288 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
77eafd940a2fcbecbd82e1a649b7f081cb4a3d4a 06-May-2012 Chris Lattner <sabre@nondot.org> reapply my patch, with a fix for an off-by-one error. Turned out to be a lot
of work for a drive-by fix :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156246 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
c18e6d937526dfc45a7b57d56ed1120f6a309fc2 06-May-2012 Chris Lattner <sabre@nondot.org> revert my patches, which are causing problems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156245 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
b3a6194ebabbab1ef6db5603e958228cf723ab1b 06-May-2012 Chris Lattner <sabre@nondot.org> add missing header <shame>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156244 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
9c69e6ae698f44703725eec8ff27630b6b81f0e3 05-May-2012 Daniel Dunbar <daniel@zuster.org> [Support] Add sys::Process::GetRandomNumber().
- Primitive API, but we rarely have need for random numbers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156237 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
38dbb606755232e229f11994fc2bbf10e8c5788b 02-May-2012 John McCall <rjmccall@apple.com> Update SmallVector to support move semantics if the host does.
Note that support for rvalue references does not imply support
for the full set of move-related STL operations.

I've preserved support for an odd little thing in insert() where
we're trying to support inserting a new element from an existing
one. If we actually want to support that, there's a lot more we
need to do: insert can call either grow or push_back, neither of
which is safe against this particular use pattern.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155979 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
34df1600e003bf83678b308f7aa63522dfbd4f4a 01-May-2012 Benjamin Kramer <benny.kra@googlemail.com> YAMLParser: get rid of global ctors & dtors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155907 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
18883037a98240a7831c0d7c01dbe502fc5cfbd9 28-Apr-2012 Benjamin Kramer <benny.kra@googlemail.com> If the __is_trivially_copyable type trait is available use it as the baseline for isPodLike.

This way we can enable the POD-like class optimization for a lot more classes,
saving ~120k of code in clang/i386/Release+Asserts when selfhosting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155761 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
cf5a1461acaace0f3e7d11fbbcfbf635b8c8ea9d 24-Apr-2012 Shih-wei Liao <sliao@google.com> Merge with LLVM upstream r155090.

Conflicts:
lib/Support/Unix/PathV2.inc

Change-Id: I7b89833849f6cbcfa958a33a971d0f7754c9cb2c
9dc06bd431c826f068a5217718e2171303782f7a 23-Apr-2012 Sylvestre Ledru <sylvestre@debian.org> Conflict with st_dev/st_ino identifiers under Debian GNU/Hurd

The problem is that the struct file_status on UNIX systems has two
members called st_dev and st_ino; those are also members of the
struct stat, and they are reserved identifiers which can also be
provided as #define (and this is the case for st_dev on Hurd).
The solution (attached) is to rename them, for example adding a
"fs_" prefix (= file status) to them.

Patch by Pino Toscano




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155354 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
c61382b7633cf4ff5b967ac9575c3121418afc04 21-Apr-2012 Eric Christopher <echristo@apple.com> Extraneous semicolon.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155247 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
89f33fdb774da54d2040ec6e5e2f4a4e4e3a25b0 18-Apr-2012 Benjamin Kramer <benny.kra@googlemail.com> SourceMgr: Colorize diagnostics.

Same color scheme as clang uses. The colors are only enabled if the output is a tty.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155035 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
fdc97cd2c332e5544bd99cefa4070329cc8bf668 17-Apr-2012 Seth Cantrell <seth.cantrell@gmail.com> platform support for counting column widths and checking isprint

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154944 91177308-0d34-0410-b5e6-96231b3b80d8
ocale.h
61c3d3001515619ce112ae6e26b7d127a4db1b1c 17-Apr-2012 Manuel Klimek <klimek@google.com> Goodbye, JSONParser...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154930 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
388774c02a249a2846d7b470cdd8981e44edaf1d 17-Apr-2012 Manuel Klimek <klimek@google.com> Adding operator== for document_iterator.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154927 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
2867c85a3754320f96e36afb63325bb76269caa4 16-Apr-2012 Duncan Sands <baldrick@free.fr> Remove support for the special 'fast' value for fpmath accuracy for the moment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154850 91177308-0d34-0410-b5e6-96231b3b80d8
DBuilder.h
8883c43ddc13e5f92ba8dfe00f2116a153a570d5 16-Apr-2012 Duncan Sands <baldrick@free.fr> Make it possible to indicate relaxed floating point requirements at the IR level
through the use of 'fpmath' metadata. Currently this only provides a 'fpaccuracy'
value, which may be a number in ULPs or the keyword 'fast', however the intent is
that this will be extended with additional information about NaN's, infinities
etc later. No optimizations have been hooked up to this so far.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154822 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
DBuilder.h
0b36bb37d0616bd805e888e8f6bed3ed780d3071 16-Apr-2012 Duncan Sands <baldrick@free.fr> Remove the methods for attaching metadata to instructions/retrieving metadata
from instructions. Chandler doesn't like them being here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154813 91177308-0d34-0410-b5e6-96231b3b80d8
DBuilder.h
656dc6260654a7fa29d223bcaf6aae048669c72d 16-Apr-2012 Duncan Sands <baldrick@free.fr> Add convenience methods to MDBuilder for attaching metadata to instructions,
and retrieving it from instructions. I don't have a use for this but is seems
logical for it to exist. While there, remove some 'const' markings from methods
which are in fact 'const' in practice, but aren't logically 'const'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154811 91177308-0d34-0410-b5e6-96231b3b80d8
DBuilder.h
246de858e37a989a9cdf9b80d7434453b2c52e70 16-Apr-2012 Benjamin Kramer <benny.kra@googlemail.com> Reapply 'Add reverseColor to raw_ostream'.

To be used in printing unprintable source in clang diagnostics.
Patch by Seth Cantrell, with a minor fix for mingw by me.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154805 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
aw_ostream.h
c9413c745bec9707064211bc5fd02cdfb153c92d 16-Apr-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> Revert r154800 which breaks windows builders.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154802 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
aw_ostream.h
7d31d75a77bb7a5a47f21d4c311ba13be86caa6f 16-Apr-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> Add reverseColor to raw_ostream.

To be used in printing unprintable source in clang diagnostics.
Patch by Seth Cantrell!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154800 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
aw_ostream.h
e747fadedf8c5b80f1a0d5e84078a4428e06098e 15-Apr-2012 Duncan Sands <baldrick@free.fr> Add the MDBuilder helper class for conveniently creating metadata.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154766 91177308-0d34-0410-b5e6-96231b3b80d8
DBuilder.h
34797136cb9fa9f450c0e1c47983482083979dd4 08-Apr-2012 Chandler Carruth <chandlerc@gmail.com> Move the TLSModel information into the TargetMachine rather than hiding
in TargetLowering. There was already a FIXME about this location being
odd. The interface is simplified as a consequence. This will also make
it easier to change TLS models when compiling with PIE.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154292 91177308-0d34-0410-b5e6-96231b3b80d8
odeGen.h
5252c432dd93147fa70a536be58a15ef329de0b7 08-Apr-2012 Bill Wendling <isanbard@gmail.com> Allow subclasses of the ValueHandleBase to store information as part of the
value pointer by making the value pointer into a pointer-int pair with 2 bits
available for flags.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154279 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
4e58263459d7f9ae862b52adafe585b66411272f 06-Apr-2012 Benjamin Kramer <benny.kra@googlemail.com> DenseMap: Perform the pod-like object optimization when the value type is POD-like, not the DenseMapInfo for it.

Purge now unused template arguments. This has been broken since r91421. Patch by Lubos Lunak!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154170 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
42730cec0b6b19986bf83db2490f70de8c8139fa 06-Apr-2012 Kaelyn Uhrain <rikka@google.com> Fix the build breakage introduced by r154131.

The empty 1-argument operator delete is for the benefit of the
destructor. A couple of spot checks of running yaml-bench under
valgrind against a few of the files under test/YAMLParser did
not reveal any leaks introduced by this change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154137 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
10d8971c00ecf4ec4750ecba7faf94651ec18a3a 06-Apr-2012 Kaelyn Uhrain <rikka@google.com> Really fix -Wnon-virtual-dtor warnings; gcc needs the dtors to be
explicitly marked as virtual.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154131 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
68f404d890cf5be94a7a818f4215bbff64598a45 05-Apr-2012 Michael J. Spencer <bigcheesegs@gmail.com> Fix -Wnon-virtual-dtor warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154063 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
a95b4ebf3c17f0069b8cea3841d66395eaf6d4e1 04-Apr-2012 Benjamin Kramer <benny.kra@googlemail.com> Move yaml::Stream's dtor out of line so it can see Scanner's dtor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154004 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
c35146b7254900b34ecad51fb71f9478360ca0b9 04-Apr-2012 Michael J. Spencer <bigcheesegs@gmail.com> Sorry about that. MSVC seems to accept just about any random string you give it ;/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153979 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
93210e847a1496b24cef881723e57c489082dcfe 04-Apr-2012 Michael J. Spencer <bigcheesegs@gmail.com> Add YAML parser to Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153977 91177308-0d34-0410-b5e6-96231b3b80d8
AMLParser.h
a551a48402385cf3f4b754dc72264b2f0974b1a6 02-Apr-2012 Akira Hatanaka <ahatanaka@mips.com> Initial 64 bit direct object support.

This patch allows llvm to recognize that a 64 bit object file is being produced
and that the subsequently generated ELF header has the correct information.

The test case checks for both big and little endian flavors.

Patch by Jack Carter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153889 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
17463b3ef1a3d39b10619254f12e806c8c43f9e7 02-Apr-2012 Craig Topper <craig.topper@gmail.com> Make MCInstrInfo available to the MCInstPrinter. This will be used to remove getInstructionName and the static data it contains since the same tables are already in MCInstrInfo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153860 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
7384530c7cb1e0f747afa0a076dc7a9c13106518 31-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Add support to the InstVisitor for visiting a generic callsite. The
visitor will now visit a CallInst and an InvokeInst with
instruction-specific visitors, then visit a generic CallSite visitor,
then delegate back to the Instruction visitor and the TerminatorInst
visitors depending on whether a call or an invoke originally. This will
be used in the soon-to-land inline cost rewrite.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153811 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
6c31ee2b10827583a0fbcb39623fdfb440c917ef 29-Mar-2012 Eric Christopher <echristo@apple.com> Lowercase the tag name to match the rest of dwarf.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153691 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
eb95f65f1142d1aac9cac94fb4ff46b96aedcb3a 29-Mar-2012 Jim Grosbach <grosbach@apple.com> Tidy up. Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153609 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
c4b2271d4aa5c98417d6582b4f0b69fbe5e61cb9 26-Mar-2012 Eric Christopher <echristo@apple.com> Add InitializeNativeTargetDisassembler function.

Patch by Ojab.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153476 91177308-0d34-0410-b5e6-96231b3b80d8
argetSelect.h
3770f605b522e34ef4a1fabb4dcaa2e76a7a2d96 22-Mar-2012 Shih-wei Liao <sliao@google.com> Migrate external/llvm to LLVM-153224-20120321.

Change-Id: I93619a538c59e5b1280d46534dac322fbccd14f7
LF.h
c59a7995d22e2889706810c90a20a51ecfec278b 24-Mar-2012 Shih-wei Liao <sliao@google.com> Merge branch 'upstream' into sliao_d
014bc6e3ceac59ea7d1d435cfb88642157c5270c 19-Mar-2012 TDYa127 <tdy@google.com> Restore to use private and LLVM coding style

Change-Id: I5650b0de503f5b44e7dc38bcb204f65a9b8a4ddc
ommandLine.h
a87a75fd806cd9bd74b44f9ec1ab4b0435bb2791 19-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Make the formatting of this file more consistent, and fix the 80-columns
violations I introduced. Also sort some of the instructions to get
a more consistent ordering.

Suggestions on still better / more consistent formatting would be
welcome. I'm actually tempted to use a macro to define all of the
delegate methods...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153030 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
080b862e67984d48cdfcfacafcd507b4650f779b 19-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Teach InstVisitor about the UnaryInstruction layer in the instruction
type hierarchy. I wanted to use this for the inline cost rewrite, and
found it was missing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153029 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
8b8825ac164c2e7cce8b6987cea78cd8b301360d 17-Mar-2012 Shih-wei Liao <sliao@google.com> Integrated linker.

Change-Id: Iec22c1b717750cb428c61c5319cdd77378e4af1e
ommandLine.h
LF.h
f522ce1f18726313058d81ba74ed8b44fa279d99 11-Mar-2012 Michael J. Spencer <bigcheesegs@gmail.com> Fix warnings when building with VS11.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152523 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
2d70e263c2b508bf4641273dd89a23149f6f6164 09-Mar-2012 David Meyer <pdox@google.com> Support reading GNU symbol versions in ELFObjectFile

* Add enums and structures for GNU version information.
* Implement extraction of that information on a per-symbol basis (ELFObjectFile::getSymbolVersion).
* Implement a generic interface, GetELFSymbolVersion(), for getting the symbol version from the ObjectFile (hides the templating).
* Have llvm-readobj print out the version, when available.
* Add a test for the new feature: readobj-elf-versioning.test



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152436 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
75c0d8e0d8f4e10587985b950f2c0752e45e099e 09-Mar-2012 Daniel Dunbar <daniel@zuster.org> [Support] Drop verbose _ATTRIBUTE from LLVM_ATTRIBUTE_{READONLY,READNONE} macro
names.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152413 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
cbfc117674be7ff70b4682c525d6fcb4827a74ed 07-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Try a completely different approach to this type trait to appease older
compilers. It seems that GCC 4.3 (and likely older) simply aren't going
to do SFINAE on non-type template parameters the way Clang and modern
GCCs do...

Now we detect the implicit conversion to an integer type, and then
blacklist classes, pointers, and floating point types. This seems to
work well enough, and I'm hopeful will return the bots to life.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152227 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
ff12877a6f4db734cf0a156dc2ef815a839a79ec 07-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Attempt #2 at appeasing GCC 4.3. This compiler really doesn't like these
traits.

With this change, the pattern used here is *extremely* close to the
pattern used elsewhere in the file, so I'm hoping it survives the
build-bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152225 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
a1eb50fe3d8213156c77ef2f7ae5c4ad629dbb95 07-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Switch the is_integral_or_enum trait machinery to use an explicit
template argument and an *implicit* conversion from '0' to a null
pointer. For some bizarre reason, GCC 4.3.2 thinks that the cast to
'(T*)' is invalid inside of an enumerator's value... which it isn't but
whatever. ;] This pattern is used elsewhere in the type_traits header
and so hopefully will survive the wrath of the build bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152220 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
d4d8b2a7f6d29b44cbc084b49042f44ef109da0c 07-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Add support to the hashing infrastructure for automatically hashing both
integral and enumeration types. This is accomplished with a bit of
template type trait magic. Thanks to Richard Smith for the core idea
here to detect viable types by detecting the set of types which can be
default constructed in a template parameter.

This is used (in conjunction with a system for detecting nullptr_t
should it exist) to provide an is_integral_or_enum type trait that
doesn't need a whitelist or direct compiler support.

With this, the hashing is extended to the more general facility. This
will be used in a subsequent commit to hashing more things, but I wanted
to make sure the type trait magic went through the build bots separately
in case other compilers don't like this formulation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152217 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
f0a68131de2f877c652dd9ae34ddcdf6e482811f 06-Mar-2012 Ted Kremenek <kremenek@apple.com> Add new load commands for MachO.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152135 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
c02a5c5e8d9c1fd2a20ad4aed40f328564e95b40 05-Mar-2012 Stephen Hines <srhines@google.com> Merge branch 'upstream' into merge-20120305

Conflicts:
lib/Support/Atomic.cpp

Change-Id: I563b3bc2a82942ccbae5bed42e53b9149a8bf3a0
c6449b636f4984be88f128d0375c056ad05e7e8f 05-Mar-2012 Jim Grosbach <grosbach@apple.com> Make MCRegisterInfo available to the the MCInstPrinter.

Used to allow context sensitive printing of super-register or sub-register
references.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152043 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
1c1448984d43f1f02c0235d35ebe8460c9b57afd 02-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Simplify the pair optimization. Rather than using complex type traits,
just ensure that the number of bytes in the pair is the sum of the bytes
in each side of the pair. As long as thats true, there are no extra
bytes that might be padding.

Also add a few tests that previously would have slipped through the
checking. The more accurate checking mechanism catches these and ensures
they are handled conservatively correctly.

Thanks to Duncan for prodding me to do this right and more simply.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151891 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
88c48fae6956f17273704da53a2b3ab2981529c1 02-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Add a header that was technically missing to see if this gets the
offsetof buildbot errors to go away...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151884 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
4d628e200f7133e353c38806b57a229ef6ad2ab4 02-Mar-2012 Chandler Carruth <chandlerc@gmail.com> We really want to hash pairs of directly-hashable data as directly
hashable data. This matters when we have pair<T*, U*> as a key, which is
quite common in DenseMap, etc. To that end, we need to detect when this
is safe. The requirements on a generic std::pair<T, U> are:

1) Both T and U must satisfy the existing is_hashable_data trait. Note
that this includes the requirement that T and U have no internal
padding bits or other bits not contributing directly to equality.
2) The alignment constraints of std::pair<T, U> do not require padding
between consecutive objects.
3) The alignment constraints of U and the size of T do not conspire to
require padding between the first and second elements.

Grow two somewhat magical traits to detect this by forming a pod
structure and inspecting offset artifacts on it. Hopefully this won't
cause any compilers to panic.

Added and adjusted tests now that pairs, even nested pairs, are treated
as just sequences of data.

Thanks to Jeffrey Yasskin for helping me sort through this and reviewing
the somewhat subtle traits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151883 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
925c3f08713c15114c782123789bf7d8604d4460 01-Mar-2012 Argyrios Kyrtzidis <akyrtzi@gmail.com> Move include/llvm/ADT/SaveAndRestore.h -> include/llvm/Support/SaveAndRestore.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151828 91177308-0d34-0410-b5e6-96231b3b80d8
aveAndRestore.h
0b66c6fca22e85f732cf58f459a06c06833d1882 01-Mar-2012 Chandler Carruth <chandlerc@gmail.com> Rewrite LLVM's generalized support library for hashing to follow the API
of the proposed standard hashing interfaces (N3333), and to use
a modified and tuned version of the CityHash algorithm.

Some of the highlights of this change:
-- Significantly higher quality hashing algorithm with very well
distributed results, and extremely few collisions. Should be close to
a checksum for up to 64-bit keys. Very little clustering or clumping of
hash codes, to better distribute load on probed hash tables.
-- Built-in support for reserved values.
-- Simplified API that composes cleanly with other C++ idioms and APIs.
-- Better scaling performance as keys grow. This is the fastest
algorithm I've found and measured for moderately sized keys (such as
show up in some of the uniquing and folding use cases)
-- Support for enabling per-execution seeds to prevent table ordering
or other artifacts of hashing algorithms to impact the output of
LLVM. The seeding would make each run different and highlight these
problems during bootstrap.

This implementation was tested extensively using the SMHasher test
suite, and pased with flying colors, doing better than the original
CityHash algorithm even.

I've included a unittest, although it is somewhat minimal at the moment.
I've also added (or refactored into the proper location) type traits
necessary to implement this, and converted users of GeneralHash over.

My only immediate concerns with this implementation is the performance
of hashing small keys. I've already started working to improve this, and
will continue to do so. Currently, the only algorithms faster produce
lower quality results, but it is likely there is a better compromise
than the current one.

Many thanks to Jeffrey Yasskin who did most of the work on the N3333
paper, pair-programmed some of this code, and reviewed much of it. Many
thanks also go to Geoff Pike Pike and Jyrki Alakuijala, the original
authors of CityHash on which this is heavily based, and Austin Appleby
who created MurmurHash and the SMHasher test suite.

Also thanks to Nadav, Tobias, Howard, Jay, Nick, Ahmed, and Duncan for
all of the review comments! If there are further comments or concerns,
please let me know and I'll jump on 'em.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151822 91177308-0d34-0410-b5e6-96231b3b80d8
ystem_error.h
ype_traits.h
adef06a71458ded0716935a61b3d43d164d4df12 29-Feb-2012 Derek Schuff <dschuff@google.com> Make MemoryObject accessor members const again



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151687 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
treamableMemoryObject.h
cd4f803ac1b366084bdf691d5da5563704e36dfe 27-Feb-2012 Derek Schuff <dschuff@google.com> Fix PR12089
http://llvm.org/bugs/show_bug.cgi?id=12089



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151550 91177308-0d34-0410-b5e6-96231b3b80d8
treamableMemoryObject.h
124e51c0d2b521b0fb3aaaf2443403cd451b7857 21-Feb-2012 Chandler Carruth <chandlerc@gmail.com> Switch the llvm::Triple class to immediately parse the triple string on
construction. Simplify its interface, implementation, and users
accordingly as there is no longer an 'uninitialized' state to check for.
Also, fixes a bug lurking in the interface as there was one method that
didn't correctly check for initialization.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151024 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
dbe266be35cfee0fbda5523ac578fef81e8fdfcc 17-Feb-2012 Dan Gohman <gohman@apple.com> Calls and invokes with the new clang.arc.no_objc_arc_exceptions
metadata may still unwind, but only in ways that the ARC
optimizer doesn't need to consider. This permits more
aggressive optimization.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150829 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
edfb931edbf31f8de132834e064ede723ac74d23 10-Feb-2012 Duncan Sands <baldrick@free.fr> Revert commit 149912 (lattner) and add a testcase that shows the problem (which
is that patterns no longer match for vectors of booleans, because you only get
ConstantDataVector when the vector element type is i8, i16, etc, not when it is
i1). Original commit message:
Remove some dead code and tidy things up now that vectors use ConstantDataVector
instead of always using ConstantVector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150246 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
58604cd944eec4a75046076cb53eb708aaf2ee09 09-Feb-2012 David Blaikie <dblaikie@gmail.com> Change default error_code ctor to a 'named ctor' so it's more self-documenting.

Unify default construction of error_code uses on this idiom so that users don't
feel compelled to make static globals for naming convenience. (unfortunately I
couldn't make the original ctor private as some APIs don't return their result,
instead using an out parameter (that makes sense to default construct) - which
is a bit of a pity. I did, however, find/fix some cases of unnecessary default
construction of error_code before I hit the unfixable cases)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150197 91177308-0d34-0410-b5e6-96231b3b80d8
ystem_error.h
ebba0558c84b67f73989e174e4512f5af0c06cb1 07-Feb-2012 David Blaikie <dblaikie@gmail.com> Correct use of const in ParseCommandLineOptions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149999 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
44ebf8b0331cb3a994a8df16fb63fdcdbc37d927 06-Feb-2012 Nick Lewycky <nicholas@mxc.ca> Fix comment-rulers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149922 91177308-0d34-0410-b5e6-96231b3b80d8
ataStream.h
treamableMemoryObject.h
2ea93875b2f2900b9d244dfd7649c9ed02a34cd7 06-Feb-2012 Derek Schuff <dschuff@google.com> Enable streaming of bitcode

This CL delays reading of function bodies from initial parse until
materialization, allowing overlap of compilation with bitcode download.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149918 91177308-0d34-0410-b5e6-96231b3b80d8
ataStream.h
emoryObject.h
treamableMemoryObject.h
7302d80490feabfc8a01bee0fa698aab55169544 06-Feb-2012 Chris Lattner <sabre@nondot.org> Remove some dead code and tidy things up now that vectors use ConstantDataVector
instead of always using ConstantVector.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149912 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
8833ef03b9ceaa52063116819fff8b3d16fd8933 06-Feb-2012 Bill Wendling <isanbard@gmail.com> [unwind removal] Remove all of the code for the dead 'unwind' instruction. There
were no 'unwind' instructions being generated before this, so this is in effect
a no-op.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149906 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
50bee42b54cd9aec5f49566307df2b0cf23afcf6 05-Feb-2012 Craig Topper <craig.topper@gmail.com> Convert assert(0) to llvm_unreachable

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149849 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ecycler.h
0df823461dd3de0146c656cba4697d96998f3d24 04-Feb-2012 Devang Patel <dpatel@apple.com> Update llvm debug version to support new structure and tag for Objective-C property's debug info.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149736 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
36b24b0dfa2ca1ea203f37ce62d06ee23bd63c82 04-Feb-2012 Devang Patel <dpatel@apple.com> Add new tag and an attribute to support debug info for objective-c property.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149724 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
95fa4005f5aa99878c4053e95b230f0b8b6a4d6d 29-Jan-2012 Douglas Gregor <dgregor@apple.com> Move Clang's file-level locking facility over to LLVM's support
library, since it doesn't really have anything to do with Clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149203 91177308-0d34-0410-b5e6-96231b3b80d8
ockFileManager.h
6b0dc92043ab1f63d78b8796098575e1d777b701 26-Jan-2012 Chris Lattner <sabre@nondot.org> progress making the world safe to ConstantDataVector. While
we're at it, allow PatternMatch's "neg" pattern to match integer
vector negations, and enhance ComputeNumSigned bits to handle
shl of vectors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149082 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
b2b3d7d972f1a5aa5c96400ef036c520696b4e77 24-Jan-2012 David Blaikie <dblaikie@gmail.com> Reword comment based on feedback by Duncan Sands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148809 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
153c8adc496466972c5d742507156b0257078543 24-Jan-2012 David Blaikie <dblaikie@gmail.com> Changing bitfield enums to unsigned ints.

This was suggested by Chandler Carruth on the basis of past experience with
esoteric compilers/quirks relating to signed enums.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148746 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
4302a4965c4fffcecee23210dd1910d8d2c88259 23-Jan-2012 Bill Wendling <isanbard@gmail.com> Remove extraneous ';'s.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148740 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
c1bddefc56cd1db30326d6464f50db3dae6061eb 23-Jan-2012 David Blaikie <dblaikie@gmail.com> Simplify llvm::cl::Option by using a bit field instead of manual bit packing.

This still preserves the same total layout.

Previously it looked like:
*** Dumping AST Record Layout
0 | class llvm::cl::Option
0 | (Option vtable pointer)
8 | int NumOccurrences
12 | int Flags
16 | unsigned int Position
20 | unsigned int AdditionalVals
24 | class llvm::cl::Option * NextRegistered
32 | const char * ArgStr
40 | const char * HelpStr
48 | const char * ValueStr
sizeof=56, dsize=56, align=8
nvsize=56, nvalign=8

Now it looks like:
*** Dumping AST Record Layout
0 | class llvm::cl::Option
0 | (Option vtable pointer)
8 | int NumOccurrences
12 | enum NumOccurrencesFlag Occurrences
12 | unsigned int Value
12 | enum OptionHidden HiddenFlag
12 | enum FormattingFlags Formatting
13 | unsigned int Misc
16 | unsigned int Position
20 | unsigned int AdditionalVals
24 | class llvm::cl::Option * NextRegistered
32 | const char * ArgStr
40 | const char * HelpStr
48 | const char * ValueStr
sizeof=56, dsize=56, align=8
nvsize=56, nvalign=8

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148736 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
24973c1063bfb7ac353732a4e8eb801830336c5f 22-Jan-2012 Eli Bendersky <eli.bendersky@intel.com> Basic runtime dynamic loading capabilities added to ELFObjectFile, implemented
in a subclass named DyldELFObject. This class supports rebasing the object file
it represents by re-mapping section addresses to the actual memory addresses
the object was placed in. This is required for MC-JIT implementation on ELF with
debugging support.

Patch reviewed on llvm-commits.

Developed together with Ashok Thirumurthi and Andrew Kaylor.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148653 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
44b920fac47e8047acd0ffdbd3b169b4fdfed06b 17-Jan-2012 Manuel Klimek <klimek@google.com> Removes template magic to build up containers.

Instead, we now put the attributes of the container into members.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148302 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
4aab4ab340863d87f9c566b69099ce60dd8762be 15-Jan-2012 Chandler Carruth <chandlerc@gmail.com> Remove SetWorkingDirectory from the Process interface. Nothing in LLVM
or Clang is using this, and it would be hard to use it correctly given
the thread hostility of the function. Also, it never checked the return
which is rather dangerous with chdir. If someone was in fact using this,
please let me know, as well as what the usecase actually is so that
I can add it back and make it more correct and secure to use. (That
said, it's never going to be "safe" per-se, but we could at least
document the risks...)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148211 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
6e9b5eb51bb623995c90295d265a7682277653a1 05-Jan-2012 Sebastian Pop <spop@codeaurora.org> revert r147542 after comments from Joerg Sonnenberger

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147608 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
8a86887ba3dcf59ddfd1d26bd2af1ac9c6bed76a 04-Jan-2012 Sebastian Pop <spop@codeaurora.org> use getHostTriple instead of getDefaultTargetTriple in getClosestTargetForJIT

Get back getHostTriple.

For JIT compilation, use the host triple instead of the default
target: this fixes some JIT testcases that used to fail when the
compiler has been configured as a cross compiler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147542 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
55c6d57734cd2f141dc2d6912fc22746d5eeae54 01-Jan-2012 Benjamin Kramer <benny.kra@googlemail.com> PatternMatch: Introduce a matcher for instructions with the "exact" bit. Use it to simplify a few matchers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147403 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
395363a9b9ee07b731af5c2a397ea8d705f16d56 01-Jan-2012 Benjamin Kramer <benny.kra@googlemail.com> PatternMatch: Simplify code by reusing the Operator class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147402 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
84cbb6f00de84fa04012462a28a3636e13834401 21-Dec-2011 Manuel Klimek <klimek@google.com> Changes the JSON parser to use the SourceMgr.

Diagnostics are now emitted via the SourceMgr and we use MemoryBuffer
for buffer management. Switched the code to make use of the trailing
'0' that MemoryBuffer guarantees where it makes sense.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147063 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
093147abf423428d338979a839273369810698cc 20-Dec-2011 Manuel Klimek <klimek@google.com> Fixes a potential compilation error.

Pulling the template implementation into the header to guarantee
that it's visible to all possible instantiations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146973 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
9ce6937701cd28fb2aafdd3ec950fb0e70bae8cd 20-Dec-2011 Manuel Klimek <klimek@google.com> Pulls the implementation of skip() into JSONParser.

This is the first step towards migrating more of the parser
implementation into the parser class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146971 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
c4850c9a061e40be8b8a75cbf55b0e3ed2d7e8b5 20-Dec-2011 Manuel Klimek <klimek@google.com> Addressing style issues in JSON parser.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146968 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
76f13017fc67b35f10b61e05c13f3643b714fccf 16-Dec-2011 Manuel Klimek <klimek@google.com> Adds a JSON parser and a benchmark (json-bench) to catch performance regressions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146735 91177308-0d34-0410-b5e6-96231b3b80d8
SONParser.h
a1e6e241a813f81be2d2f36ab60c950ca297574b 16-Dec-2011 Logan Chien <loganchien@google.com> Merge with LLVM upstream r146714 (Dec 16th 2011)

Change-Id: Ied458adb08bf9a69250cbcee9b14b44d17e8701a
b012eb8cc48fb5f29f911e7866c92c277616b875 15-Dec-2011 Eli Friedman <eli.friedman@gmail.com> Zap unnecessary semicolons.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146682 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
5b08230930ee219382f6d0abe9d16aa160907169 14-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Add file_magic and move a vew clients over to it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146523 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
b92cb30cf547bf9a8590a981a49040f480c8eb82 14-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/Program: Make Change<stream>ToBinary return error_code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146522 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
b4b54153ad760c69a00a08531abef4ed434a5092 12-Dec-2011 Tony Linthicum <tlinth@codeaurora.org> Hexagon backend support

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146412 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
7ae606a2a891707ad2e184b0e3baac0dce1b6c0f 12-Dec-2011 Chad Rosier <mcrosier@apple.com> Revert r146363 to allow buildbots to make forward progress.

Original commit message:
Support/FileSystem: Implement canonicalize.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146378 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
a0c17a495b12debcb7f206993bbc6020e2e6e8df 12-Dec-2011 Roman Divacky <rdivacky@freebsd.org> Add support for gnu_indirect_function.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146377 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
d45fbe62270eaf826419b93f1da66f1850f37faf 12-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Implement bool equivalent(file_status A, file_status B);

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146364 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
c3b00e80400d27d5d6152374d87c0ad5866c780c 12-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Implement canonicalize.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146363 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
94c2e85bea1ab1b837a4c055ccc83d5cd32dd027 09-Dec-2011 Kevin Enderby <enderby@apple.com> The second part of support for generating dwarf for assembly source files. This
generates the dwarf Compile Unit DIE and a dwarf subprogram DIE for each
non-temporary label.

The next part will be to get the clang driver to enable this when assembling
a .s file. rdar://9275556


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146262 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
a81ac8f2b5d4f61f7bc353f95cc1d0a05266f51c 08-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Implement recursive_directory_iterator and make
directory_iterator preserve InputIterator semantics on copy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146200 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
e3d3572e282733bd7aa5ac14115ed0804174e426 07-Dec-2011 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Add a few moreLocal/Global R_MIPS_GOT related fixups and
make the addend fixup code a bit more generic

Patch by Jack Carter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145998 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
e15402f92b6949d2474cc82648239fe22e5a2209 05-Dec-2011 Anna Zaks <ganna@apple.com> Change the Dominators recalculate() function to only rely on GraphTraits

This is a patch by Guoping Long!

As part of utilizing LLVM Dominator computation in Clang, made two changes to LLVM dominators tree implementation:

- (1) Change the recalculate() template function to only rely on GraphTraits.
- (2) Add a size() method to GraphTraits template class to query the number of nodes in the graph.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145837 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
8a8d479214745c82ef00f08d4e4f1c173b5f9ce2 02-Dec-2011 Nick Lewycky <nicholas@mxc.ca> Move global variables in TargetMachine into new TargetOptions class. As an API
change, now you need a TargetOptions object to create a TargetMachine. Clang
patch to follow.

One small functionality change in PTX. PTX had commented out the machine
verifier parts in their copy of printAndVerify. That now calls the version in
LLVMTargetMachine. Users of PTX who need verification disabled should rely on
not passing the command-line flag to enable it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145714 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
0becc96b243da058f6d8901128b173d192db5148 01-Dec-2011 David Blaikie <dblaikie@gmail.com> Add some missing anchors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145578 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
38831b014a57718a1755ab1c3c1df08679183dfb 28-Nov-2011 Dylan Noblesmith <nobled@dreamwidth.org> use llvm-config.h in public header

The config.h file's macros collide with other projects that include
LLVM and shouldn't get exported.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145215 91177308-0d34-0410-b5e6-96231b3b80d8
algrind.h
08b73a30bbb6407c7b48a734a29f65f4c8ddd782 28-Nov-2011 Dylan Noblesmith <nobled@dreamwidth.org> rename ENABLE_THREADS to LLVM_ENABLE_THREADS

Now that it needs to be exported in a public header (Valgrind.h)
it should be prefixed to avoid collision with other projects.
Add it to llvm-config.h as well.

This'll require regenerating the configure script after this
commit, but I don't have the required autoconf version.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145214 91177308-0d34-0410-b5e6-96231b3b80d8
algrind.h
1429059dc0129c1cec938c29d6fce89e14293241 25-Nov-2011 Logan Chien <loganchien@google.com> Merge with LLVM upstream r145126 (Nov 25th 2011)

Change-Id: I30d08ae004a4c3c74092ad2537ab30cce4280e1d
84bfc2f090639f933df06cc675c4385511516bef 23-Nov-2011 Akira Hatanaka <ahatanaka@mips.com> This patch addresses gp relative fixups/relocations for jump tables.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145112 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
1d4bf66d6e03d76ff1fecddb10f1ae9b9ec9da77 21-Nov-2011 Sebastian Pop <spop@codeaurora.org> fix typo in comment



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145048 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
173862e5468fbcf4b022b9088d2c81b25c2d60c5 20-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Refactor code to use new attribute getters on CallSite for NoCapture and ByVal.
Suggested in code review by Eli.

That code in InstCombine looks kinda suspicious.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145013 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a91a3e04895f2049f7607cfe6fd1aa7b276ed3da 20-Nov-2011 Chandler Carruth <chandlerc@gmail.com> Make an obviously const interface actually be marked as const.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145009 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
b95fc31aa2e5a0a0b9ee1909d1cb949577c5aa16 16-Nov-2011 Evan Cheng <evan.cheng@apple.com> Sink codegen optimization level into MCCodeGenInfo along side relocation model
and code model. This eliminates the need to pass OptLevel flag all over the
place and makes it possible for any codegen pass to use this information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144788 91177308-0d34-0410-b5e6-96231b3b80d8
odeGen.h
argetRegistry.h
a9a4f5eda8c9123dcdb46b351de4adb56706bb76 16-Nov-2011 Michael J. Spencer <bigcheesegs@gmail.com> Remove extra ,.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144759 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
dc296639d9bf3b85167b2a7ec1b4110b953e98bb 16-Nov-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/COFF: Add structs and enums from the standard for image files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144756 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
25ad1cc32af8d526eb72893a513a486bc28c5106 15-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Twinify GraphWriter a little bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144647 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
f9c1b92c27bf4ac40a52e0f1ef6d006d7e74bed3 15-Nov-2011 Logan Chien <loganchien@google.com> Merge with LLVM upstream r144606 (Nov 15th 2011)

Conflicts:
Makefile.rules
configure
docs/ReleaseNotes.html
lib/Analysis/ScalarEvolution.cpp
lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
lib/CodeGen/ExecutionDepsFix.cpp
lib/CodeGen/MachineBlockPlacement.cpp
lib/CodeGen/MachineBranchProbabilityInfo.cpp
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
lib/ExecutionEngine/JIT/LLVMBuild.txt
lib/MC/LLVMBuild.txt
lib/MC/MCDisassembler/LLVMBuild.txt
lib/MC/MCDwarf.cpp
lib/Object/LLVMBuild.txt
lib/Target/ARM/ARMExpandPseudoInsts.cpp
lib/Target/ARM/ARMFastISel.cpp
lib/Target/ARM/ARMInstrInfo.td
lib/Target/ARM/AsmParser/ARMAsmParser.cpp
lib/Target/ARM/Disassembler/ARMDisassembler.cpp
lib/Target/ARM/Disassembler/LLVMBuild.txt
lib/Target/ARM/TargetInfo/LLVMBuild.txt
lib/Target/CBackend/TargetInfo/LLVMBuild.txt
lib/Target/CellSPU/MCTargetDesc/LLVMBuild.txt
lib/Target/CellSPU/TargetInfo/LLVMBuild.txt
lib/Target/CppBackend/TargetInfo/LLVMBuild.txt
lib/Target/LLVMBuild.txt
lib/Target/MBlaze/Disassembler/LLVMBuild.txt
lib/Target/MBlaze/TargetInfo/LLVMBuild.txt
lib/Target/MSP430/MCTargetDesc/LLVMBuild.txt
lib/Target/MSP430/TargetInfo/LLVMBuild.txt
lib/Target/Mips/CMakeLists.txt
lib/Target/Mips/InstPrinter/MipsInstPrinter.cpp
lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/MipsAsmPrinter.cpp
lib/Target/Mips/MipsISelLowering.cpp
lib/Target/Mips/MipsMCInstLower.cpp
lib/Target/Mips/TargetInfo/LLVMBuild.txt
lib/Target/PTX/LLVMBuild.txt
lib/Target/PTX/PTXAsmPrinter.cpp
lib/Target/PTX/TargetInfo/LLVMBuild.txt
lib/Target/PowerPC/TargetInfo/LLVMBuild.txt
lib/Target/Sparc/TargetInfo/LLVMBuild.txt
lib/Target/X86/TargetInfo/LLVMBuild.txt
lib/Target/X86/X86ISelLowering.cpp
lib/Target/X86/X86InstrSSE.td
lib/Target/XCore/MCTargetDesc/LLVMBuild.txt
lib/Target/XCore/TargetInfo/LLVMBuild.txt
lib/Transforms/IPO/LLVMBuild.txt
lib/Transforms/Utils/LLVMBuild.txt
test/CodeGen/ARM/2011-10-26-memset-with-neon.ll
test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll
test/CodeGen/ARM/fast-isel-cmp-imm.ll
test/CodeGen/ARM/fast-isel-ldrh-strh-arm.ll
test/CodeGen/CellSPU/call_indirect.ll
test/CodeGen/X86/avx2-logic.ll
test/CodeGen/X86/block-placement.ll
test/CodeGen/X86/sse-domains.ll
test/CodeGen/X86/sse3.ll
test/CodeGen/X86/vec_shuffle-39.ll
test/MC/ARM/neon-vld-encoding.s
test/MC/ARM/neon-vst-encoding.s
tools/llvm-config-2/llvm-config.cpp
utils/TableGen/LLVMBuild.txt

Change-Id: I70f454db6fc79d7799f56d0f6f2eb7b99561c504
283b419aea736f899d1e0de70b2c0355d51d6826 15-Nov-2011 NAKAMURA Takumi <geek4civic@gmail.com> include/llvm/Support/Compiler.h: Invalidate LLVM_ATTRIBUTE_WEAK on cygming for now.

It triggers generating insane executables with both binutils-2.19.1(msysgit) and 2.22.51.20111013(cygwin).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144621 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
e7c1aef2b824f29ea92b2b324975915fe2115fa4 15-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Move WEAK marking to the declaration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144603 91177308-0d34-0410-b5e6-96231b3b80d8
algrind.h
ec381a4183f70122305f810c6b11b8f0e3bf83c0 15-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Fix linking for some users who already have tsan enabled code and are trying to
link it against llvm code, by making our definitions weak. "Some users."


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144596 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
4d0a9ff36574da0c042e9bd3ae816301b392ac41 14-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Add support for tsan annotations (thread sanitizer, a valgrind-based tool).
These annotations are disabled entirely when either ENABLE_THREADS is off, or
building a release build. When enabled, they add calls to functions with no
statements to ManagedStatic's getters.

Use these annotations to inform tsan that the race used inside ManagedStatic
initialization is actually benign. Thanks to Kostya Serebryany for helping
write this patch!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144567 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
algrind.h
f2a027ee44593147a4aee5566a13f682a1964773 11-Nov-2011 Stephen Hines <srhines@google.com> Update LLVM to svn 144354.

Change-Id: I1935ffce1c5d5eec52ad8b69bab9ee0c281aef16
ataTypes.h
32cd736a041b062ff82a3ea962e7d8f08afdedef 05-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Fix pasto.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143802 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
4eb73c59bcd1055e9a3f324d836ce3898fbb7c81 05-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Add more PRI.64 macros for MSVC and use them throughout the codebase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143799 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
c667fadfbc2b70fd5d8e733fe2287c5704839b7a 04-Nov-2011 Eli Friedman <eli.friedman@gmail.com> Add missing includes/class declaration.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143718 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
apacity.h
ynamicLibrary.h
162251120159249cf6bccbfe24acc23eab59acce 04-Nov-2011 Eli Friedman <eli.friedman@gmail.com> Delete names for unused parameters in inline function definitions in headers, so LLVM users can compile with -Wunused-parameter. PR11257; based on patch by Kevin Harris.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143715 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
85f37f33634c78c09acfd06acc6ace7dd6512c7f 01-Nov-2011 Sebastian Pop <spop@codeaurora.org> rename getHostTriple into getDefaultTargetTriple



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143502 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
efde37d2ba184a055ce69fdec277bce8ee05bb42 01-Nov-2011 Daniel Dunbar <daniel@zuster.org> Support/Compiler: Add LLVM_EXTENSION for use where we want to hide pedantic diags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143468 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
e92951df9399cd12d1a9a826010a19aaee9bc1d4 01-Nov-2011 Eli Friedman <eli.friedman@gmail.com> Remove a couple unused methods. PR11201.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143452 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
4ec3dbd30cf340aa62c0f7cadf24252c1a955445 24-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> Implement comparison operators for BranchProbability in a way that can't overflow INT64_MAX.

Add a test case for the edge case that triggers this. Thanks to Chandler for bringing this to my attention.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142794 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
608a61f637d61dbd44f03e42b50d58c32e7b82b3 23-Oct-2011 Chandler Carruth <chandlerc@gmail.com> Now that we have comparison on probabilities, add some static functions
to get important constant branch probabilities and use them for finding
the best branch out of a set of possibilities.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142762 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
9359af72ea2c898e000c4d7ded477ab294877cef 23-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> Add compare operators to BranchProbability and use it to determine if an edge is hot.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142751 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
c09b770c13594ce6fd91820b31f934aadddc1bcd 05-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Fix pasto.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143802 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
41a964931a0e0943ceef28b0c691843bf8ca87b7 05-Nov-2011 Benjamin Kramer <benny.kra@googlemail.com> Add more PRI.64 macros for MSVC and use them throughout the codebase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143799 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
73a1ad8f0560f01830fd206e84d4a21e5b3b7f59 04-Nov-2011 Eli Friedman <eli.friedman@gmail.com> Add missing includes/class declaration.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143718 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
apacity.h
ynamicLibrary.h
b39e25ef2c8d8c840ec4155e57c737ac7bd4f167 04-Nov-2011 Eli Friedman <eli.friedman@gmail.com> Delete names for unused parameters in inline function definitions in headers, so LLVM users can compile with -Wunused-parameter. PR11257; based on patch by Kevin Harris.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143715 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
0173864d8a87d9243d304fbf91b556e20b5a32fc 01-Nov-2011 Sebastian Pop <spop@codeaurora.org> rename getHostTriple into getDefaultTargetTriple



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143502 91177308-0d34-0410-b5e6-96231b3b80d8
ost.h
8f4a17214c75e8ce3f2f88a2e3cd3300faba5fc6 01-Nov-2011 Daniel Dunbar <daniel@zuster.org> Support/Compiler: Add LLVM_EXTENSION for use where we want to hide pedantic diags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143468 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
c94792507ddac393a0a9f4cdf1bf258a09a47268 01-Nov-2011 Eli Friedman <eli.friedman@gmail.com> Remove a couple unused methods. PR11201.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143452 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
13b10731abfc006fce790c5c8205cd24c7d67de8 24-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> Implement comparison operators for BranchProbability in a way that can't overflow INT64_MAX.

Add a test case for the edge case that triggers this. Thanks to Chandler for bringing this to my attention.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142794 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
66d847c8ffff5199248fccc10cb27f80c5cf9ebe 23-Oct-2011 Chandler Carruth <chandlerc@gmail.com> Now that we have comparison on probabilities, add some static functions
to get important constant branch probabilities and use them for finding
the best branch out of a set of possibilities.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142762 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
341473c86d19cad5f3be432533ecdb42d9e07044 23-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> Add compare operators to BranchProbability and use it to determine if an edge is hot.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142751 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
0ebc07a576037e4e36f68bf5cece32740ca120c0 19-Oct-2011 Logan Chien <loganchien@google.com> Merge with LLVM upstream 2011/10/20 (r142530)

Conflicts:
lib/Support/Unix/Host.inc

Change-Id: Idc00db3b63912dca6348bddd9f8a1af2a8d5d147
c38c36a8c44bd32bdfc2e48ab3e447f6dc1547bd 18-Oct-2011 Michael J. Spencer <bigcheesegs@gmail.com> Object: Add isSymbolWeak.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142316 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
44d798d9763bc32aaf49fe7c10d604845f4b6685 18-Oct-2011 Nick Lewycky <nicholas@mxc.ca> Add support for a new extension to the .file directive:

.file filenumber "directory" "filename"

This removes one join+split of the directory+filename in MC internals. Because
bitcode files have independent fields for directory and filenames in debug info,
this patch may change the .o files written by existing .bc files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142300 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
04a0426cc283fe6a03f16612e0f172c3c97a1102 16-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> PR11143: Save the old diagnostic handler and call it when munging diagnostics for #line directives.

This reenables proper inline asm diagnostics in clang

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142132 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
462b43cbf61fd38db5f2467175c4a51ac1aba154 16-Oct-2011 Chris Lattner <sabre@nondot.org> remove the dead 'ShowLine' argument from SMDiagnostic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142108 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
3f2d5f60b31fd057c10f77b2e607b23a8c94f6d3 16-Oct-2011 Chris Lattner <sabre@nondot.org> Make SMDiagnostic a little more sane. Instead of passing around note/warning/error as a
string, pass it around as an enum.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142107 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
ourceMgr.h
d8b7aa26134d2abee777f745c32005e63dea2455 16-Oct-2011 Chris Lattner <sabre@nondot.org> Enhance llvm::SourceMgr to support diagnostic ranges, the same way clang does. Enhance
the X86 asmparser to produce ranges in the one case that was annoying me, for example:

test.s:10:15: error: invalid operand for instruction
movl 0(%rax), 0(%edx)
^~~~~~~

It should be straight-forward to enhance filecheck, tblgen, and/or the .ll parser to use
ranges where appropriate if someone is interested.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142106 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
ourceMgr.h
88c1103c223c1e3eb430ce7081b347e1a2346967 14-Oct-2011 Akira Hatanaka <ahatanaka@mips.com> Add ELF relocation types for Mips.

Patch by Jack Carter and Reed Kotler at Mips.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141935 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
c8f6c44af46554036084cba21a118266f5e26c0e 13-Oct-2011 Michael J. Spencer <bigcheesegs@gmail.com> Fix incorrect ELF typedefs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141871 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
fc61a23506fdad8f38e3437d741a4108339abcfe 13-Oct-2011 Michael J. Spencer <bigcheesegs@gmail.com> Add missing ELF constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141840 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
acbaecd4c8e4d19207e63624dcd9e01947b51757 12-Oct-2011 Kevin Enderby <enderby@apple.com> Finish supporting cpp #file/line comments in assembler for error messages. So
for cpp pre-processed assembly we give correct filename and line numbers when
reporting errors in assembly files when using clang and -integrated-as on .s
files. rdar://8998895



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141814 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
b5e8bc1fac7475ae8e2d0f8210bd72b7fe04df4b 11-Oct-2011 Daniel Dunbar <daniel@zuster.org> Support/DataTypes.h: Clean up some types and add matching (but presumably
unused) code from .cmake to DataTypes.h.in so that the files are essentially in
sync module differences in autoconf/cmake replacement syntax.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141702 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
e2aa5d53db175dff634069cacb31487e3ddb9754 11-Oct-2011 NAKAMURA Takumi <geek4civic@gmail.com> Add -D__STDC_FORMAT_MACROS to use PRIx64.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141663 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
023bb15beaac3744ce3a5d1f750d6e32829c7130 10-Oct-2011 Nick Lewycky <nicholas@mxc.ca> Add support for dumping section headers to llvm-objdump. This uses the same
flags as binutils objdump but the output is different, not just in format but
also showing different sections. Compare its results against readelf, not
objdump.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141579 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
880545e5d7ad80f0da09187459da1c8a2dcb34ef 08-Oct-2011 Michael J. Spencer <bigcheesegs@gmail.com> PathV2: Add simplified version of exists that returns false on error.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141450 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
58c620024ad00eae80a766e8e2b3b1d9414dc4cf 04-Oct-2011 Devang Patel <dpatel@apple.com> Put GCOVFile and other related interface in a common header so that llvm-cov tool can share it with GCOV writer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141095 91177308-0d34-0410-b5e6-96231b3b80d8
COV.h
bb0a6126cf1372e3ba90f0f6ff16f7f4d0381105 24-Sep-2011 Daniel Dunbar <daniel@zuster.org> sys::Process: Add a SetWorkingDirectory method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140433 91177308-0d34-0410-b5e6-96231b3b80d8
rocess.h
71280b55a3406c7dd4215449bf4a3ab216e78ffd 16-Sep-2011 Ivan Krasin <krasin@chromium.org> use 64-bit types instead of off_t/size_t to avoid the issue when
gold plugin is built with Large File Support (sizeof(off_t) == 64 on i686)
and the rest of LLVM is built w/o Large File Support
(sizeof(off_t) == 32 on i686) which corrupts the stack.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139873 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
b3514569d078065ced56562e01fd5a39e01543da 15-Sep-2011 Benjamin Kramer <benny.kra@googlemail.com> CommandLine: Add support for 64 bit unsigned integer options.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139848 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2460f32a8ab3fec16f1578c0119c3c029d236fa5 15-Sep-2011 Nick Lewycky <nicholas@mxc.ca> Despite what the GCC wiki says, a quick search shows that
DW_AT_GNU_template_name = 0x2110, not 0x2108. That would explain those
attr #0x2110 under the DW_TAG_GNU_template_template_param I'm seeing. Migrate
from documented values to reality.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139785 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
3a4178ea13b508bdad6f51d351d8ad3cf589959e 15-Sep-2011 Nick Lewycky <nicholas@mxc.ca> Add some more DWARF extensions from:
1. http://gcc.gnu.org/wiki/TemplateParmsDwarf
2. ftp://ftp.software.ibm.com/software/os390/czos/dwarf/mips_extensions.pdf


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139784 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
f59c532cfd2743b386b729244d3cb752ac55ab0b 15-Sep-2011 Nick Lewycky <nicholas@mxc.ca> Update Dwarf enums list for DWARF 4.
Note that DW_TAG_rvalue_reference_type is officially 0x42, not 0x41.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139779 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
d26d6b68dd5ad6cea00331182d70432e4bac3393 15-Sep-2011 Douglas Gregor <dgregor@apple.com> Update the comment for system_temp_directory() to indicate when it
will ignore the erasedOnReboot option, and properly escape the
backslash in "C:\TEMP". Thanks to Aaron and Francois.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139755 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
55cf815e19691d8a1cda40a331943ebfee9d7255 14-Sep-2011 Douglas Gregor <dgregor@apple.com> Add a simple routine to determine the typical system directory for
temporary data.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139725 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
357b5718411c4a15427d69590651fb8103ae7ba9 14-Sep-2011 Benjamin Kramer <benny.kra@googlemail.com> Remove unimplemented function prototypes from PathV2. They can be readded when someone cares enough.

Patch by Aaron Ballman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139682 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
836623420dbf5eb3a3facde2841179ded91ab55b 14-Sep-2011 Benjamin Kramer <benny.kra@googlemail.com> ObjectFile: Add support for mach-o-style dSYM companion files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139676 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
8c74f7f2991a10977fd5a003b2901b56eb2e19a8 13-Sep-2011 Benjamin Kramer <benny.kra@googlemail.com> Add the DataExtractor utility class.

It is an endian-aware helper that can read data from a StringRef. It will
come in handy for DWARF parsing. This class is inspired by LLDB's
DataExtractor, but is stripped down to the bare minimum needed for DWARF.

Comes with unit tests!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139626 91177308-0d34-0410-b5e6-96231b3b80d8
ataExtractor.h
de9ddbf19ada796c17e3c42eae477055616130df 13-Sep-2011 Devang Patel <dpatel@apple.com> Maintain hexadecimal order.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139601 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
5443140021291121a1e9d11cc4d74428f259cd6f 12-Sep-2011 Devang Patel <dpatel@apple.com> Add DW_ATE_UTF, which clang started using in my previous commit!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139503 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
b950585cc5a0d665e9accfe5ce490cd269756f2e 07-Sep-2011 James Molloy <james.molloy@arm.com> Refactor instprinter and mcdisassembler to take a SubtargetInfo. Add -mattr= handling to llvm-mc. Reviewed by Owen Anderson.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139237 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
bc6b89ed31ef77098803abe64af94f318ad716bb 30-Aug-2011 Benjamin Kramer <benny.kra@googlemail.com> Add load commands from Lion to Macho.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138806 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
d33b276bcb1efd4fa14c32fec68ae24baf30eb28 29-Aug-2011 Jim Grosbach <grosbach@apple.com> Tidy up. Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138767 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
3e74d6fdd248e20a280f1dff3da9a6c689c2c4c3 24-Aug-2011 Evan Cheng <evan.cheng@apple.com> Move TargetRegistry and TargetSelect from Target to Support where they belong.
These are strictly utilities for registering targets and components.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138450 91177308-0d34-0410-b5e6-96231b3b80d8
argetRegistry.h
argetSelect.h
7801136b95d1fbe515b9655b73ada39b05a33559 23-Aug-2011 Evan Cheng <evan.cheng@apple.com> Some refactoring so TargetRegistry.h no longer has to include any files
from MC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138367 91177308-0d34-0410-b5e6-96231b3b80d8
odeGen.h
c68c8623d01140af0f165888a1bfd3d6d937aee8 17-Aug-2011 Jordy Rose <jediknil@belkadan.com> ...and make sure DynamicLibrary builds by removing "const" from the Invalid placeholder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137843 91177308-0d34-0410-b5e6-96231b3b80d8
ynamicLibrary.h
77b6f2fd22bd9e0b8c0f1a4b0b007971e7b84d35 17-Aug-2011 Jordy Rose <jediknil@belkadan.com> Don't use NULL to represent an invalid library; Cygwin uses this for RTLD_DEFAULT. Caught by Takumi.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137841 91177308-0d34-0410-b5e6-96231b3b80d8
ynamicLibrary.h
0bce85fbfacec97255337d12fc0ab193f03f21c3 17-Aug-2011 Jordy Rose <jediknil@belkadan.com> Use DynamicLibrary instances as a way to get symbols from a specific library. Preparation for upcoming (preliminary) support for plugins for the static analyzer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137791 91177308-0d34-0410-b5e6-96231b3b80d8
ynamicLibrary.h
d6a49773ffbe35847baa7a68773ebbb326120dd0 16-Aug-2011 Devang Patel <dpatel@apple.com> Increment debug info version to accommodate upcoming change in debug info node structure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137751 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
e6e8826870bee3facb04f950f0bd725f8a88623d 12-Aug-2011 Bill Wendling <isanbard@gmail.com> Initial commit of the 'landingpad' instruction.

This implements the 'landingpad' instruction. It's used to indicate that a basic
block is a landing pad. There are several restrictions on its use (see
LangRef.html for more detail). These restrictions allow the exception handling
code to gather the information it needs in a much more sane way.

This patch has the definition, implementation, C interface, parsing, and bitcode
support in it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137501 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
4c7324d032adec5dcd4a6d638e70cfae03742d7c 11-Aug-2011 NAKAMURA Takumi <geek4civic@gmail.com> DataTypes.h.cmake: Tweak INT32_MIN for MSVC. MSC treats -2147483648 as -(2147483648U).

It caused an unexpected behavior since r137254.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137365 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
59c1ba96ba99cf07647073c672fd9f2e5f571bc8 10-Aug-2011 Peter Collingbourne <peter@pcc.me.uk> Preserve the name for this variant of IRBuilder::CreateCall

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137192 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
866ec865424e670918a14df2a695691c3372faf0 03-Aug-2011 Bill Wendling <isanbard@gmail.com> Remove CreateUnwind from the IRBuillder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136811 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3d453ac1317f910b0589d87c061f056be29e36cd 02-Aug-2011 Rafael Espindola <rafael.espindola@gmail.com> move PassManagerBuilder.h to IPO. This is a non intuitive place to put it,
but it solves a layering violation since things in Support are not supposed to
use things in Transforms.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136726 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
2c0d69fad0e658117922f3d96d9b732bedf9fd47 02-Aug-2011 Roman Divacky <rdivacky@freebsd.org> Sketch out PowerPC ELF writer. This is enough to get clang -integrated-as
to compile a working hello world on FreeBSD/PPC32.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136689 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
9b0a479bb763c3d7dcdbdfe0bfff4fd835d33475 02-Aug-2011 Eli Friedman <eli.friedman@gmail.com> Fix a couple silly typos in IRBuilder in the new atomic instructions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136665 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e2481ff8ee722e25d1e3aa192b276f9b5be5b177 01-Aug-2011 Jakub Staszak <jstaszak@apple.com> Add BlockFrequency::getEntryFrequency()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136618 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
dccc03b2423fe65efb5963ae816b99c24fc53374 31-Jul-2011 Bill Wendling <isanbard@gmail.com> Add the 'resume' instruction for the new EH rewrite.

This adds the 'resume' instruction class, IR parsing, and bitcode reading and
writing. The 'resume' instruction resumes propagation of an existing (in-flight)
exception whose unwinding was interrupted with a 'landingpad' instruction (to be
added later).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136589 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
10c6d12a9fd4dab411091f64db4db69670b88850 30-Jul-2011 Bill Wendling <isanbard@gmail.com> Revert r136253, r136263, r136269, r136313, r136325, r136326, r136329, r136338,
r136339, r136341, r136369, r136387, r136392, r136396, r136429, r136430, r136444,
r136445, r136446, r136253 pending review.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136556 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
55ba816883842e793cdeb32fcb805c4e011b527f 29-Jul-2011 Eli Friedman <eli.friedman@gmail.com> Misc optimizer+codegen work for 'cmpxchg' and 'atomicrmw'. They appear to be
working on x86 (at least for trivial testcases); other architectures will
need more work so that they actually emit the appropriate instructions for
orderings stricter than 'monotonic'. (As far as I can tell, the ARM, PPC,
Mips, and Alpha backends need such changes.)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136457 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ff03048c1350fcc4fda1ef6d6c57252f3a950854 28-Jul-2011 Eli Friedman <eli.friedman@gmail.com> LangRef and basic memory-representation/reading/writing for 'cmpxchg' and
'atomicrmw' instructions, which allow representing all the current atomic
rmw intrinsics.

The allowed operands for these instructions are heavily restricted at the
moment; we can probably loosen it a bit, but supporting general
first-class types (where it makes sense) might get a bit complicated,
given how SelectionDAG works.

As an initial cut, these operations do not support specifying an alignment,
but it would be possible to add if we think it's useful. Specifying an
alignment lower than the natural alignment would be essentially
impossible to support on anything other than x86, but specifying a greater
alignment would be possible. I can't think of any useful optimizations which
would use that information, but maybe someone else has ideas.

Optimizer/codegen support coming soon.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136404 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
7379b6650008fba555d5472d5c76e8efc59e8a21 28-Jul-2011 Bill Wendling <isanbard@gmail.com> The personality function should be a Function* and not just a Value*.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136392 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
814450a429325339f5445f231c24ced1bf329422 28-Jul-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> Add an optional 'bool makeAbsolute' in llvm::sys::fs::unique_file function.

If true and 'model' parameter is not an absolute path, a temp directory will be prepended.
Make it true by default to match current behaviour.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136310 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
772fe17a6d07304ae2e6b3052bbb24ebb751f0f3 27-Jul-2011 Bill Wendling <isanbard@gmail.com> Merge the contents from exception-handling-rewrite to the mainline.

This adds the new instructions 'landingpad' and 'resume'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136253 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
18dceba0bb5e38250535401ecc9d9737943d0657 27-Jul-2011 Ted Kremenek <kremenek@apple.com> Add a generic 'capacity_in_bytes' function to allow inspection of memory usage of various data structures.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136233 91177308-0d34-0410-b5e6-96231b3b80d8
apacity.h
636a02b57c3ade2eb528bda31f05556f42aa7d48 27-Jul-2011 Jakub Staszak <jstaszak@apple.com> Move static methods to the anonymous namespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136221 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
47f3513dd574535aeb40c9eb11134f0899e92269 26-Jul-2011 Eli Friedman <eli.friedman@gmail.com> Initial implementation of 'fence' instruction, the new C++0x-style replacement for llvm.memory.barrier.

This is just a LangRef entry and reading/writing/memory representation; optimizer+codegen support coming soon.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136009 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
15b35677d0d49078658e87451dc5321bb95d4034 26-Jul-2011 Jakub Staszak <jstaszak@apple.com> BranchProbability::print returns void now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135994 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
a26ec886a3a4d9d317262861d7a3de4f64bad71c 26-Jul-2011 Jakub Staszak <jstaszak@apple.com> Add BlockFrequency class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135992 91177308-0d34-0410-b5e6-96231b3b80d8
lockFrequency.h
2ecdd724538d33af61685fb933f19624f2089ae4 25-Jul-2011 Jakub Staszak <jstaszak@apple.com> Fix class description.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135948 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
6d0ac80d5e0412fc2dae8566a272159042af0006 25-Jul-2011 Jay Foad <jay.foad@gmail.com> Remove uses of std::vector from TypeBuilder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135906 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
a9203109f4ac95aa7e9624f2838e3d89623ec902 25-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert GetElementPtrInst to use ArrayRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135904 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
oFolder.h
0a2a60ace9b79164b71794ce7ff981171c61e442 22-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert IRBuilder::CreateGEP and IRBuilder::CreateInBoundsGEP to use
ArrayRef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135761 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
6d51d26a2479069f85a7676f664d6f998fc49a16 22-Jul-2011 Chandler Carruth <chandlerc@gmail.com> Add an extension point to the CommandLine library where clients can
register extra version information to be printed. This is designed to
allow those tools which link in various targets to also print those
registered targets under --version.

Currently this printing logic is embedded into the Support library
directly; a huge layering violation. This is the first step to hoisting
it out into the tools without adding lots of duplicated code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135755 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
dab3d29605a5c83db41b28176273ef55961120c1 21-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert ConstantExpr::getGetElementPtr and
ConstantExpr::getInBoundsGetElementPtr to use ArrayRef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135673 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
14732a1f42e9df9c4ca4f6403f67de27b563fcbb 21-Jul-2011 Jay Foad <jay.foad@gmail.com> Update llvm-gcc-4.2 and dragonegg after converting ConstantFolder APIs
to use ArrayRef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135672 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
12fc16f1950796486988dc91ba69797efa5bdb64 21-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert ConstantFolder APIs to use ArrayRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135671 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
ebf5f0962932032481ae306b42c96c68c3a0be95 20-Jul-2011 Logan Chien <loganchien@google.com> Merge with LLVM upstream r135568 (Jul 20th 2011)

Conflicts:
lib/Bitcode/Reader/BitcodeReader.cpp

Change-Id: Iebed76d2f7d281e742947e31d9a0b78174daf2d6
23336b449eee301f4c4dcabbd75dedf3c75c30fc 19-Jul-2011 Devang Patel <dpatel@apple.com> Reapply r135457. This needs llvm-gcc change, that I forgot to check-in yesterday.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135504 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
f51bb7cef8b0aa25506308c2ec0fcde58e1dc7ed 19-Jul-2011 Bob Wilson <bob.wilson@apple.com> Revert "Make a provision to encode inline location in a variable. This will enable dwarf writer to easily distinguish between two instances of a inlined variable in one basic block."

This reverts commit 9fec5e346efdf744b151ae6604f912908315fa7a.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135486 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
ca12a2139e7ed8b5f30df9927494dd7aae929a7c 19-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert gep_type_begin and gep_type_end to use ArrayRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135481 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
9fec5e346efdf744b151ae6604f912908315fa7a 19-Jul-2011 Devang Patel <dpatel@apple.com> Make a provision to encode inline location in a variable. This will enable dwarf writer to easily distinguish between two instances of a inlined variable in one basic block.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135457 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e 18-Jul-2011 Chris Lattner <sabre@nondot.org> land David Blaikie's patch to de-constify Type, with a few tweaks.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
onstantFolder.h
etElementPtrTypeIterator.h
RBuilder.h
oFolder.h
argetFolder.h
a71642b2a4944eaa269d881cf71b02b8e8fe5638 16-Jul-2011 Nowar Gu <nowar100@gmail.com> Merge upstream to r135343 at Sat. 16th July 2011.
a3efbb15ddd5aa9006564cd79086723640084878 15-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert CallInst and InvokeInst APIs to use ArrayRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135265 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3dcb4ef757127d69c3748dec92787520e039bd53 14-Jul-2011 Devang Patel <dpatel@apple.com> Add dump()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135200 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
d77ec6208cef2a8e615181c2bf0fc5a50a37a20b 14-Jul-2011 Devang Patel <dpatel@apple.com> Simplify and delay extracting DebugLoc elements, scope and InlinedAt, as much as possible.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135124 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
fc6d3a49867cd38954dc40936a88f1907252c6d2 13-Jul-2011 Jay Foad <jay.foad@gmail.com> Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135040 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
5fdd6c8793462549e3593890ec61573da06e3346 12-Jul-2011 Jay Foad <jay.foad@gmail.com> Second attempt at de-constifying LLVM Types in FunctionType::get(),
StructType::get() and TargetData::getIntPtrType().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134982 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
a17ce80a1e475ab3526a4787b878d55a42727d19 12-Jul-2011 Chris Lattner <sabre@nondot.org> make the IRBuilder type methods return non-const types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134959 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
2280ebd61416b73d0b6137f275b25af82e268d1f 12-Jul-2011 Bill Wendling <isanbard@gmail.com> Revert r134893 and r134888 (and related patches in other trees). It was causing
an assert on Darwin llvm-gcc builds.

Assertion failed: (castIsValid(op, S, Ty) && "Invalid cast!"), function Create, file /Users/buildslave/zorg/buildbot/smooshlab/slave-0.8/build.llvm-gcc-i386-darwin9-RA/llvm.src/lib/VMCore/Instructions.cpp, li\
ne 2067.
etc.

http://smooshlab.apple.com:8013/builders/llvm-gcc-i386-darwin9-RA/builds/2354

--- Reverse-merging r134893 into '.':
U include/llvm/Target/TargetData.h
U include/llvm/DerivedTypes.h
U tools/bugpoint/ExtractFunction.cpp
U unittests/Support/TypeBuilderTest.cpp
U lib/Target/ARM/ARMGlobalMerge.cpp
U lib/Target/TargetData.cpp
U lib/VMCore/Constants.cpp
U lib/VMCore/Type.cpp
U lib/VMCore/Core.cpp
U lib/Transforms/Utils/CodeExtractor.cpp
U lib/Transforms/Instrumentation/ProfilingUtils.cpp
U lib/Transforms/IPO/DeadArgumentElimination.cpp
U lib/CodeGen/SjLjEHPrepare.cpp
--- Reverse-merging r134888 into '.':
G include/llvm/DerivedTypes.h
U include/llvm/Support/TypeBuilder.h
U include/llvm/Intrinsics.h
U unittests/Analysis/ScalarEvolutionTest.cpp
U unittests/ExecutionEngine/JIT/JITTest.cpp
U unittests/ExecutionEngine/JIT/JITMemoryManagerTest.cpp
U unittests/VMCore/PassManagerTest.cpp
G unittests/Support/TypeBuilderTest.cpp
U lib/Target/MBlaze/MBlazeIntrinsicInfo.cpp
U lib/Target/Blackfin/BlackfinIntrinsicInfo.cpp
U lib/VMCore/IRBuilder.cpp
G lib/VMCore/Type.cpp
U lib/VMCore/Function.cpp
G lib/VMCore/Core.cpp
U lib/VMCore/Module.cpp
U lib/AsmParser/LLParser.cpp
U lib/Transforms/Utils/CloneFunction.cpp
G lib/Transforms/Utils/CodeExtractor.cpp
U lib/Transforms/Utils/InlineFunction.cpp
U lib/Transforms/Instrumentation/GCOVProfiling.cpp
U lib/Transforms/Scalar/ObjCARC.cpp
U lib/Transforms/Scalar/SimplifyLibCalls.cpp
U lib/Transforms/Scalar/MemCpyOptimizer.cpp
G lib/Transforms/IPO/DeadArgumentElimination.cpp
U lib/Transforms/IPO/ArgumentPromotion.cpp
U lib/Transforms/InstCombine/InstCombineCompares.cpp
U lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
U lib/Transforms/InstCombine/InstCombineCalls.cpp
U lib/CodeGen/DwarfEHPrepare.cpp
U lib/CodeGen/IntrinsicLowering.cpp
U lib/Bitcode/Reader/BitcodeReader.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134949 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
f362affa3a695164a94d275fb44d18f44ebb855a 11-Jul-2011 Jay Foad <jay.foad@gmail.com> De-constify Types in FunctionType::get().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134888 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
687dc24e1d17d3d8bb4f4f095929db16f65f3067 10-Jul-2011 Jakub Staszak <jstaszak@apple.com> - Make BranchProbability constructor public.
- Add getCompl() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134857 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
1afcace3a3a138b1b18e5c6270caa8dae2261ae2 09-Jul-2011 Chris Lattner <sabre@nondot.org> Land the long talked about "type system rewrite" patch. This
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
assManagerBuilder.h
c36ed70ec5c3c99f9559cfaa199373f60219a2be 09-Jul-2011 Chris Lattner <sabre@nondot.org> add a #include


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134822 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
9da9934e27dfb48de77b80a3e20ed2d869b52024 06-Jul-2011 Jakub Staszak <jstaszak@apple.com> Introduce "expect" intrinsic instructions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134516 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
9c04b5bd282bd5d03ab2114339d670ca95073664 06-Jul-2011 Dan Gohman <gohman@apple.com> Remove the ObjC ARC passes from the default optimization list, and add
extension points to be used by clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134444 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
c5e913879756497ac78f9243af84883d850ef630 05-Jul-2011 Devang Patel <dpatel@apple.com> Speculatively revert r134431.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134440 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
15cf76ca758a41185e82f8d7ba963dcbc7ce46e6 05-Jul-2011 Devang Patel <dpatel@apple.com> Clear debug loc while updating insert point.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134431 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
598179ee2f5a31d4b2d3932963a3714ab235ec2e 05-Jul-2011 Tobias Grosser <grosser@fim.uni-passau.de> SuccIterator on bbs without terminator insts

Remove the assert that triggers if SuccIterator is constructed for a basic block
without a terminator instruction. Instead of triggering an assert a succ_end()
iterator is returned. This models a basic block with zero successors and allows
us to use F->viewCFG() on incompletely constructed functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134398 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
53d48080e55bf0c99cb7ca9de5b15a084d7324b5 01-Jul-2011 Nowar Gu <nowar100@gmail.com> Merge upstream to r134237 at Fri. 1st July 2011.

Conflicts:
lib/Target/ARM/ARMCodeEmitter.cpp
3290239daff266dce1051dfd103106956e05a7b1 30-Jun-2011 Andrew Trick <atrick@apple.com> Added IRBuilder::SetInsertPoint(Use) to find a valid insertion point
that dominates the given Use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134111 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
45f454d5691cc23584992974f4460728a02186c8 30-Jun-2011 Andrew Trick <atrick@apple.com> whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134110 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
44eb49c2a191108df801977c8e3dc03466c6c02a 23-Jun-2011 Jakub Staszak <jstaszak@apple.com> Introduce BlockFrequency analysis for BasicBlocks.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133766 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
8012bd3687ad40b9bb18505c51ab5cf88eb00c45 23-Jun-2011 Nowar Gu <nowar100@gmail.com> Merge upstream to r133718, Fri. 24th June 2011.
385f46146ca2209c0ebc1df07d97f35367c20f85 23-Jun-2011 Rafael Espindola <rafael.espindola@gmail.com> Add missing file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133717 91177308-0d34-0410-b5e6-96231b3b80d8
Env.h
5417eed2014a2fb46057bdd9931e878968b810dc 23-Jun-2011 Dylan Noblesmith <nobled@dreamwidth.org> Support: make floating-exception header private

It has only one user. This eliminates the last include of
config.h from the public headers -- ideally, config.h
shouldn't even be installed by `make install` anymore.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133713 91177308-0d34-0410-b5e6-96231b3b80d8
Env.h
4e5885dc0f6aa0d5e095d79996955042d7b82b8d 23-Jun-2011 Dylan Noblesmith <nobled@dreamwidth.org> Don't include config.h in public headers

Replace it with llvm-config.h, which defines a subset of
config.h's macros "so that they can be in exported headers
and won't override package specific directives", e.g.,
PACKAGE_NAME.

Endian.h wasn't using any macros at all though, so just delete
the include there instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133712 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
ystem_error.h
95c3e48f9557adb6064d580684bb14cacec2f826 23-Jun-2011 Jay Foad <jay.foad@gmail.com> Reinstate r133513 (reverted in r133700) with an additional fix for a
-Wshorten-64-to-32 warning in Instructions.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133708 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
e59fbc04ad343435705c28b3cf7038d65fe4af0a 23-Jun-2011 Eric Christopher <echristo@apple.com> Revert r133513:

"Reinstate r133435 and r133449 (reverted in r133499) now that the clang
self-hosted build failure has been fixed (r133512)."

Due to some additional warnings.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133700 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
bb5c18c80e7ae4ce49eb9067b664f0559ec50965 23-Jun-2011 Nowar Gu <nowar100@gmail.com> Merge upstream to r133679 at Thu. 23th Jun 2011.
cd35e09a4a3c640b9da0b1dfe3548a605c929ae5 21-Jun-2011 Jay Foad <jay.foad@gmail.com> Reinstate r133435 and r133449 (reverted in r133499) now that the clang
self-hosted build failure has been fixed (r133512).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133513 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
a88a0ca8082006b37d14d8aee4a644b20bae8bc9 21-Jun-2011 Chad Rosier <mcrosier@apple.com> Revert r133435 and r133449 to appease buildbots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133499 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
72f5f313d87558958696ce69593d82efcdfa9128 20-Jun-2011 Jay Foad <jay.foad@gmail.com> Change how PHINodes store their operands.

Change PHINodes to store simple pointers to their incoming basic blocks,
instead of full-blown Uses.

Note that this loses an optimization in SplitCriticalEdge(), because we
can no longer walk the use list of a BasicBlock to find phi nodes. See
the comment I removed starting "However, the foreach loop is slow for
blocks with lots of predecessors".

Extend replaceAllUsesWith() on a BasicBlock to also update any phi
nodes in the block's successors. This mimics what would have happened
when PHINodes were proper Users of their incoming blocks. (Note that
this only works if OldBB->replaceAllUsesWith(NewBB) is called when
OldBB still has a terminator instruction, so it still has some
successors.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133435 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
907af0f20f58f2ea26da7ea64e1f094cd6880db7 17-Jun-2011 Nowar Gu <nowar100@gmail.com> Merge upstream to r133240 at Fri. 17th Jun 2011.

Conflicts:
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/Target/ARM/ARMCodeEmitter.cpp
9fbd318d36e618fb08fb53bb48b7c848e617a8a7 16-Jun-2011 John McCall <rjmccall@apple.com> The ARC language-specific optimizer. Credit to Dan Gohman.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133108 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
cbda61a468b4a2b33a54781d65023da7d9c8d291 13-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Fix spelling and sort CMakeLists.txt.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132908 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
ystem_error.h
f289df2d9544bd3a0934651daa20e589544413ba 11-Jun-2011 Andrew Trick <atrick@apple.com> Branch profiling: floating-point avoidance.

Patch by: Jakub Staszak!

Introduces BranchProbability. Changes unsigned to uint32_t all over and
uint64_t only when overflow is expected.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132867 91177308-0d34-0410-b5e6-96231b3b80d8
ranchProbability.h
c610017269cf193d6a16f7288c2525d8d3adb566 10-Jun-2011 Richard Osborne <richard@xmos.com> Fix example code in comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132844 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
dd137903e47fdb5822724baaddae88f119badc86 01-Jun-2011 Joerg Sonnenberger <joerg@bec.de> Add new -d option to tblgen. It writes a make(1)-style dependency file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132395 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
329cf66e84ae73422e954d493b610aa501902d0c 26-May-2011 Charles Davis <cdavis@mines.edu> Fix definitions of UOP_SaveXMM128, UOP_SaveXMM128Big, and UOP_PushMachFrame
to match Microsoft's definitions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132112 91177308-0d34-0410-b5e6-96231b3b80d8
in64EH.h
8480aba5ec7438570cd090abcf3f6f52dd15352e 22-May-2011 Chris Lattner <sabre@nondot.org> another typo


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131854 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
947f0a8efa68e6fe4aacfec0f504428d21804ba5 22-May-2011 Chris Lattner <sabre@nondot.org> fix comment typo


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131853 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
9bb4a2ae8a0ce6404b9752f93ceebb2d00401997 22-May-2011 Chris Lattner <sabre@nondot.org> random comment cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131829 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
dcef3469486e187ea038938df7e40bd5ff922bff 22-May-2011 Chris Lattner <sabre@nondot.org> remove StandardPasses, it has been replaced with PassManagerBuilder


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131827 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
92a9cb6594e22e2e273f61922226616bf0b943df 22-May-2011 Chris Lattner <sabre@nondot.org> add support for LTO passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131820 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
f2007b3c196909be1ee9a8ac4df0ebdfea82f601 22-May-2011 Charles Davis <cdavis@mines.edu> Include DataTypes.h from this header to get the uint*_t types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131817 91177308-0d34-0410-b5e6-96231b3b80d8
in64EH.h
f5be7bdc909dae98fab6530c6ab378d6d2618443 22-May-2011 Chris Lattner <sabre@nondot.org> add an extension point mechanism that allow plugins to add stuff to
the pass manager.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131814 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
0cf51561eddd659a7b427f40144e22363fd95a57 22-May-2011 Nick Lewycky <nicholas@mxc.ca> Add CreateLifetimeStart and CreateLifetimeEnd to the IRBuilder, with plans to
use these soon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131812 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ae6d5dc715ec7d3edd825a4b8ca9f6f9a3fbfb58 21-May-2011 Chris Lattner <sabre@nondot.org> add a new PassManagerBuilder class to replace StandardPasses.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131807 91177308-0d34-0410-b5e6-96231b3b80d8
assManagerBuilder.h
21c60904ce6b937cb0c8744375e9c1a95fe0e495 21-May-2011 Eli Friedman <eli.friedman@gmail.com> PR7952: Make isa<> use the same logic as cast<>, so that they both work
consistently.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131803 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
dc5948d47205fd05184a25251e128db6a47b25c2 21-May-2011 Andrew Trick <atrick@apple.com> Have Program::Wait return -2 for crashed and timeouts instead of embedding
info in the error message. Per Dan's request.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131780 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
097f9a94f660f99ea2aad62da301e8409af391a7 19-May-2011 Eli Friedman <eli.friedman@gmail.com> Fix up the new StandardPasses to run the same scalarrepl passes as the old one.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131665 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
2536f801dc8161bf7cbd123abe9e191d0ce40cd1 19-May-2011 Francois Pichet <pichet2000@gmail.com> Fix the MSVC build.
Use a set of overloaded functions instead of template function for CreatePassFn.

It seems that template deduction for functions type that differs only by return type doesn't work with MSVC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131624 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
fa89218a438c0fcafb40775bdc04dbe95c59fba3 19-May-2011 Charles Davis <cdavis@mines.edu> Fix build issues with headers, which I discovered by actually using them.

Also, convert all the inline functions on UnwindInfo into methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131622 91177308-0d34-0410-b5e6-96231b3b80d8
in64EH.h
1573f36aeee1066f10d5cb8d14f987b78cd8be69 19-May-2011 David Chisnall <csdavec@swan.ac.uk> Some better type safety enforcement in the standard pass list, along with some small tidies and some fixes for bugs that the stricter checking found.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131592 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
10a818809df9fe1c171451d0bb8213716b12638f 18-May-2011 Eli Friedman <eli.friedman@gmail.com> Third pass at allowing plugins to modify default passes. This time with a tweak so that we don't depend on an uninitialized argument.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131581 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
2d48ad67cd3c18098edd9ed14437139bdf5b5f53 18-May-2011 Devang Patel <dpatel@apple.com> Set debug location while setting insertion point.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131575 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f9a74cf0694a1670c789eb559efd2b3afbb0da1b 18-May-2011 Eli Friedman <eli.friedman@gmail.com> Revert r131556; it's breaking buildbots/clang tests.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131567 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
b2a00dca1b03cea98ebb557dba56802109c11c19 18-May-2011 David Chisnall <csdavec@swan.ac.uk> Second pass at allowing plugins to modify default passes. This time without bonus inter-library dependencies.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131556 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
090a929aeafb1315b4a03e3f64904ba1ccc32388 15-May-2011 Charles Davis <cdavis@mines.edu> Get rid of extern "C" from the Win64 EH header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131381 91177308-0d34-0410-b5e6-96231b3b80d8
in64EH.h
c36849c4037a0a79945e9b03a4a31e81dbdfbece 15-May-2011 Charles Davis <cdavis@mines.edu> Add a header containing definitions used to implement Win64 exception handling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131380 91177308-0d34-0410-b5e6-96231b3b80d8
in64EH.h
201e6cdc39d5dca4e70cdd331f6f5055b3af3534 12-May-2011 Devang Patel <dpatel@apple.com> Doug convinced me that DW_AT_APPLE_objc_complete_type is more appropriate name.
s/DW_AT_APPLE_objc_class_extension/DW_AT_APPLE_objc_complete_type/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131244 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
b11f80e94b590c90d07254dfa2406cf504e09cd3 12-May-2011 Devang Patel <dpatel@apple.com> Let Objective-C front-end identify class extension, in dwarf output, using an attribute DW_AT_APPLE_objc_class_extension.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131238 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
7c863eb8cc34c8ae97ae90672758eb6637b1125f 11-May-2011 Andrew Trick <atrick@apple.com> Bugpoint support for miscompilations that result in a crash.

This change allows bugpoint to pinpoint the "opt" pass and bitcode
segment responsible for a crash caused by miscompilation. At least it
works well for me now, without having to create any custom execution
wrappers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131186 91177308-0d34-0410-b5e6-96231b3b80d8
rogram.h
da07192f8e1127c1d7044ca4657cd5f2de92e564 11-May-2011 Nick Lewycky <nicholas@mxc.ca> Revert r131155 for now. It makes VMCore depend on Analysis and Transforms
headers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131159 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
0fa92e55c3b9a7c7cadd9dde0193fbbecdde977c 10-May-2011 David Chisnall <csdavec@swan.ac.uk> Add support for plugins add passes to the default set of passes. The standard set of passes used by front ends can now be modified by LLVM plugins, without needing to modify any front ends.

Still to do:

- Allow replacing / removing passes (infrastructure there, just needs an infrastructure exposed)
- Defining sets of passes to be added or removed as a group
- Extending the support to allow user-defined groups of optimisations
- Allow plugins to be specified for loading automatically (e.g. from plugins.conf or some similar mechanism)

Reviewed by Nick Lewycky.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131155 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
6481ac152c1539eed76febde6e4b9b340ae674a4 06-May-2011 Shih-wei Liao <sliao@google.com> Move to std::pair instead of TimersToPrintEntry.

Merging back to upstream's solution.

Change-Id: I527b1449d1184ac4d72a242b94486e7709d24b5c
imer.h
10c66120780527d5b75b2ec3da3457abe9333cbd 05-May-2011 Nick Lewycky <nicholas@mxc.ca> Fix typo. No functional change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130949 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
2169ad8c60c9d4fcc3665836be6c5f9302b1c4ec 05-May-2011 Ted Kremenek <kremenek@apple.com> Add explicit 'unregister' method to CrashRecoveryConextCleanupRegistrar.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130885 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
6a0ce750f795be672b0cbe58d963d4d49d2cd90c 04-May-2011 Devang Patel <dpatel@apple.com> If builder is initialized using an instruction as insertion point, then use the instruction's debug location as current debug location.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130874 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ad20681cdeaf72383891b153b925624aa585be4d 03-May-2011 Duncan Sands <baldrick@free.fr> Implement some basic simplifications involving min/max, for example
max(a,b) >= a -> true. According to my super-optimizer, these are
by far the most common simplifications (of the -instsimplify kind)
that occur in the testsuite and aren't caught by -std-compile-opts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130780 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
5d86759e0ff44e07ead4982673fe10abec50f765 28-Apr-2011 Ted Kremenek <kremenek@apple.com> Add MemoryBuffer::getBufferKind() to report whether a memory buffer uses malloc'ed or mmap'ed memory. This is for performance analysis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130432 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
734d7c2a7e6cc12776d67689d018eb1bd1c4cd72 26-Apr-2011 Chris Lattner <sabre@nondot.org> make a couple of changes to the standard pass pipeline:
1. Only run the early (in the module pass pipe) instcombine/simplifycfg
if the "unit at a time" passes they are cleaning up after runs.

2. Move the "clean up after the unroller" pass to the very end of the
function-level pass pipeline. Loop unroll uses instsimplify now,
so it doesn't create a ton of trash. Moving instcombine later allows
it to clean up after opportunities are exposed by GVN, DSE, etc.

3. Introduce some phase ordering tests for things that are specifically
intended to be simplified by the full optimizer as a whole.

This resolves PR2338, and is progress towards PR6627, which will be
generating code that looks similar to test2.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130241 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
3443493cc71c46cf71c90e478403017063a035f0 26-Apr-2011 Chris Lattner <sabre@nondot.org> add an m_ConstantInt matching predicate that binds to a uint64_t, and add an m_OneUse()
predicate that matches if the subexpr has a single use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130235 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
eab631362d676c0113e052cc7e877eef4da544b8 22-Apr-2011 Frits van Bommel <fvbommel@gmail.com> Comment out some unused parameter names to silence out-of-tree -Wunused warnings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129988 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
06161fcdd6f8fe80aff090f9c4d75e1cab2b7da2 22-Apr-2011 Devang Patel <dpatel@apple.com> Add DW_OP_bit_piece.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129945 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
562ae4bba616de518f76a73618c96835637c8d4a 19-Apr-2011 Chris Lattner <sabre@nondot.org> add a helper method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129806 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1da29dd3f85f5e3f50365d8e75efb8cbfba84381 19-Apr-2011 Ted Kremenek <kremenek@apple.com> Add BumpPtrAllocator::getTotalMemory() to allow clients to query how much memory a BumpPtrAllocator allocated.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129727 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
e9db5e29e3af91eec572bfeb8dcec908213298b0 16-Apr-2011 Devang Patel <dpatel@apple.com> Introduce support to encode Objective-C property information in debugging information generated for an interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129624 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
7a2bdde0a0eebcd2125055e0eacaca040f0b766c 15-Apr-2011 Chris Lattner <sabre@nondot.org> Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
rettyStackTrace.h
rogram.h
egex.h
ignals.h
imeValue.h
b90e1d5aaf5b43309a0643b3248dd95001b3d196 13-Apr-2011 Nick Lewycky <nicholas@mxc.ca> Use positive values since the value type is unsigned. Fixes a warning on the
llvm-gcc-native-mingw32 builder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129457 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
cb4e4eae1afaa243c0654bc5dd668f9eb5085f06 12-Apr-2011 Nick Lewycky <nicholas@mxc.ca> Make IRBuilder support StringRef for building strings.

Also document that the global variables produced are mergable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129330 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
8feda7ee332f1f91e4d3a42d9f7ad729012ed174 09-Apr-2011 Jush Lu <jush.msn@gmail.com> Merge upstream r129128
5fc25cccff3cdbfd34d08b9c1233f9af1879018c 09-Apr-2011 Chris Lattner <sabre@nondot.org> fix doc comment bug, noticed by Jochen


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129186 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
c60a47509162412c4a776abae28402541bb73b15 07-Apr-2011 Nick Lewycky <nicholas@mxc.ca> Add support for ArrayRef in IRBuilder's CreateCall.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129039 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
4841121580df86b327013d1fab2a9339be487bce 06-Apr-2011 Nick Lewycky <nicholas@mxc.ca> Add an empty key for DebugLoc so that you can store an empty DebugLoc in a
DenseMap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128994 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
af4db5fc95f5d846c48e80f4266687a34a2975f4 06-Apr-2011 Nick Lewycky <nicholas@mxc.ca> Support using DebugLoc's in a DenseMap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128988 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
40f16cf91d8469b8198990d2649a8cc81b558277 05-Apr-2011 Andrew Trick <atrick@apple.com> Fix a typo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128912 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ce96902d88d473697f05c0465952dae374be564e 05-Apr-2011 Andrew Trick <atrick@apple.com> Added *hidden* flags -print-options and -print-all-options so
developers can see if their driver changed any cl::Option's. The
current implementation isn't perfect but handles most kinds of
options. This is nice to have when decomposing the stages of
compilation and moving between different drivers. It's also a good
sanity check when comparing results produced by different command line
invocations that are expected to produce the comparable results.

Note: This is not an attempt to prolong the life of cl::Option. On the
contrary, it's a placeholder for a feature that must exist when
cl::Option is replaced by a more appropriate framework. A new
framework needs: a central option registry, dynamic name lookup,
non-global containers of option values (e.g. per-module,
per-function), *and* the ability to print options values and their defaults at
any point during compilation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128910 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
c12d4c93f94e271d32e60fae1d521c4fca39ae1e 03-Apr-2011 Frits van Bommel <fvbommel@gmail.com> Remove the LLVMContext& arguments from *Folder constructors, as they don't seem to be used anywhere.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128793 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
56584fcbfd541c20b914f7cb58a38bf1a16f55c0 31-Mar-2011 Michael J. Spencer <bigcheesegs@gmail.com> Fix whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128631 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
c9c08fb3a7fb5e8ea3e1477a88507704c7a70ba1 31-Mar-2011 Michael J. Spencer <bigcheesegs@gmail.com> Switch FileRemover from PathV1 to V2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128630 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
3ecfc861b4365f341c5c969b40e1afccde676e6f 30-Mar-2011 Jay Foad <jay.foad@gmail.com> Remove PHINode::reserveOperandSpace(). Instead, add a parameter to
PHINode::Create() giving the (known or expected) number of operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128537 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
11d1803770f54dad441007a6ebafc70cb9395695 22-Mar-2011 Rafael Espindola <rafael.espindola@gmail.com> We don't need a null terminator for the output file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128098 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
3311d951e22b133207ed6f8e384d80f0970a7fb3 22-Mar-2011 Ted Kremenek <kremenek@apple.com> Properly initialize all fields in CrashReporterCleanupContext. This caused the buildbot failure earlier.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128071 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
afc9e06021d4682d0faab2bdad57d6252dfca946 22-Mar-2011 Ted Kremenek <kremenek@apple.com> Rework CrashRecoveryContextCleanup to provide a simpler way to create cleanup objects, and provide a new cleanup for
decrementing reference counts of objects with intrusive reference counts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128055 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
b52fde4185cd724f51aae4018b0f8278732379c7 21-Mar-2011 Ted Kremenek <kremenek@apple.com> Provide a means for CrashRecovery clients to determine if code is currently running while crash recovery cleanups are being processed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128008 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
1a06d5721acb9a2b69217fc8872ed5b14a482104 19-Mar-2011 Ted Kremenek <kremenek@apple.com> Tweak CrashRecoveryContextCleanup to provide an easy method for clients to select between 'delete' and 'destructor' cleanups, and allow the destructor of CrashRecoveryContextCleanupRegister to be pseudo re-entrant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127929 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
84161c2f683357938cf283f40bd1ef3e61c317f5 18-Mar-2011 Jim Grosbach <grosbach@apple.com> Tidy up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127883 91177308-0d34-0410-b5e6-96231b3b80d8
emory.h
289bdccddf231fa971ea94af4fad2a62d34cbae0 18-Mar-2011 Ted Kremenek <kremenek@apple.com> Tweak CrashRecoveryContextCleanup::createCleanup() to use the 'delete' cleanup as opposed to the 'destructor' cleanup (reclaims more memory).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127865 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
0597234028d14e454673bec8d8196285a9712364 18-Mar-2011 Ted Kremenek <kremenek@apple.com> Add new CrashRecoveryContextCleanup subclass: CrashRecoveryContextDeleteCleanup. This deletes the object, not just calls its destructor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127855 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
a4f983970133c934d6af66dc8dc50fbf908c31dd 18-Mar-2011 Ted Kremenek <kremenek@apple.com> Augment CrashRecoveryContext to have registered "cleanup" objects that can be used to release resources during a crash.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127849 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
9916d2ac3941513e301e39dee76a981c7caab694 17-Mar-2011 Rafael Espindola <rafael.espindola@gmail.com> Use RequiresNullTerminator to create buffers without a null terminator
instead of copying.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127835 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
b121bfcc22660b1bdfb1183b191b6516988bcaf5 14-Mar-2011 John McCall <rjmccall@apple.com> Version N of the llvm_unreachable patch: VC++ doesn't recognize that abort()
doesn't return, so just go back to using the old runtime function instead
of trying to use abort() when __builtin_unreachable (or an equivalent) isn't
supported.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127629 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
fb32507d099849ab1fa3ee43f4578c3a0e971736 14-Mar-2011 John McCall <rjmccall@apple.com> Okay, some compilers complain if you provide the exception-specification
where none was before. Just don't declare it and hope it's declared
in every translation unit that needs it.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127612 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f32b3c54f020e9416aa74410d43c2452e57d3ae0 14-Mar-2011 John McCall <rjmccall@apple.com> Fix the exception-specification of abort() when declaring it in C++.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127610 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
2f9a9ed785416a7350f30141fcc405b69a1b9d5d 14-Mar-2011 John McCall <rjmccall@apple.com> Make llvm_unreachable evaluate to __builtin_unreachable() in -Asserts
builds, which was the apparent consensus of PR8973 and llvmdev.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127608 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
046d0bdaf01b114e7536a802f3c3dc5862ec5c7b 14-Mar-2011 Mikhail Glushenkov <foldr@codedgers.com> Emacs mode string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127576 91177308-0d34-0410-b5e6-96231b3b80d8
ystem_error.h
f7fdad15d910fc27bc9334faab5b71c101455e1a 10-Mar-2011 Rafael Espindola <rafael.espindola@gmail.com> Add r127409 back now that the windows file was updated.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127417 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
athV1.h
4b0e1f127841590d61783cda21babbdd79e49fae 10-Mar-2011 Jakob Stoklund Olesen <stoklund@2pi.dk> Revert r127409 which broke all the Windows bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127413 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
athV1.h
7deb187736b09aa0805b7d9902f499e41feefccc 10-Mar-2011 Rafael Espindola <rafael.espindola@gmail.com> Add support for MemoryBuffers that are not null terminated and add
support for creating buffers that cover only a part of a file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127409 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
athV1.h
cc7665f5895e1dd9682ee21d1e755d0de28c161b 09-Mar-2011 Jush Lu <jush.msn@gmail.com> Update build scripts after merge r127116
ataTypes.h
b5530586d68bd25831a6796b5d3199cb0769a35c 09-Mar-2011 Jush Lu <jush.msn@gmail.com> Merge upstream r127116
0b77e0f07da7817c2b31aa010ee2b3e035f200ca 02-Mar-2011 Dan Gohman <gohman@apple.com> Make pred_iterator DefaultConstructible, and add an accessor to
retrieve the underlying getOperandNo() value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126804 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
7ee42e6a28784dcf6a6fa25c776362044eea6a91 01-Mar-2011 Dan Gohman <gohman@apple.com> Escape graph edge labels.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126788 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
d50f3f8731821bb9177bcaa44a0c18f7a26b3d80 01-Mar-2011 Dan Gohman <gohman@apple.com> Remove the showline argument from the SMDiagnostic constructor
which constructs a diagnostic with no line to show.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126787 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
b0cdabb6c2413dff2a8d68b30ff31fd5920c4b37 01-Mar-2011 Dan Gohman <gohman@apple.com> Code simplification.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126786 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
9f0512d85ffb44b9513ebc867f4d48d33726257a 01-Mar-2011 Dan Gohman <gohman@apple.com> Change directory_entry::path() to return a const std::string & instead of
a StringRef, for the benefit of clients that want the result as a
nul-terminated string. Clients that expect a StringRef will get one via
the implicit conversion.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126784 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
32e20a45e5c838c139ffc5650177842796b5a77d 01-Mar-2011 Chris Lattner <sabre@nondot.org> add a missing const qualifier for consistency.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126742 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
4d03e416be8cf1f0f502118826b7cbaeec0b79b2 28-Feb-2011 jush <jush.msn@gmail.com> Merge LLVM upstream r119309 into honey
a91f86c49a63f7a37c662c3a9553055bff33a84b 27-Feb-2011 Tobias Grosser <grosser@fim.uni-passau.de> Pass the graph to the DOTGraphTraits.getEdgeAttributes().

This follows the interface of getNodeAttributes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126562 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
49ff8a76d02f1c5f8da7cd2675be191c7be109c4 25-Feb-2011 Nick Lewycky <nicholas@mxc.ca> Update the NoFolder to work with current IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126479 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
fae7f6de9ec18a6a8331b7ddbf51fd5f5c3e4288 24-Feb-2011 Michael J. Spencer <bigcheesegs@gmail.com> Depricate PathV1::isAbsolute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126348 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
f3a32140492d8df34439a910290f3c16b08023cd 19-Feb-2011 Devang Patel <dpatel@apple.com> Remove unused tag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125988 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
98d9f5d90dacf5664fe55bc98a03322d2da68a7c 19-Feb-2011 Devang Patel <dpatel@apple.com> Provide tag strings for llvm specific tags.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125986 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
0160c8a8bc1c1f3c3a65a44cb614bf03ef82a967 18-Feb-2011 Chris Lattner <sabre@nondot.org> Now that -loop-idiom uses TargetLibraryInfo properly, it doesn't
need to be pulled out of the pass manager when the user specifies
-fno-builtin. It can intelligently determine which libcalls to
optimize based on what is enabled in TargetLibraryInfo. This
allows -fno-builtin-foo to work someday.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125981 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
a84b2ffac515d8545399e8a6037552f622e2154c 18-Feb-2011 Chris Lattner <sabre@nondot.org> rearrange some comments, no functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125972 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
8a670edf1b9dc1acb1b571ccc57a4f7e9fec5865 16-Feb-2011 Nick Lewycky <nicholas@mxc.ca> Teach PatternMatch that splat vectors could be floating point as well as
integer. Fixes PR9228!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125613 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
63cc3a85cc10093f83f76ea9192f77929b58569e 11-Feb-2011 Zhanyong Wan <wan@google.com> Adds llvm::sys::path::is_separator() to test whether a char is a path separator
on the host OS. Reviewed by dgregor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125406 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
81baf14fdfa29c22a08d609144c285169e23a247 10-Feb-2011 Chris Lattner <sabre@nondot.org> switch the constantexpr, target folder, and IRBuilder interfaces
for NSW/NUW binops to follow the pattern of exact binops. This
allows someone to use Builder.CreateAdd(x, y, "tmp", MaybeNUW);


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125270 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
argetFolder.h
f3e3f21db19512067ee9f6b7b99eae16d907bed2 10-Feb-2011 Douglas Gregor <dgregor@apple.com> Rip out realpath() support. It's expensive, and often a bad idea, and
I have another way to achieve the same goal.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125239 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
025feadb973272d5c5097bb72cb2f6fef44474d3 09-Feb-2011 Douglas Gregor <dgregor@apple.com> Add llvm::sys::path::canonical(), which provides the canonicalized
name of a path, after resolving symbolic links and eliminating excess
path elements such as "foo/../" and "./".

This routine still needs a Windows implementation, but I don't have a
Windows machine available. Help? Please?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125228 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
aeaf3d484b4d4c35e8794378c4b6cfbbde718dd1 09-Feb-2011 Chris Lattner <sabre@nondot.org> Rework InstrTypes.h so to reduce the repetition around the NSW/NUW/Exact
versions of creation functions. Eventually, the "insertion point" versions
of these should just be removed, we do have IRBuilder afterall.

Do a massive rewrite of much of pattern match. It is now shorter and less
redundant and has several other widgets I will be using in other patches.
Among other changes, m_Div is renamed to m_IDiv (since it only matches
integer divides) and m_Shift is gone (it used to match all binops!!) and
we now have m_LogicalShift for the one client to use.

Enhance IRBuilder to have "isExact" arguments to things like CreateUDiv
and reduce redundancy within IRbuilder by having these methods chain to
each other more instead of duplicating code.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125194 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
atternMatch.h
413c3bd9fd820a0969cd0e84124f3a3fadc5cc61 09-Feb-2011 Chris Lattner <sabre@nondot.org> enrich folder interfaces around exactness.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125191 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
b4cc031a3e1306fea74c9211d50c5cde6d9a8cd5 08-Feb-2011 Rafael Espindola <rafael.espindola@gmail.com> Don't open the file again in the gold plugin. To be able to do this, update
MemoryBuffer::getOpenFile to not close the file descriptor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125128 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
163a84bbce69947aa314760e6068c704fc0df7a0 07-Feb-2011 Duncan Sands <baldrick@free.fr> Add an m_Div pattern for matching either a udiv or an sdiv and use it
to simplify the "(X/Y)*Y->X when the division is exact" transform.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125004 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
1dbf0df996bba398a70abccc714b1a9652330014 07-Feb-2011 Duncan Sands <baldrick@free.fr> Add IRBuilder methods for creating an exact udiv, like for exact sdiv.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125002 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
2d7a53aec2c6426eba9e5dd6462cc9e86432b410 04-Feb-2011 Jason W Kim <jason.w.kim.2009@gmail.com> Teach ARM/MC/ELF about EF_ARM_EABI_VERSION. The magic number is set to
5 to match the current doc.
Added FIXME reminder Make it really configurable later.





git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124899 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
b0cfa6cab85ce19c8ecaf9cdd3e34a3593d0b001 03-Feb-2011 Daniel Dunbar <daniel@zuster.org> raw_fd_ostream: Add a SetUseAtomicWrites() method (uses writev).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124771 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
f9e4a986c03fe3af7dbc9de0b0a9251280fbdf41 01-Feb-2011 Duncan Sands <baldrick@free.fr> Add a m_Undef pattern for convenience. This is so that code that uses
pattern matching can also pattern match undef, creating a more uniform
style.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124657 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
93c780288df9631d11f996b010b2212a8b44d4d3 01-Feb-2011 Duncan Sands <baldrick@free.fr> Add a m_SignBit pattern for convenience.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124656 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
7681c6da606efcc392f76b8acea8301cb5fc7a0a 01-Feb-2011 Duncan Sands <baldrick@free.fr> Have m_One also match constant vectors for which every element is 1.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124655 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
0cf5e3d51dd455a174a8f00cfa6b63c11e535434 23-Jan-2011 Rafael Espindola <rafael.espindola@gmail.com> Delay the creation of eh_frame so that the user can change the defaults.
Add support for SHT_X86_64_UNWIND.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124059 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
1c13026e8f94bd332c0979baa9c777da99d48736 23-Jan-2011 Rafael Espindola <rafael.espindola@gmail.com> Remove more duplicated code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124056 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
b83e60e602768238d5c56aee92537f8d5470a268 22-Jan-2011 Chris Lattner <sabre@nondot.org> add DW_TAG for rvalue refs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124019 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
b84551a14f1c96942eb82408652e633543b0961e 20-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Object: Add ELF support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123896 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
229b22132b656f78f79d84dcdea8d4fe5f03b689 20-Jan-2011 Cameron Zwarich <zwarich@apple.com> Remove an unnecessary #include.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123877 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
6bbf5eb32f35c6bbef5434ba06339a10c860d86c 17-Jan-2011 Jim Grosbach <grosbach@apple.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123665 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
5860c6c09e58c3f6d19cee4458320c42a5d17298 17-Jan-2011 Devang Patel <dpatel@apple.com> Revert rr123550. It causes clang build failure on darwin9.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123661 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
36852d3681ec239df82e1fd86d93a91a9f49e592 15-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/GraphWriter: Replace all internal uses of PathV1 with PathV2. The external API still uses PathV1.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123550 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
28f0ed5c9de4a68f34c0219d4ab83652c4647150 15-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Add identify_magic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123548 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
d6cdf1d3cb0263c413684aa20cb8aa91f9e128de 15-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Implement get_magic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123544 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
4de2c7654289bb655edfad70c18a4a1352827bd0 15-Jan-2011 Chris Lattner <sabre@nondot.org> Fix m_Not and m_Neg to not match random ConstantInt's. Before
these would try hard to match constants by inverting the bits
and recursively matching. There are two problems with this:
1) some patterns would match when we didn't want them to (theoretical)
2) this is insanely expensive to do, and most often pointless.

This was apparently useful in just 2 instcombine cases, which I
added code to handle explicitly. This change speeds up 'opt'
time on 176.gcc by 1% and produces bitwise identical code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123518 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
998ef4a92d74be9ca6dd06a986aad282a5263951 14-Jan-2011 Chris Lattner <sabre@nondot.org> switch the second scalarrepl pass to use SSAUpdater. We run two scalarrepl passes: one
early in the cleanup code and one late interlaced with the inliner. The second one is
important because inlining and other scalar optzns can unpin allocas, allowing them to
be split up and promoted. While important for performance, this is also relatively
rare, and we would previously force a (non-lazy) computation of DomFrontiers, which
happened even if nothing became unpinned.

With this patch, the first pass of scalarrepl still promotes the vast bulk of allocas
in programs, but hte second pass has changed to use SSAUpdater, which is more "sparse"
and lazy. This speeds up opt -O3 time on kimwitu++ (a c++ app) by about 1%. The
numbers are interesting: the first pass promotes ~17500 allocas. The second pass
promotes about 1600. For non-C++ codes, the compile time win should be greater,
because the second pass of scalarrepl does less.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123437 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
c5f608b49c2f003d9a6995f6d39d36efe34927fe 14-Jan-2011 Owen Anderson <resistor@mac.com> Rather than doing early instcombine, try doing early CSE instead. This should still handle
most important simplifications, as well as resolving phase ordering issues where instcombine
would inhibit important CSE'ing opportunities, for instance on BitBench/drop3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123418 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
68a659d423b56e3cafcc3751b33e2472bb191048 14-Jan-2011 Owen Anderson <resistor@mac.com> Don't bother conditionalizing the use of SROA in -O1 mode. We're already running it unconditionally
later in the pipeline.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123416 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
9df536ca7873af6dd9d9ca4aa6cea2872de5c028 13-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/Path: Deprecate PathV1::IsSymlink and replace all uses with PathV2::is_symlink.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123345 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
218dc3e2fe54c28b0292a3e89c5ed6563f62ac23 11-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/Path: Deprecate PathV1::isDirectory and replace all uses with PathV2::is_directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123209 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
54453f2978c76b3aa71be7bb4e9657c8539f8648 10-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/Path: Deprecate PathV1::exists and replace all uses with PathV2::fs::exists.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123151 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
bfb7dd9e9ed26aba40febe726dc46bcd4426d8ae 05-Jan-2011 Bob Wilson <bob.wilson@apple.com> Revert svn 122743, removing the instcombine pass that was replaced by earlycse.
My i386 llvm-gcc nightly tester found a regression for
SingleSource/Benchmarks/McGill/chomp that a bisect blamed on 122743.
That seems strange but apparently the combination of earlycse and instcombine
did something bad. Chris says he intended to remove the instcombine pass, so
let's go ahead and try that. We'll see if there are any performance losses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122907 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
be478819cb23806720aae6a794de543b12602be6 05-Jan-2011 Chris Lattner <sabre@nondot.org> Fix PR8906: -fno-builtin should disable loop-idiom recognition.
It forms memset and memcpy's, and will someday form popcount and
other stuff. All of this is bad when compiling the implementation
of memset, memcpy, popcount, etc.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122854 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
cc3d8e3c229768fb500b2721dbe4285d8e72516d 03-Jan-2011 Evan Cheng <evan.cheng@apple.com> Undo what looks like accidental removal of an instcombine pass in r122740.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122743 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
db5f5e64fe2a7266fe5ed126fa2e92e5c0f71833 03-Jan-2011 Chris Lattner <sabre@nondot.org> Turn on earlycse by default. This seems to be a small performance
improvement in the generated code, and speeds up 'opt -std-compile-opts'
compile time on 176.gcc from 24.84s to 23.2s (about 7%).

This also resolves a specific code quality issue in rdar://7352081 which
was generating poor code for:

int t(int a, int b) {
if (a & b & 1)
return a & b;
return 3;
}



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122740 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
61a10a0dc91863b70002cc412a1277357d6a4b45 03-Jan-2011 Chris Lattner <sabre@nondot.org> Enhance ScopedHashTable to allow it to take an allocator argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122721 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
0fd8ee4995193ba8dc24a19ae11cd2614418231a 01-Jan-2011 Chris Lattner <sabre@nondot.org> turn on memset idiom recognition by default. Though there are still lots of
limitations, this kicks in dozens of times in the 4 specfp2000 benchmarks,
and hundreds of times in the int part. It also kicks in hundreds of times
in multisource.

This kicks in right before loop deletion, which has the pleasant effect of
deleting loops that *just* do a memset.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122664 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
4213618088b0c0c85b208a01b45d89972984831b 28-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/Path: Deprecate Path::hasMagicNumber and replace all uses with fs::has_magic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122589 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
bf0184b6841a729bd09efff59fc4906e091024ec 28-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122588 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
628467ef1f230e40ee00626ddfdcc7ca77b45a11 28-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Implement has_magic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122587 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
9170a0f02d1ed521dd6583661e17581f9b7102ec 27-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Deprecate GetRootDirectory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122580 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
c0d5496b8aa9993e61ac5770e58184dd32f709bf 26-Dec-2010 Chris Lattner <sabre@nondot.org> add methods to IRBuilder to create memcpy/memset/memmove.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122571 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
43ee29d418c4df3dee00e77bec7030bc10cb837c 25-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Deprecate makeAbsolute and remove Unix impl because it annoys people.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122553 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
3b77f56194952bc3767c11e8b216906d404fcb2c 20-Dec-2010 Owen Anderson <resistor@mac.com> Revert r122114 (CallbackVH observing use-list changes) because it caused severe slowdowns on the Linux self-host configuration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122279 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
d7a0852464ab05327e949fc232138a2b85e4c177 20-Dec-2010 Bill Wendling <isanbard@gmail.com> This is still used and issuing an annoying warning. Don't deprecate something in
the library unless *all* uses have been converted over to the new form.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122267 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
c41f4de754a76e0c1bb251cdc10fac587d2f7dbd 20-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix spelling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122244 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
cc3029acdd4489c2cfe4c3e39fcb59241790d590 19-Dec-2010 Chris Lattner <sabre@nondot.org> add a version of IRBuilder::SetInsertPoint that takes an instruction.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122180 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
c3207d8b5a105d772d9ab60310c5c9edb6350199 18-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Clarify deprecation warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122159 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
738550910156b5cefdc0c12923ec8cc6982fb26f 18-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Deprecate get{Basename,Dirname,Suffix}.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122157 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
9390983b083413fff389d6ab956c82b175d4885e 18-Dec-2010 Eric Christopher <echristo@apple.com> Header warning patrol.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122152 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
fffa8635361639acadb78089c5b9b445c0aa1d30 18-Dec-2010 Owen Anderson <resistor@mac.com> Revert r122143 through r122140, which collectively broke the LLVMC tests on
the buildbots.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122149 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
47e8ae6324c305991a566458fe2de2034ed9ce48 18-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Clarify deprecation warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122143 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
b9c767cce502f016a5bdb07884625a3fffbe048c 18-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Deprecate get{Basename,Dirname,Suffix}.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122141 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
b3127bb06a9b2a95a587bbe555c2ea0d83e4eaba 18-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV1: Deprecate getLast.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122116 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
a479b2325635544fb2c955c4d7e8b6ea9582120f 18-Dec-2010 Owen Anderson <resistor@mac.com> Add support to CallbackVH to receive notification when a Value's use-list changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122114 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
48c166bceb16e578131671ccfb96d35d6fe0db4e 17-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix 80 col.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122089 91177308-0d34-0410-b5e6-96231b3b80d8
athV1.h
965841cfe4de695fc56cab4821fd7e032ff85b83 17-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/Path: Deprecate PathV1::isAbsolute.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122086 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
athV1.h
d53f3c864bf94d158a2ae677fe92fd41afaec2f3 17-Dec-2010 Benjamin Kramer <benny.kra@googlemail.com> Pass StringRefs by value, for consistency.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122074 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
athV2.h
cc2a8fefb6f23e4002d686ff1fda1c16766c7d6f 17-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Rename Path.h to PathV1.h and add a new Path.h that includes both V1 and V2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122065 91177308-0d34-0410-b5e6-96231b3b80d8
ath.h
athV1.h
e27db74a60c44d2b5d2700ecde11b1adce0d0d59 17-Dec-2010 Chris Lattner <sabre@nondot.org> improve switch formation to handle small range
comparisons formed by comparisons. For example,
this:

void foo(unsigned x) {
if (x == 0 || x == 1 || x == 3 || x == 4 || x == 6)
bar();
}

compiles into:

_foo: ## @foo
## BB#0: ## %entry
cmpl $6, %edi
ja LBB0_2
## BB#1: ## %entry
movl %edi, %eax
movl $91, %ecx
btq %rax, %rcx
jb LBB0_3

instead of:

_foo: ## @foo
## BB#0: ## %entry
cmpl $2, %edi
jb LBB0_4
## BB#1: ## %switch.early.test
cmpl $6, %edi
ja LBB0_3
## BB#2: ## %switch.early.test
movl %edi, %eax
movl $88, %ecx
btq %rax, %rcx
jb LBB0_4

This catches a bunch of cases in GCC, which look like this:

%804 = load i32* @which_alternative, align 4, !tbaa !0
%805 = icmp ult i32 %804, 2
%806 = icmp eq i32 %804, 3
%or.cond121 = or i1 %805, %806
%807 = icmp eq i32 %804, 4
%or.cond124 = or i1 %or.cond121, %807
br i1 %or.cond124, label %.thread, label %808

turning this into a range comparison.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122045 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
3ff9563c3e391954b2e224afcf8b2b0fcc3888aa 16-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> MemoryBuffer now return an error_code and returns a OwningPtr<MemoryBuffer> via an out parm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121958 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
emoryBuffer.h
c42a7754bb6249c33c509e6fa6e8b3c9344e72d8 15-Dec-2010 Rafael Espindola <rafael.espindola@gmail.com> Typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121906 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
b35d56c2fe39064a33d0e4e7faf5464b6d8a7352 15-Dec-2010 Rafael Espindola <rafael.espindola@gmail.com> Generalize an assert.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121851 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c79637c3cdeaf72f2430d2ec056547efad53c1ed 10-Dec-2010 Nick Lewycky <nicholas@mxc.ca> Remove dead header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121463 91177308-0d34-0410-b5e6-96231b3b80d8
tableBasicBlockNumbering.h
333ad3f2bf2941618f8e1563da022da011e615c0 09-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121382 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
61187dd0ad3d8574f655074e3e7948193d90bb1e 09-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Change file_status predicate functions that cannot fail to
return their result instead of an error_code. Also add some missing predicate
functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121380 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
333fb04506233255f10d8095c9e2de5e5f0fdc6f 09-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/MemoryBuffer: Replace all uses of std::string *ErrMsg with error_code &ec. And fix clients.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121379 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
emoryBuffer.h
ystem_error.h
c20beb9cc5a8bf72ffe6aada664c09d6c702ca01 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Remove Alarm. It is unused (via local grep and google code search).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121160 91177308-0d34-0410-b5e6-96231b3b80d8
larm.h
12ccf67457cddc7841bd23bae342994a21d25eb0 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Remove const from bool return types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121157 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
6511988cd477db280c7e1057af81025a40039811 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix spelling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121156 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
a35c1b94317db95856a9e3bf2dc3cc9edd045d61 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Remove DynamicLinker.h. It is unused and unimplemented.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121155 91177308-0d34-0410-b5e6-96231b3b80d8
ynamicLinker.h
5029159fbe7c267c9322fc6c38064e9ab2ce91bc 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Change most functions in the path namespace to return their work
via their return value instead of an out parameter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121149 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
936671b2eaa0a6b27903f8d85a8f4b28fcf8ee84 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Remove the error_code return type from all functions in the path
namespace. None of them return anything except for success anyway. These will be
converted to returning their result soon.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121109 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
ee271d8758c8493f2cadf5b9c0ec57431565891b 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Move make_absolute from path to fs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121108 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
athV2.h
ad8a14f24eb3daee61c8076ff6e5a8135f4dd124 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Clarify and correct documentation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121091 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
1522fce477f3b6b1b5812aa561ad2ff3f51eb968 07-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Move current_path from path to fs and fix the Unix implementation.

Unix bug spotted by Dan Gohman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121090 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
athV2.h
03a83a3f41c4763974b6d9d9aff852c9611db44f 06-Dec-2010 Frits van Bommel <fvbommel@gmail.com> Fix clang warning: "extra ';' inside a class [-pedantic]".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120998 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
753cbbbd3ce28253f381caff83ce2a7f6e08785b 06-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Add directory_iterator implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120989 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
470ae13be812132097cf4c17a189c47def5c19a1 04-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Add status implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120870 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
da3aaffcbb202ac492e7643fc0b191eca1931ab3 04-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/SystemError: Make error_category and error_code auto-bool-conversion-safe.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120869 91177308-0d34-0410-b5e6-96231b3b80d8
ystem_error.h
3cb84ef65dd417bc152fdaa173127966ca949318 03-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Add unique_file and exists implementations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120776 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
f4e7b167a09df546b4b339ca9ebc445f747a724a 03-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/FileSystem: Remove temp_directory_path.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120775 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
5a7df60619d88a2c804b0dbdf68b0b502941bba3 01-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Split PathV2.h into PathV2.h and FileSystem.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120592 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystem.h
athV2.h
9cf96e853edba13c42b71ce307d5114ec46e3aa9 01-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Remove is_valid. It was only added because Path had it, but
apparently it is unused.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120540 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
552a3c29dcdfaade9610a822fbfd3adc61eb1263 01-Dec-2010 Dan Gohman <gohman@apple.com> Delete Path::appendSuffix's return value; it wasn't used anywhere, which
is fine since isn't really necessary to check isValid there anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120538 91177308-0d34-0410-b5e6-96231b3b80d8
ath.h
dbfb56bebdb279a2a94096a821d3b7d3345962c2 01-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Add remove_filename implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120513 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
a42cf73c779fe4210cedce0a7a0b2ada2085b55b 01-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Implement reverse iteration and parent_path.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120496 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
e6f26e874e0ff32fe429605fded5a2e35e4e7179 30-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Update comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120348 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
dffde9964480f946d4308ce936b667b6c37b1059 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Add PathV2 implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120329 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
44c1bc14570e77630b5e6711ed42886aad848086 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> system_error: Remove Windows headers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120328 91177308-0d34-0410-b5e6-96231b3b80d8
ystem_error.h
ace996943a7d586c1ed42e550cb431c72143d6b3 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/PathV2: Just about every function call requires the Twine header.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120327 91177308-0d34-0410-b5e6-96231b3b80d8
athV2.h
53ca1f3190680f3e86aebe0f72f7918d63f71e0d 29-Nov-2010 Charles Davis <cdavis@mines.edu> Now to chant the magical incantation that will exorcise the System library
from LLVM forever:

grep -lR "llvm/System" * | grep -v .svn | xargs sed -ie 's#llvm/System#llvm/Support#g'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120314 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
larm.h
tomic.h
ynamicLibrary.h
rrno.h
Env.h
ost.h
ncludeFile.h
emory.h
utex.h
ath.h
athV2.h
rocess.h
rogram.h
ignals.h
olaris.h
hreadLocal.h
hreading.h
algrind.h
3cc52ea33c0b96d1682f14fc45c45b57df0f39b6 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> I swear I did a make clean and make before committing all this...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120304 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
larm.h
llocator.h
tomic.h
OFF.h
onstantRange.h
ataTypes.h.cmake
ataTypes.h.in
isassembler.h
ynamicLibrary.h
LF.h
ndian.h
rrno.h
Env.h
ileUtilities.h
raphWriter.h
ost.h
ncludeFile.h
ICENSE.TXT
achO.h
anagedStatic.h
athExtras.h
emory.h
emoryBuffer.h
emoryObject.h
utex.h
utexGuard.h
ath.h
athV2.h
ointerLikeTypeTraits.h
rocess.h
rogram.h
WMutex.h
ignals.h
olaris.h
wapByteOrder.h
hreadLocal.h
hreading.h
imeValue.h
imer.h
algrind.h
aw_ostream.h
ystem_error.h
10a049e6cf50eb9a1dddae49dc21513cfeddcb47 27-Nov-2010 Daniel Dunbar <daniel@zuster.org> raw_ostream::write_escaped: Add a UseHexEscapes argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120200 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
052f1eebdb6dbfb3f1197cc91f28ebc688ffb02d 26-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix spelling!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120167 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7cf705461cfdca5dd5b48a5065f8e24a1ce8c8c4 23-Nov-2010 Chris Lattner <sabre@nondot.org> add a MemoryBuffer::getOpenFile method, which turns an open
file descriptor into a MemoryBuffer (and closes the FD).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120065 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
13534672deffb571d90f2c2f0a237c67d5aa0594 23-Nov-2010 Jason W Kim <jason.w.kim.2009@gmail.com> Move the ARM reloc constants to Support/ELF.h



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120035 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
9f9bd8e4af8c5e7ae02eb5de418a49a6fdafb3f1 23-Nov-2010 Chris Lattner <sabre@nondot.org> Revert functionality doug added in r98575 that was never
documented and only used by some clang stuff I just removed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120002 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
3afc385042fb0d121e9454347f975e4f1a5f5bfd 23-Nov-2010 Chris Lattner <sabre@nondot.org> reimplement SwapByteOrder.h in terms of overloading instead of
being in terms of excessively complex template logic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119992 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
4b04713423c6da988db75c7546baa3db7ddfa119 21-Nov-2010 Wesley Peck <peckw@wesleypeck.com> Implement ELF object file writing support for the MBlaze backend. Its not perfect yet, but it works for many tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119952 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
2f5f90ad3e9b00cf21ae8e3f55b93f0be1d504c3 21-Nov-2010 Chris Lattner <sabre@nondot.org> Implement PR8644: forwarding a memcpy value to a byval,
allowing the memcpy to be eliminated.

Unfortunately, the requirements on byval's without explicit
alignment are really weak and impossible to predict in the
mid-level optimizer, so this doesn't kick in much with current
frontends. The fix is to change clang to set alignment on all
byval arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119916 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
85a0a06b18be145feb0c10cbdf4d521c1a8835bf 18-Nov-2010 Chris Lattner <sabre@nondot.org> patch from Frits van Bommel:

The attached patch fixes IRBuilder and the NoFolder class so that when
NoFolder is used the instructions it generates are treated just like
the ones IRBuilder creates directly (insert into block, assign them a
name and debug info, as applicable).
It does this by
1) having NoFolder return Instruction*s instead of Value*s,
2) having IRBuilder call Insert(Value, Name) on values obtained from
the folder like it does on instructions it creates directly, and
3) adding an Insert(Constant*, const Twine& = "") overload which just
returns the constant so that the other folders shouldn't have any
extra overhead as long as inlining is enabled.

While I was there, I also added some missing (CreateFNeg and various
Create*Cast) methods to NoFolder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119614 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
oFolder.h
7c0fd8eb724a7228a6cf7e3e5487614c25202a91 17-Nov-2010 Dan Gohman <gohman@apple.com> Fix ScalarEvolution's range memoization to avoid using a
default ctor with ConstantRange.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119550 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
2b749870d0488c3b049edf5d0c8875f56f5b1bed 17-Nov-2010 Duncan Sands <baldrick@free.fr> Move some those Xor simplifications which don't require creating new
instructions out of InstCombine and into InstructionSimplify. While
there, introduce an m_AllOnes pattern to simplify matching with integers
and vectors with all bits equal to one.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119536 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
4afa12890f679034e9741a687a6ce33f2846f129 17-Nov-2010 Chris Lattner <sabre@nondot.org> now that AsmPrinter::EmitInlineAsm is factored right, we can eliminate the
cookie argument to the SourceMgr diagnostic stuff. This cleanly separates
LLVMContext's inlineasm handler from the sourcemgr error handling
definition, increasing type safety and cleaning things up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119486 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
6678e7b6eb534b43b92105076e6d0553e5cf7def 17-Nov-2010 Dan Gohman <gohman@apple.com> Memoize results from ScalarEvolution's getUnsignedRange and getSignedRange.
This fixes some extreme compile times on unrolled sha512 code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119455 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
ca77f0ed2408043723e3eff73341fc099f80f39c 13-Nov-2010 Daniel Dunbar <daniel@zuster.org> report_fatal_error: Simplify a possible ambiguity.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118972 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
afd693cff38ea76188f8f895c75fdf24c90c606a 13-Nov-2010 Daniel Dunbar <daniel@zuster.org> report_fatal_error: Simplify a possible ambiguity.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118972 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
05b9a6c5891d1505f5bc11c3bc26b199b03615ad 11-Nov-2010 Rafael Espindola <rafael.espindola@gmail.com> Initial comdat implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118805 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
2ff9e83a826c1c2ee0f1c6072d3d97d5b10678ee 11-Nov-2010 Rafael Espindola <rafael.espindola@gmail.com> Initial comdat implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118805 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
a2e77e58eaea39672535d70a9f024570a8d4f1ca 10-Nov-2010 Duncan Sands <baldrick@free.fr> There is no EndPtr anymore - reinterpret the original comment in terms
of InputData.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118677 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
867fe8570f299a058f155f98646d85cabc27155b 10-Nov-2010 Duncan Sands <baldrick@free.fr> There is no EndPtr anymore - reinterpret the original comment in terms
of InputData.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118677 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
f13d01bf98089bc9588758fe664871f448308a10 05-Nov-2010 Jim Grosbach <grosbach@apple.com> Add v5 and v7 ARM CPU subtype values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118281 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
c91b26281ac8e205d7628e2668781cb369ce9a73 05-Nov-2010 Jim Grosbach <grosbach@apple.com> Add v5 and v7 ARM CPU subtype values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118281 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
92ae25fecf899fc1ac5f340f2b144e2d5f7b0e14 05-Nov-2010 Daniel Dunbar <daniel@zuster.org> CrashRecoveryContext: Add RunSafelyOnThread helper function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118272 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
f8254d647352f8f194b4753a25d582758289e497 05-Nov-2010 Daniel Dunbar <daniel@zuster.org> CrashRecoveryContext: Add RunSafelyOnThread helper function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118272 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
15563960d6aa4e1ab4889182c67512bfe1c6bf89 03-Nov-2010 Mikhail Glushenkov <foldr@codedgers.com> Rename FindExecutable to PrependMainExecutablePath.

Makes it more clear that it is just a path manipulation function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118174 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
d66f2b74f2f01bb1f6c7d0f1b8408bd24ffa654c 03-Nov-2010 Mikhail Glushenkov <foldr@codedgers.com> Rename FindExecutable to PrependMainExecutablePath.

Makes it more clear that it is just a path manipulation function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118174 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
8f92cbf8c9629bf284467801f47c2cfe3ea51c79 03-Nov-2010 Dan Gohman <gohman@apple.com> Factor code out of APInt to form a isUIntN helper function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118133 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
5005e27f9714f0eaa5b8b7a5a1f6751afa163f07 03-Nov-2010 Dan Gohman <gohman@apple.com> Factor code out of APInt to form a isUIntN helper function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118133 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
3aae810efa1fd0923aaf46dc03087f01eb8f1253 02-Nov-2010 Mikhail Glushenkov <foldr@codedgers.com> FindExecutable: remove the executability check.

This makes the behaviour of FindExecutable more consistent across platforms, but
I'm not very happy with the name...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118049 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
345b344e64ae3e0b595e660a7e0c1833ead42e18 02-Nov-2010 Mikhail Glushenkov <foldr@codedgers.com> FindExecutable: remove the executability check.

This makes the behaviour of FindExecutable more consistent across platforms, but
I'm not very happy with the name...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118049 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
82f46522dbe0e99eeef3a82c74d025a3ae42bd70 31-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for files with more than 65280 sections. No testcase since
it would be a bit too big :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117849 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
7be2c33193aeada8c0ff3555ea54b930f204132a 31-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for files with more than 65280 sections. No testcase since
it would be a bit too big :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117849 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
bf8c8c0f54341eb48d45fa31bc0496797d7470bc 30-Oct-2010 Chris Lattner <sabre@nondot.org> Rename alignof -> alignOf to avoid irritating C++'0x compilers,
PR8423, patch by nobled.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117774 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
llocator.h
16c3b647eb100fe404ee65f106d563ddef6c74b7 30-Oct-2010 Chris Lattner <sabre@nondot.org> Rename alignof -> alignOf to avoid irritating C++'0x compilers,
PR8423, patch by nobled.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117774 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
llocator.h
e79757072bf622eb0b49d24efd85cf410feeafaa 27-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for R_386_TLS_GD, R_386_TLS_LE_32, R_386_TLS_IE and R_386_TLS_LE.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117494 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
3cede2d0b2b6cc0a06f55da7c2f8e4263ec0091e 27-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for R_386_TLS_GD, R_386_TLS_LE_32, R_386_TLS_IE and R_386_TLS_LE.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117494 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
a318d8dea4d087bee9fb4c6f2764ee24a8f0fd8c 27-Oct-2010 Mikhail Glushenkov <foldr@codedgers.com> It is confusing to call a random-access iterator 'InputIterator'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117441 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
d33b77bbb04d8f90e58cd83f695745ba21178d41 27-Oct-2010 Mikhail Glushenkov <foldr@codedgers.com> It is confusing to call a random-access iterator 'InputIterator'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117441 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
88e8ab1e9fc653b332d81c4035f5b0a068e1ebed 27-Oct-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117440 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0da14f7a9d31ae1c7bebe8ef1fe0b593ac828c1a 27-Oct-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117440 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9100a0c00cb340fad7a918343373814c60f30ddf 25-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for emitting ARM file attributes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117275 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cecbc3d28277ff4916326311cbf87335ed05d106 25-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for emitting ARM file attributes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117275 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
a87302bbd7df663f7233c050779e9185c9b7df73 25-Oct-2010 Duncan Sands <baldrick@free.fr> Remove deprecated macro names. Hopefully this will unbreak the
smooshlab build. The breakage seems to be due to a collision
between LLVM's ATTRIBUTE_UNUSED and gcc's which was previously
hidden due to header files being included in a lucky order.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117260 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
10d3191cf1cb02e52e595eeac9d8bc353113e8f0 25-Oct-2010 Duncan Sands <baldrick@free.fr> Remove deprecated macro names. Hopefully this will unbreak the
smooshlab build. The breakage seems to be due to a collision
between LLVM's ATTRIBUTE_UNUSED and gcc's which was previously
hidden due to header files being included in a lucky order.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117260 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
a70d37154f528d30af1c320fd2888974e949dac4 23-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Move the remaining attribute macros to systematic names based on the attribute
name and prefixed with 'LLVM_'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117203 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
19e57025d458d3cb50804fd821fd89b868a819bd 23-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Move the remaining attribute macros to systematic names based on the attribute
name and prefixed with 'LLVM_'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117203 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
61c583f564379ef0dce4ae770450a3ab65c94c74 23-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Switch attribute macros to use 'LLVM_' as a prefix. We retain the old names
until other LLVM projects using these are cleaned up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117200 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
100c267249d1d03c4f96eede9877a4f9f54f2247 23-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Switch attribute macros to use 'LLVM_' as a prefix. We retain the old names
until other LLVM projects using these are cleaned up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117200 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
259f5bbbe0f9e384932e923e87fb8a14d7c5b18c 22-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> I hate line endings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117132 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
2e6048f8690105f7174e24ceba8e7c9f67009411 22-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> I hate line endings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117132 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
bfd62dffebf9251cd76aed5ae37ce03c1cd0bfde 22-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Endian: Get rid of LLVM_IS_HOST_BIG_ENDIAN.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117124 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
fd7c230c85dbc9b1c5145319a0d5eaeb99f61176 22-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Endian: Get rid of LLVM_IS_HOST_BIG_ENDIAN.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117124 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
02f98e6d5a45d93d68896faea7b1e8209acdeea1 22-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Rename LLVM_IS_TARGET_BIG_ENDIAN to LLVM_IS_HOST_BIG_ENDIAN to reflect what it actually means.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117092 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
523579e0758bfa5781b63eabdc079a3ff074c36a 22-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Rename LLVM_IS_TARGET_BIG_ENDIAN to LLVM_IS_HOST_BIG_ENDIAN to reflect what it actually means.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117092 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
4c2725fa5ac794f13834912a88e7e6619d5f6897 21-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Add Endian.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117057 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
5e0b2bf657dd8b6b3bb58439e6cb293f3116687f 21-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Add Endian.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117057 91177308-0d34-0410-b5e6-96231b3b80d8
ndian.h
890f06a46e3a86918f8dc543a058629df8084147 21-Oct-2010 Wesley Peck <peckw@wesleypeck.com> Adding the EM_MBLAZE value to the machine architectures enumeration to
support future ELF file generation by the MBlaze backend.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116985 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
17ffc5271802e68408bc18a390d8f5dc22c8771a 21-Oct-2010 Wesley Peck <peckw@wesleypeck.com> Adding the EM_MBLAZE value to the machine architectures enumeration to
support future ELF file generation by the MBlaze backend.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116985 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
b4410450933fd35ecd1ddd95b9e997ab18ed5a3f 20-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Add a comment about ATTRIBUTE_UNUSED to avoid further confusion over when to
use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116920 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
7283da51b8860ca9af4cb5ca082f7bcca3894d99 20-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Add a comment about ATTRIBUTE_UNUSED to avoid further confusion over when to
use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116920 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
da209d687c759498309b276455a5bc84c5223312 18-Oct-2010 Dan Gohman <gohman@apple.com> Add TypeBasedAliasAnalysis to the standard pass lists. Note that it
is currently inert by default.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116732 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
4021fccf9fdb60906e5f16c98e72042240867495 18-Oct-2010 Dan Gohman <gohman@apple.com> Add TypeBasedAliasAnalysis to the standard pass lists. Note that it
is currently inert by default.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116732 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
edf9b77e65278603415c64c4169dfd410e290ea9 18-Oct-2010 Dan Gohman <gohman@apple.com> Make BasicAliasAnalysis a normal AliasAnalysis implementation which
does normal initialization and normal chaining. Change the default
AliasAnalysis implementation to NoAlias.

Update StandardCompileOpts.h and friends to explicitly request
BasicAliasAnalysis.

Update tests to explicitly request -basicaa.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116720 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
c1be92f3bb9158eade30d97db6997e2fe78150ab 18-Oct-2010 Dan Gohman <gohman@apple.com> Make BasicAliasAnalysis a normal AliasAnalysis implementation which
does normal initialization and normal chaining. Change the default
AliasAnalysis implementation to NoAlias.

Update StandardCompileOpts.h and friends to explicitly request
BasicAliasAnalysis.

Update tests to explicitly request -basicaa.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116720 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
9c35a73f87668a0d0d14040dfa3b572bb3fedd11 16-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC-COFF: Add support for default-null weak externals.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116666 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
4cee2890a66974af506f2125243114cc14bd5556 16-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC-COFF: Add support for default-null weak externals.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116666 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
d9cecbb97195ff6c9357c32c54fe17bad5f5d59a 14-Oct-2010 Francois Pichet <pichet2000@gmail.com> Always use binary mode for output stream. This is important to prevent unwanted end of line conversion on Windows. Should not affect Unix where O_BINARY is not defined. This fix /clang/test/lexer/preamble.c XFAIL on WIN32.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116509 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
a872a0f5f800b352ab9af9d0f1e975ea0dead4ef 14-Oct-2010 Francois Pichet <pichet2000@gmail.com> Always use binary mode for output stream. This is important to prevent unwanted end of line conversion on Windows. Should not affect Unix where O_BINARY is not defined. This fix /clang/test/lexer/preamble.c XFAIL on WIN32.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116509 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
57c821c5cfb2ac3d2ee691c1cf91eeea7307c458 11-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> System: Add SwapByteOrder and update Support/MathExtras.h to use it.

This time correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116247 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
4c099b8724abf993262366e2a871004a2777becb 11-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> System: Add SwapByteOrder and update Support/MathExtras.h to use it.

This time correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116247 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
535cf951d326107a7a570326d681e8ebaf90b138 11-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Revert "System: Add SwapByteOrder and update Support/MathExtras.h to use it."

This reverts commit 116234.

It compiled just fine with MSVC and clang...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116242 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
af72684eeab67c227e4ee45cc91ae05513102fa8 11-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Revert "System: Add SwapByteOrder and update Support/MathExtras.h to use it."

This reverts commit 116234.

It compiled just fine with MSVC and clang...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116242 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
09079bb80098909317d8955d0cb24c9eef14c53e 11-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> System: Add SwapByteOrder and update Support/MathExtras.h to use it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116234 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
5031e0d97709658d552e33b2f5bd8957b4e6171e 11-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> System: Add SwapByteOrder and update Support/MathExtras.h to use it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116234 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
48a94d6b17c54261b5995f3a6627580fe7e4b263 08-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC-COFF: Fix Simple and Complex type. Fixes PR8320.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116037 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
6ab219de7e8aa36aee266f111ac5e08ec8e4a16d 08-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC-COFF: Fix Simple and Complex type. Fixes PR8320.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116037 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
23c59b7c64438db1ae862454943f9e510f191ea8 08-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116036 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
290b316a4eb8616c388f1fa3bea7ef338bf6c4ec 08-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116036 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
5d610b10db4fb9874f4998e07cb25d844ff300b0 07-Oct-2010 Dan Gohman <gohman@apple.com> Move tool_output_file into its own file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115973 91177308-0d34-0410-b5e6-96231b3b80d8
oolOutputFile.h
aw_ostream.h
e4f1a9b8a272ff7452759019ee7774e9dbdf1568 07-Oct-2010 Dan Gohman <gohman@apple.com> Move tool_output_file into its own file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115973 91177308-0d34-0410-b5e6-96231b3b80d8
oolOutputFile.h
aw_ostream.h
00aa2ed155c16ee2197acedd5c3d5db3c0f16aa1 05-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Add __forceinline to Compiler.h on MSVC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115595 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
a0b991be3f2a15a8358d94c6b9773568ec74e8f0 05-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support: Add __forceinline to Compiler.h on MSVC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115595 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
0035c5cd3210532d5dfec77314e7178c1d4504c4 03-Oct-2010 Duncan Sands <baldrick@free.fr> Remove two uses of the gcc specific 'aligned' attribute. This
is partly because this attribute caused trouble in the past (the
SmallVector one had to be changed from aligned to aligned(8) due
to causing crashes on i386 for example; in theory the same might
be needed in the Allocator case...). But it's mostly because
there seems to be no point in special casing gcc here. Using the
same implementation for all compilers results in better testing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115462 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
75e2016f02428289e9cfd693a27bcd9a2a5cc00f 03-Oct-2010 Duncan Sands <baldrick@free.fr> Remove two uses of the gcc specific 'aligned' attribute. This
is partly because this attribute caused trouble in the past (the
SmallVector one had to be changed from aligned to aligned(8) due
to causing crashes on i386 for example; in theory the same might
be needed in the Allocator case...). But it's mostly because
there seems to be no point in special casing gcc here. Using the
same implementation for all compilers results in better testing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115462 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
6f841c5374678824443caa747a2c3a89df6275c4 30-Sep-2010 Kevin Enderby <enderby@apple.com> Did my commit for the last patch for the .loc directory from the wrong place and
missed a bunch of files. Here the rest. Sorry about that.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115173 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
3bb435301a2b5c901a993b0e151d05b596697038 30-Sep-2010 Kevin Enderby <enderby@apple.com> Did my commit for the last patch for the .loc directory from the wrong place and
missed a bunch of files. Here the rest. Sorry about that.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115173 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
2b9088eb959ff8254c624105ca2b805b4da5e62f 30-Sep-2010 Owen Anderson <resistor@mac.com> Revert r115099 (adding early jump threading). It's not clear if the benefits are worth the compile time cost.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115106 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
fe45b104b3fb7a32dfed35bc4d82f3b89a39ec42 30-Sep-2010 Owen Anderson <resistor@mac.com> Revert r115099 (adding early jump threading). It's not clear if the benefits are worth the compile time cost.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115106 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
a0fd8d57cca98a5c0e5feba46da0194eb3abd419 30-Sep-2010 Owen Anderson <resistor@mac.com> Early CFG simplification can fold conditionals down to selects, which is often a good thing, but it can also
hide jump threading opportunities by turning control flow into data flow. Run an early JumpThreading pass
(adds approximately an additional 1% to optimization time on SPEC), allowing it to get a shot at these cases
first. Fixes <rdar://problem/8447345>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115099 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
235859d66cf3faf7453f59b92cc4056ae1855d0d 30-Sep-2010 Owen Anderson <resistor@mac.com> Early CFG simplification can fold conditionals down to selects, which is often a good thing, but it can also
hide jump threading opportunities by turning control flow into data flow. Run an early JumpThreading pass
(adds approximately an additional 1% to optimization time on SPEC), allowing it to get a shot at these cases
first. Fixes <rdar://problem/8447345>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115099 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
dd9efa7e94a048421698cef38d43698e71a7fb88 29-Sep-2010 Devang Patel <dpatel@apple.com> Generalize DISubprogram element to encode various flags instead of just one boolean for isArtificial.
This is a backword compatible change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115084 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
9dd2b47d444e310347debcac5cdddedbb22881e6 29-Sep-2010 Devang Patel <dpatel@apple.com> Generalize DISubprogram element to encode various flags instead of just one boolean for isArtificial.
This is a backword compatible change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115084 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
6a8779d47256d2d3e728b6c3b18ee01589ae28a7 27-Sep-2010 Benjamin Kramer <benny.kra@googlemail.com> Push twines deeper into SourceMgr's error handling methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114847 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
d1e1703c39742f3c9fc3d27a442ff59bbdbfb5aa 27-Sep-2010 Benjamin Kramer <benny.kra@googlemail.com> Push twines deeper into SourceMgr's error handling methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114847 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
766049080cf2c2682de57a744750f315565ebf38 27-Sep-2010 Dan Gohman <gohman@apple.com> writeGraph doesn't need its ShortNames argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114842 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
cce563cf1cdbdcb470a1823f1e917960dde3aad6 27-Sep-2010 Dan Gohman <gohman@apple.com> writeGraph doesn't need its ShortNames argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114842 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
144dcd8520fbb8c0c707ec80e3c07c129ae7af6a 27-Sep-2010 Dan Gohman <gohman@apple.com> Don't construct a redundant GraphWriter object.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114838 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
d73b908f263d538f380e7fbee508d4e9a1a71791 27-Sep-2010 Dan Gohman <gohman@apple.com> Don't construct a redundant GraphWriter object.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114838 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
c423fc7b9d8ffa2a86a68bc69275cefed86b8da8 27-Sep-2010 Dan Gohman <gohman@apple.com> Factor out code from the standalone WriteGraph function into a helper
function on GraphWriter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114837 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
f7e2ca9e161140f658a2ae65ad67e508b703ac8c 27-Sep-2010 Dan Gohman <gohman@apple.com> Factor out code from the standalone WriteGraph function into a helper
function on GraphWriter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114837 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
36bdba1fa335b97ee216687426919a30b798a7e3 27-Sep-2010 Dan Gohman <gohman@apple.com> Remove WriteGraph's Name argument, which it didn't use, and
rename writeHeader's Name argument to Title, to be consistent
with WriteGraph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114829 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
4c6809d8e38b9690898700085ebbd913e035c2e2 27-Sep-2010 Dan Gohman <gohman@apple.com> Remove WriteGraph's Name argument, which it didn't use, and
rename writeHeader's Name argument to Title, to be consistent
with WriteGraph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114829 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
83a46e87aac0a21d629d88208c49416878a9b0f7 27-Sep-2010 Dan Gohman <gohman@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114827 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
640e74207eb75ebc1f22b3cf1c1c39b32bbf232d 27-Sep-2010 Dan Gohman <gohman@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114827 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
36d7068ed0ea21cea72b871aa761e412ff678df5 18-Sep-2010 Gabor Greif <ggreif@gmail.com> restrict dyn_cast_or_null to pointer types, just like cast_or_null; re-commit of r114279, backed out in r114280

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114282 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
3fde69c0f1d2ccfcc0847cebffb3b9805bef8a06 18-Sep-2010 Gabor Greif <ggreif@gmail.com> restrict dyn_cast_or_null to pointer types, just like cast_or_null; re-commit of r114279, backed out in r114280

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114282 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
4f5ed417351afcff30cc38382b5e16faae92c1fb 18-Sep-2010 Gabor Greif <ggreif@gmail.com> back out r114279 as some darwin buildbots get errors compiling clang:
svn merge -c -114279 llvm/include/llvm/Support/Casting.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114280 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
d299ab166958b481aa753c809615110fc295cd96 18-Sep-2010 Gabor Greif <ggreif@gmail.com> back out r114279 as some darwin buildbots get errors compiling clang:
svn merge -c -114279 llvm/include/llvm/Support/Casting.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114280 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
1016100a494a6e639fc98f8d5604ce6f88f180a9 18-Sep-2010 Gabor Greif <ggreif@gmail.com> restrict dyn_cast_or_null to pointer types, just like cast_or_null

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114279 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
ce31f40295a0cd42f5df32f6295cf334a3a6df76 18-Sep-2010 Gabor Greif <ggreif@gmail.com> restrict dyn_cast_or_null to pointer types, just like cast_or_null

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114279 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
0d2e54741000a87389b5682c0258105f836407c8 18-Sep-2010 Gabor Greif <ggreif@gmail.com> remove CallSite::get; it is still present (as protected) in the baseclass, use one of the constructors intead

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114275 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
89730dca5a29bf44d6f11e298a8beb49a46d347e 18-Sep-2010 Gabor Greif <ggreif@gmail.com> remove CallSite::get; it is still present (as protected) in the baseclass, use one of the constructors intead

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114275 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
86a4f38d689f5d9a08007554f08b4c1f803e7faf 15-Sep-2010 Duncan Sands <baldrick@free.fr> Remove LLVM_GLOBAL_VISIBILITY, which is unused, and was not working properly.
The problem was that the test for whether a compiler supports it or not was
inaccurate, but has to be accurate: LLVM_LOCAL_VISIBILITY is an optimization
and not needed for correctness, so wrongly thinking a compiler doesn't support
it is not a big deal, but LLVM_GLOBAL_VISIBILITY is for correctness, and not
an optimization: getting it wrong is fatal: it needs to be set based on a
configure test not testing the gcc version. Since dragonegg has moved to a
different scheme, and it was the only user of LLVM_GLOBAL_VISIBILITY, just
remove this macro.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113959 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
97816e1badb4bf781d646986301e41ddea6f721c 15-Sep-2010 Duncan Sands <baldrick@free.fr> Remove LLVM_GLOBAL_VISIBILITY, which is unused, and was not working properly.
The problem was that the test for whether a compiler supports it or not was
inaccurate, but has to be accurate: LLVM_LOCAL_VISIBILITY is an optimization
and not needed for correctness, so wrongly thinking a compiler doesn't support
it is not a big deal, but LLVM_GLOBAL_VISIBILITY is for correctness, and not
an optimization: getting it wrong is fatal: it needs to be set based on a
configure test not testing the gcc version. Since dragonegg has moved to a
different scheme, and it was the only user of LLVM_GLOBAL_VISIBILITY, just
remove this macro.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113959 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
da61c1662bd86ea1f7fad601e9966f1b700636c1 11-Sep-2010 Shih-wei Liao <sliao@google.com> Merge commit '69494cf8102cf872e9cb76662e9960be7c112112' into HEAD

Conflicts:
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/Target/ARM/ARMCodeEmitter.cpp
lib/Target/ARM/ARMJITInfo.cpp
lib/Target/ARM/ARMRelocations.h
lib/Transforms/IPO/MergeFunctions.cpp

Change-Id: I23d40983717e072fa49334c1fa54f2cf961476c7
e6668e1e2fb0ed0645a751175ec6cf2106b5f6ad 10-Sep-2010 Dale Johannesen <dalej@apple.com> Add X86 MMX type to bitcode and Type.
(The Ada bindings probably need it too, but all the
obvious places to change say "do not edit this file".)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113618 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
bb811a244567aa8a1522203f15588f4d001b7353 10-Sep-2010 Dale Johannesen <dalej@apple.com> Add X86 MMX type to bitcode and Type.
(The Ada bindings probably need it too, but all the
obvious places to change say "do not edit this file".)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113618 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
1eafe1a60b031fcfc1aa1850ed37919a7b5206ed 07-Sep-2010 Owen Anderson <resistor@mac.com> Remove dead code. ManagedCleanup is unused, and contained a serious bug in that
the provided cleanup function is never actually called.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113284 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
2da497902a196bacb073b65a5c7030f002cbd349 07-Sep-2010 Owen Anderson <resistor@mac.com> Remove dead code. ManagedCleanup is unused, and contained a serious bug in that
the provided cleanup function is never actually called.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113284 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
cda39311dd07636997286d5e3775842f91bbf93a 07-Sep-2010 Nick Lewycky <nicholas@mxc.ca> Add completely hokey binary-and and binary-or operations to ConstantRange and
teach LazyValueInfo to use them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113196 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
198381e542320265e1c5fed18e938db3563a45bf 07-Sep-2010 Nick Lewycky <nicholas@mxc.ca> Add completely hokey binary-and and binary-or operations to ConstantRange and
teach LazyValueInfo to use them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113196 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
096983faabc9e98c906ff8ab3fe440acea15db8f 07-Sep-2010 Nick Lewycky <nicholas@mxc.ca> Add a new isSignWrappedSet() method to ConstantRange.

Fix zeroExtend and signExtend to support empty sets, and to return the smallest
possible result set which contains the extension of each element in their
inputs. For example zext i8 [100, 10) to i16 is now [0, 256), not i16 [100, 10)
which contains 63446 members.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113187 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
32cda119ef63ae1f1ee4b60e1d9e4a5ea8e00604 07-Sep-2010 Nick Lewycky <nicholas@mxc.ca> Add a new isSignWrappedSet() method to ConstantRange.

Fix zeroExtend and signExtend to support empty sets, and to return the smallest
possible result set which contains the extension of each element in their
inputs. For example zext i8 [100, 10) to i16 is now [0, 256), not i16 [100, 10)
which contains 63446 members.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113187 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
19b1a978948281601c03087313791be04f4207c3 03-Sep-2010 Owen Anderson <resistor@mac.com> Re-enable CorrelatedValuePropagation. I've tested nightly tests, llvm-gcc
bootstrap, and clang self-host.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112948 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
d84668446cfccb38bda3657b4a2e3388155d2e78 03-Sep-2010 Owen Anderson <resistor@mac.com> Re-enable CorrelatedValuePropagation. I've tested nightly tests, llvm-gcc
bootstrap, and clang self-host.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112948 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
35f1742825d216b31ded75fbdabd95d78aa70664 03-Sep-2010 Dan Gohman <gohman@apple.com> Remove obsolete comments about throwing exceptions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112874 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
df782a789dea63016a941c4a44a7a6d6c8028608 03-Sep-2010 Dan Gohman <gohman@apple.com> Remove obsolete comments about throwing exceptions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112874 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
d326794b4cfcf0d3db21cf3ed9367c0de8614b51 02-Sep-2010 Dan Gohman <gohman@apple.com> Reword this comment. Don't mention outs(), as that's not what
this code is actually testing for.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112767 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
a2259e17b7c657ddeb0c3a03a5ca291ca4e0dc7e 02-Sep-2010 Dan Gohman <gohman@apple.com> Reword this comment. Don't mention outs(), as that's not what
this code is actually testing for.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112767 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
ec30026c1136ec394bcbab4d4292068a0cf15847 01-Sep-2010 Owen Anderson <resistor@mac.com> Disable CorrelatedValuePropagation while I track down selfhost failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112727 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
c096704c4a261ac78133680d2c308e1f553e3eef 01-Sep-2010 Owen Anderson <resistor@mac.com> Disable CorrelatedValuePropagation while I track down selfhost failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112727 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
2ad3bae8be1a7c08dd3c53cdd58bd63590de2a26 01-Sep-2010 Owen Anderson <resistor@mac.com> Tentatively add correlated value propagation to the set of standard passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112723 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
5627db6fb9f12e662d9026d5791506f791abe069 01-Sep-2010 Owen Anderson <resistor@mac.com> Tentatively add correlated value propagation to the set of standard passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112723 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
9812a163b977b1ba59e96a54d4f84d7f691bcbe5 01-Sep-2010 Dan Gohman <gohman@apple.com> Make tool_output_file's raw_ostream instance a member variable instead
of a base class.

This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112706 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
d4c454317a38d65957edebe62bfc69fc8d9885e8 01-Sep-2010 Dan Gohman <gohman@apple.com> Make tool_output_file's raw_ostream instance a member variable instead
of a base class.

This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112706 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
1fc1114e5b7ca5a0e20a52a3bb32bfd99eb8d664 01-Sep-2010 Michael J. Spencer <bigcheesegs@gmail.com> COFF: Fix incorrect SCT_COMPLEX_TYPE_SHIFT. Add a few constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112703 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
4563704c21a0549c2f2d484c7ca76a67319cf627 01-Sep-2010 Michael J. Spencer <bigcheesegs@gmail.com> COFF: Fix incorrect SCT_COMPLEX_TYPE_SHIFT. Add a few constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112703 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
09a9cd3f2e4fbc2de4f8ebced5efacf48b27817a 01-Sep-2010 Duncan Sands <baldrick@free.fr> Define LLVM_GLOBAL_VISIBILITY to be __declspec(dllexport) on
windows systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112700 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f8ff40c0598c6d8707a639ec63644e5e5496678a 01-Sep-2010 Duncan Sands <baldrick@free.fr> Define LLVM_GLOBAL_VISIBILITY to be __declspec(dllexport) on
windows systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112700 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
67e766406f270476dcbd65e69043969077d2b8e2 29-Aug-2010 Chris Lattner <sabre@nondot.org> Stop explicitly scheduling domfrontier before the loop passes,
since none of them use it. With this, we now only run
domfrontier (an N^2 analysis) 3 times at clang -O3: once for
"early" per-function cleanup, once at the start of the
per-function pipeline to support SRoA, and once late because
the EHPrepare class uses it.

EHPrepare needs to stop using it, this is silly and wasteful.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112420 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
8bfc4299c2c106aa8ef0053b27c9f5a611b5a2a8 29-Aug-2010 Chris Lattner <sabre@nondot.org> Stop explicitly scheduling domfrontier before the loop passes,
since none of them use it. With this, we now only run
domfrontier (an N^2 analysis) 3 times at clang -O3: once for
"early" per-function cleanup, once at the start of the
per-function pipeline to support SRoA, and once late because
the EHPrepare class uses it.

EHPrepare needs to stop using it, this is silly and wasteful.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112420 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
ec4219f60409ab6940f65673c252e1a63eec18b9 26-Aug-2010 Chris Lattner <sabre@nondot.org> add m_BitCast for matching a bitcast.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112222 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
dee1da0dc3b39eaafe26d51d3b069093de7aed09 26-Aug-2010 Chris Lattner <sabre@nondot.org> add m_BitCast for matching a bitcast.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112222 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
78cd3e7338615a871bff5fea2e2cf04f34e6f434 23-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111825 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
6bb156a6817aa9c9e02e5212db12d70e28faefc2 23-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111825 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7ea1a3d75d83ee85cad75e9f9837c5713aef23d2 23-Aug-2010 Dan Gohman <gohman@apple.com> formatted_tool_output_file::close needs to flush its buffer before
closing the underlying stream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111822 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
baf2883e0a294fabc059699037ad92822c46bd61 23-Aug-2010 Dan Gohman <gohman@apple.com> formatted_tool_output_file::close needs to flush its buffer before
closing the underlying stream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111822 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
a0a9d80139a34c948050f5277ec797e1f2a37577 21-Aug-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC: Add partial x86-64 support to COFF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111728 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
da0bfcdaf95d95a66e306ef6d45f638939272d34 21-Aug-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC: Add partial x86-64 support to COFF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111728 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
da4caa02773d3078133014854b7c1d942fbefbff 20-Aug-2010 Dan Gohman <gohman@apple.com> Delete SlowOperationInformer, which is no longer used.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111661 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
8d18006cf2e607fea265fa35c73ec2f8690f4b78 20-Aug-2010 Dan Gohman <gohman@apple.com> Delete SlowOperationInformer, which is no longer used.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111661 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
8eaea3c212760e39e4916f4e9139bb03382e3751 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Add include guards to Support/Regex.h.

If the omission was intentional, please add a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111657 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
3120c18e08290e80ec4f109678269779cfe9e313 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Add include guards to Support/Regex.h.

If the omission was intentional, please add a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111657 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
151848e64b4d8880065f5596305e3c413a179a87 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111656 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
egex.h
7112c86fc208145334aaa04812c794ce6feef416 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111656 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
egex.h
77684e143c5a88d1f834b5311cb98425b423695e 20-Aug-2010 Dan Gohman <gohman@apple.com> Delete raw_stdout_ostream and raw_stderr_ostream, which are unused
outside of outs() and errs() themselves, and they don't really
need custom classes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111642 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
a1f89deb56eddf6a7738660063cbe7db9775b01c 20-Aug-2010 Dan Gohman <gohman@apple.com> Delete raw_stdout_ostream and raw_stderr_ostream, which are unused
outside of outs() and errs() themselves, and they don't really
need custom classes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111642 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
becef7bcf3d61d7bfd9726aa5637baebc6123a91 20-Aug-2010 Dan Gohman <gohman@apple.com> Add an inspirational quote.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111641 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
00d1cdeca9d718d2eb51859800cf66a9d5e386ca 20-Aug-2010 Dan Gohman <gohman@apple.com> Add an inspirational quote.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111641 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7aac2b998aac27dc2a7f15dce28bab092bdeaf5f 20-Aug-2010 Dan Gohman <gohman@apple.com> Add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111640 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
27f7aad50b93f02e81f7875dba09a5a1020431e6 20-Aug-2010 Dan Gohman <gohman@apple.com> Add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111640 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
76c9f1a5bf90e34bd1cf8776ad517791cfdb9c00 20-Aug-2010 Dan Gohman <gohman@apple.com> Move raw_ostream's Error flag into raw_fd_ostream, as that's the only
class which is using it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111639 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
8df0e010469db2db5c641a50d9cfa74a5ffe68ea 20-Aug-2010 Dan Gohman <gohman@apple.com> Move raw_ostream's Error flag into raw_fd_ostream, as that's the only
class which is using it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111639 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
51ba37981c932e21f9e9b8756008a2136e7ace16 20-Aug-2010 Dan Gohman <gohman@apple.com> Export error-handling functions in formatted_tool_output_file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111638 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
634d6619655f96628457d4b7126cd3a398f77631 20-Aug-2010 Dan Gohman <gohman@apple.com> Export error-handling functions in formatted_tool_output_file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111638 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
cebc54049b8a0dbe23c6245f714b9d11466fc398 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Disambiguate calls to WriteGraph() to disable ADL.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111618 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
68e18b30540104f2302f560dd90b405b60084158 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Disambiguate calls to WriteGraph() to disable ADL.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111618 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
d90da88ceb204dedb04ca65cf9138361a83c7ea9 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111617 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
c0086edac493a767bfbe8ee53f7e5856e9655007 20-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111617 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
d8487bfc42705d968615a2a7a0e2443bd73d6245 20-Aug-2010 Dan Gohman <gohman@apple.com> Introduce a new tool_output_file class, which extends raw_ostream with
functionality that most command-line tools need: ensuring that the
output file gets deleted if the tool is interrupted or encounters an
error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111595 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
af0636f4d63e6ff2fd066d4594d8666459d1930d 20-Aug-2010 Dan Gohman <gohman@apple.com> Introduce a new tool_output_file class, which extends raw_ostream with
functionality that most command-line tools need: ensuring that the
output file gets deleted if the tool is interrupted or encounters an
error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111595 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
0ed8caef0bc425840f088b9f9b0e593f0ad7d410 19-Aug-2010 Dan Gohman <gohman@apple.com> Make raw_fd_ostream consider itself the owner of STDOUT_FILENO when
constructed with an output filename of "-". In particular, allow the
file descriptor to be closed, and close the file descriptor in the
destructor if it hasn't been explicitly closed already, to ensure
that any write errors are detected.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111436 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
2499990699899e6da865c919fe63ef6e6c6f4a00 19-Aug-2010 Dan Gohman <gohman@apple.com> Make raw_fd_ostream consider itself the owner of STDOUT_FILENO when
constructed with an output filename of "-". In particular, allow the
file descriptor to be closed, and close the file descriptor in the
destructor if it hasn't been explicitly closed already, to ensure
that any write errors are detected.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111436 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e3d9c194c97e7edff2c3aa3d3f8b030efeac696a 18-Aug-2010 Dan Gohman <gohman@apple.com> Introduce a ScopedFatalErrorHandler class to make it easy to register
fatal error handlers which automatically get unregistered at the end
of a scope.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111398 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
e16068240e21650becf9b47a4dc2284531397696 18-Aug-2010 Dan Gohman <gohman@apple.com> Introduce a ScopedFatalErrorHandler class to make it easy to register
fatal error handlers which automatically get unregistered at the end
of a scope.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111398 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
79c18f887c09f6bbd89e6abd1a2bd78dc5bb9094 18-Aug-2010 Daniel Dunbar <daniel@zuster.org> CrashRecovery: Add CrashRecoveryContext::GetCurrent(), so clients can find the active context from anywhere.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111308 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
a8fa798246503c726b02b415bb1f1b26bc0b0159 18-Aug-2010 Daniel Dunbar <daniel@zuster.org> CrashRecovery: Add CrashRecoveryContext::GetCurrent(), so clients can find the active context from anywhere.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111308 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
53a9d734ec575c730f0b12705f742b20fe6d1866 18-Aug-2010 Daniel Dunbar <daniel@zuster.org> CrashRecovery: Make CrashRecoveryContext static methods thread safe.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111307 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
c0c815e887d72414894930b62221acc32488c2d0 18-Aug-2010 Daniel Dunbar <daniel@zuster.org> CrashRecovery: Make CrashRecoveryContext static methods thread safe.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111307 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
b001d9753c11709b1bec11bbf13d3488d72d49b4 17-Aug-2010 Anton Korobeynikov <asl@math.spbu.ru> Add some win64 coff goodness.
Patch by Cameron Esfahani!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111287 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
d7343ddce500c8043a58dd50cac6127ba7d9d9a3 17-Aug-2010 Anton Korobeynikov <asl@math.spbu.ru> Add some win64 coff goodness.
Patch by Cameron Esfahani!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111287 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
ed0397fcbdf2491750eb5be4687909b663172dbb 17-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Sketch i386 relocations handling, from Roman Divacky.

Hello world builds & runs now on i386/ELF with -integrated-as.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111264 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
e5b57347e9485b59dd8d70f8f90d7794f473147a 17-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Sketch i386 relocations handling, from Roman Divacky.

Hello world builds & runs now on i386/ELF with -integrated-as.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111264 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
0a920a921f2d5c7b802f0dd077e614a1344c65ae 17-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> There is this new "LLVM" compiler that supports __builtin_bswap but thinks it's gcc 4.2.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111228 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
755525ad233b15c7811b2860f74f70b7c5a20778 17-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> There is this new "LLVM" compiler that supports __builtin_bswap but thinks it's gcc 4.2.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111228 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
bc219c05d5369c7ab330a3d1ad2a0a60fc6bef20 16-Aug-2010 Matt Fleming <matt@console-pimps.org> Add ELF ObjectWriter and Streamer support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111172 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
6b2e257e74b2c8e2f93bb244e0c80cb73005b74a 16-Aug-2010 Matt Fleming <matt@console-pimps.org> Add ELF ObjectWriter and Streamer support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111172 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
a1bccc58b83479dc744127a4a2c79f2f7d4f8862 12-Aug-2010 Nick Lewycky <nicholas@mxc.ca> Clean up ConstantRange a bit:
- remove ashr which never worked.
- fix lshr and shl and add tests.
- remove dead function "intersect1Wrapped".
- add a new sub method to subtract ranges, with test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110861 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
7f9ef4bb514d5a28637789d8f397dadd4344dc1b 12-Aug-2010 Nick Lewycky <nicholas@mxc.ca> Clean up ConstantRange a bit:
- remove ashr which never worked.
- fix lshr and shl and add tests.
- remove dead function "intersect1Wrapped".
- add a new sub method to subtract ranges, with test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110861 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
f935ba0b09a1183f962d332455e41d80f4841abc 10-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110679 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
1e67278dd53de90b0ea9d39c345383d5a9f2bf86 10-Aug-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110679 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
8892954c3a4a20ae00c1fdf7721d99e2f48d73b6 07-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Roll back my last two commits, valgrind complains.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110518 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
fff0f11989a9ef23ab3e308783cc90c7620000eb 07-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Roll back my last two commits, valgrind complains.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110518 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
926dff94a12a3b07c14f7ece2e42c2a7eb6c6c58 07-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> A reference to the Timer's name is safe, it outlives the contents of the vector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110517 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
0055fac7243626a7526c0f0823776e4b82ebd034 07-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> A reference to the Timer's name is safe, it outlives the contents of the vector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110517 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
7bbe4f47853f4cfda1d1bd6c0af2c11fc01e1e1a 07-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Shrink PassNameParser's binary size with array_pod_sort.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110512 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
5aa8df22e7b8a2ff40c231beacbd72fd61f5b419 07-Aug-2010 Benjamin Kramer <benny.kra@googlemail.com> Shrink PassNameParser's binary size with array_pod_sort.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110512 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
ac1cab6e8e55b124e123106bffacb5eceac61533 07-Aug-2010 Owen Anderson <resistor@mac.com> Remove layering violation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110505 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
0aede9e2a85e596f5444378e71f52b65e28b3d71 07-Aug-2010 Owen Anderson <resistor@mac.com> Remove layering violation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110505 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
c9723388045268d8275883fd53997f7a48467112 07-Aug-2010 Owen Anderson <resistor@mac.com> Add an inverse() method to ConstantRange.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110504 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
9773e45a1e97f5098905bac26b8b8b7c844473f0 07-Aug-2010 Owen Anderson <resistor@mac.com> Add an inverse() method to ConstantRange.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110504 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
011521040e8e5446f8785bc259293969961d2bfd 07-Aug-2010 Dan Gohman <gohman@apple.com> Delete this explicit assignment operator; it's equivalent to
the implicit one.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110498 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
fc8b58e1d435c248fee873e5d58674cc57074927 07-Aug-2010 Dan Gohman <gohman@apple.com> Delete this explicit assignment operator; it's equivalent to
the implicit one.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110498 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
58301e60a7b8d7a671addbd5c6b351b5607bb970 07-Aug-2010 Owen Anderson <resistor@mac.com> Add a convenience constructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110493 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
634bab148cacc8cc8647172056c26c8bc3f60a65 07-Aug-2010 Owen Anderson <resistor@mac.com> Add a convenience constructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110493 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
74708f5b949d8142025834f53cb97c576fa34a4e 07-Aug-2010 Rafael Espindola <rafael.espindola@gmail.com> Some cleanup. Use a class (OptionInfo) instead of a pair of a pair and remove
some default values that are not used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110485 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
assNameParser.h
565aafc997ee08803e2a6f7544f183b9e796ba94 07-Aug-2010 Rafael Espindola <rafael.espindola@gmail.com> Some cleanup. Use a class (OptionInfo) instead of a pair of a pair and remove
some default values that are not used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110485 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
assNameParser.h
db19e05cac2c9d276e611ac556080826e82f4afb 05-Aug-2010 Gabor Greif <ggreif@gmail.com> remove the private hack from CallInst, it was not supposed to hit the branch anyway

as a positive consequence the CallSite::getCallee() methods now can be rewritten to be
a bit more efficient

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110380 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3ecf355c7a6f6f559f3c85b46d041ffda5163a8c 05-Aug-2010 Gabor Greif <ggreif@gmail.com> remove the private hack from CallInst, it was not supposed to hit the branch anyway

as a positive consequence the CallSite::getCallee() methods now can be rewritten to be
a bit more efficient

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110380 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6c78fcbe0f479880e93f470db390cb897c0434c4 05-Aug-2010 Owen Anderson <resistor@mac.com> Give ConstantRange an operator=


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110376 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
9850a288664087875c7c35bec8c92b72a72ac142 05-Aug-2010 Owen Anderson <resistor@mac.com> Give ConstantRange an operator=


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110376 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
b2ad453945a2959d2bb61775943faba8da571451 04-Aug-2010 Edwin Török <edwintorok@gmail.com> Fix build of DataFlow.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110193 91177308-0d34-0410-b5e6-96231b3b80d8
ataFlow.h
484959a26c097968e9b331b5063cda788ae1e034 04-Aug-2010 Torok Edwin <edwintorok@gmail.com> Fix build of DataFlow.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110193 91177308-0d34-0410-b5e6-96231b3b80d8
ataFlow.h
d93e6b2c4e1ab9ba97d010679acaf8fdf1dea59c 04-Aug-2010 Dan Gohman <gohman@apple.com> Don't construct a std::string with a literal "".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110180 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
26e064ff326ad7daa187143ad1164497f619ca40 04-Aug-2010 Dan Gohman <gohman@apple.com> Don't construct a std::string with a literal "".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110180 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
620439b76757bb7fb242c2f5f28fd4b69a9bab62 04-Aug-2010 Dan Gohman <gohman@apple.com> Don't print the filename twice in file-not-found errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110179 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
582554555376cd60507c77cadb45edb88acfe7ed 04-Aug-2010 Dan Gohman <gohman@apple.com> Don't print the filename twice in file-not-found errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110179 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
503e204470d7d49eacf973cef28ec26ff6641914 03-Aug-2010 Dan Gohman <gohman@apple.com> Thread const correctness through a bunch of AliasAnalysis interfaces and
eliminate several const_casts.

Make CallSite implicitly convertible to ImmutableCallSite.

Rename the getModRefBehavior for intrinsic IDs to
getIntrinsicModRefBehavior to avoid overload ambiguity with CallSite,
which happens to be implicitly convertible to bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110155 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
79fca6fea87be7221843031870bbf2c9ae1fc555 03-Aug-2010 Dan Gohman <gohman@apple.com> Thread const correctness through a bunch of AliasAnalysis interfaces and
eliminate several const_casts.

Make CallSite implicitly convertible to ImmutableCallSite.

Rename the getModRefBehavior for intrinsic IDs to
getIntrinsicModRefBehavior to avoid overload ambiguity with CallSite,
which happens to be implicitly convertible to bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110155 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7f15b00d5055e8b0f4abbd772093a99f2eb3f089 30-Jul-2010 Gabor Greif <ggreif@gmail.com> remove a layer of cruft

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109821 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
436ed471cc70f632dbcd1e82cb8e90d2c0f91ccd 30-Jul-2010 Gabor Greif <ggreif@gmail.com> remove a layer of cruft

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109821 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
925ef45a58c65c92af3f69576240320c397aa73c 28-Jul-2010 Daniel Dunbar <daniel@zuster.org> Support: Add CrashRecoveryContext helper object.
- Designed as a simple wrapper to allow clients to attempt to catch crashes
(memory errors, assertion violations, etc.) and do some kind of recovery.

- Currently doesn't actually attempt to catch crashes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109586 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
a309dac868e591d7254f570b950a50f640c009f8 28-Jul-2010 Daniel Dunbar <daniel@zuster.org> Support: Add CrashRecoveryContext helper object.
- Designed as a simple wrapper to allow clients to attempt to catch crashes
(memory errors, assertion violations, etc.) and do some kind of recovery.

- Currently doesn't actually attempt to catch crashes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109586 91177308-0d34-0410-b5e6-96231b3b80d8
rashRecoveryContext.h
e1893b8b03472cf5027ab84453a665ceae901a38 28-Jul-2010 Gabor Greif <ggreif@gmail.com> we are supposed to only create proper CallSites from an instruction (esp. CallInst and InvokeInst)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109576 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
756f0d2ab4036b154bd1199aee839652f7b0f10a 28-Jul-2010 Gabor Greif <ggreif@gmail.com> we are supposed to only create proper CallSites from an instruction (esp. CallInst and InvokeInst)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109576 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e488c5ed3c4a919be09816aaa0147d99cdc7d5d9 28-Jul-2010 Gabor Greif <ggreif@gmail.com> reintroduce original (asserting) semantics of CallSite(Instruction *II)
add instead a CallSite(Value* V) constructor that is consistent with ImmutableCallSize
and use that one in client code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109553 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b344a346f1431bc942f96d0e0b8b87ee8f1b0475 28-Jul-2010 Gabor Greif <ggreif@gmail.com> reintroduce original (asserting) semantics of CallSite(Instruction *II)
add instead a CallSite(Value* V) constructor that is consistent with ImmutableCallSize
and use that one in client code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109553 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
d13804b121dd22efc838715d51659643149f88dc 27-Jul-2010 Gabor Greif <ggreif@gmail.com> remove bogus assert, use static_cast for additional checking

left two new asserts commented out, because they would fire in clang, have to hunt those down first

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109544 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a6758446b78ee93b8a05967b28ce57795b2ee1cc 27-Jul-2010 Gabor Greif <ggreif@gmail.com> remove bogus assert, use static_cast for additional checking

left two new asserts commented out, because they would fire in clang, have to hunt those down first

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109544 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
04a4ec2f27c060cce3f285cf8f3e80f2fede5d80 26-Jul-2010 Dan Gohman <gohman@apple.com> Add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109435 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
72eb3007150837e4996485457ff120e3ad1c10fa 26-Jul-2010 Dan Gohman <gohman@apple.com> Add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109435 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
170c519ff84c5b24877b1adfc9f8d29d1b5fd4d7 26-Jul-2010 Dan Gohman <gohman@apple.com> Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus
dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
pass in StandardPasses.h to ensure that it gets scheduled at the right
time.

Declare that loop unrolling preserves ScalarEvolution, and shuffle some
getAnalysisUsages.

This eliminates one LoopSimplify and one LCCSA run in the standard
compile opts sequence.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109413 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
052f0001588a1613f845c84c04b38ced28ad6711 26-Jul-2010 Dan Gohman <gohman@apple.com> Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus
dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
pass in StandardPasses.h to ensure that it gets scheduled at the right
time.

Declare that loop unrolling preserves ScalarEvolution, and shuffle some
getAnalysisUsages.

This eliminates one LoopSimplify and one LCCSA run in the standard
compile opts sequence.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109413 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
470a307aaa26046ae269cee9e098406ff91c416e 26-Jul-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC: Add WinCOFFObjectWriter implementation.

Origonal Windows COFF implementation by Nathan Jedffords.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109389 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
801a3591161789e9716b0ec519f0f950b2d0c2ac 26-Jul-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC: Add WinCOFFObjectWriter implementation.

Origonal Windows COFF implementation by Nathan Jedffords.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109389 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
d45ae7b03d51237c1239a908c0ff1445053fbd06 24-Jul-2010 Owen Anderson <resistor@mac.com> Fix use-after-free error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109288 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
448e1874999d2a510d3d2d91f0a17f3a7cb4f4eb 24-Jul-2010 Owen Anderson <resistor@mac.com> Fix use-after-free error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109288 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
11e122f4c8db54a598866dbdb0f1961f7b7ddcc2 22-Jul-2010 Tobias Grosser <grosser@fim.uni-passau.de> Add new RegionInfo pass.

The RegionInfo pass detects single entry single exit regions in a function,
where a region is defined as any subgraph that is connected to the remaining
graph at only two spots.
Furthermore an hierarchical region tree is built.
Use it by calling "opt -regions analyze" or "opt -view-regions".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109089 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
f96b0063674e6bf72da5429bd49097e33c2325c7 22-Jul-2010 Tobias Grosser <grosser@fim.uni-passau.de> Add new RegionInfo pass.

The RegionInfo pass detects single entry single exit regions in a function,
where a region is defined as any subgraph that is connected to the remaining
graph at only two spots.
Furthermore an hierarchical region tree is built.
Use it by calling "opt -regions analyze" or "opt -view-regions".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109089 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
b552a019ddcee11b13eba737800ca7f6a406befc 21-Jul-2010 Daniel Dunbar <daniel@zuster.org> Use System/DataTypes.h instead of stdint.h, which isn't portable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109026 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
ec237ffd28f1408f524dc134220d8502e167f4d9 21-Jul-2010 Daniel Dunbar <daniel@zuster.org> Use System/DataTypes.h instead of stdint.h, which isn't portable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109026 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
8589bf8e77855605322d7314a549d5c7a4cdf321 21-Jul-2010 Greg Clayton <gclayton@apple.com> Added support to MachO.h for many defines and structures that are needed
to Parse mach-o files. All defines have been renamed to not conflict with
#defines in mach header files, all structures were left named the same but
are in the llvm::MachO namespace.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108953 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
98cfb53af473d10bedf3cdc8d4cc62497d086186 21-Jul-2010 Greg Clayton <gclayton@apple.com> Added support to MachO.h for many defines and structures that are needed
to Parse mach-o files. All defines have been renamed to not conflict with
#defines in mach header files, all structures were left named the same but
are in the llvm::MachO namespace.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108953 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
d5ff13c81851639b1b09eb892d0f4d920b58bdba 20-Jul-2010 Matt Fleming <matt@console-pimps.org> Add the rest of the SHT_* values as defined in the System V ABI
ELF specification.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108924 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
b676d9815dc7ce3a14d655322f307f335708155b 20-Jul-2010 Matt Fleming <matt@console-pimps.org> Add the rest of the SHT_* values as defined in the System V ABI
ELF specification.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108924 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
3ee7134bbfbfd62714a998394007394f31358935 20-Jul-2010 Gabor Greif <ggreif@gmail.com> remove testing cruft, this can be found in unittests/Support/Casting.cpp now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108868 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
c4fd9afaf959309f9e522aae8facf936aaaf9ee4 20-Jul-2010 Gabor Greif <ggreif@gmail.com> remove testing cruft, this can be found in unittests/Support/Casting.cpp now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108868 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
cb14cb861b75a0a643c16851af1c350ce7b38d4c 20-Jul-2010 Owen Anderson <resistor@mac.com> Speculatively revert r108813, in an attempt to get the self-host buildbots working again. I don't see why this patch
would cause them to fail the way they are, but none of the other intervening patches seem likely either.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108818 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
8be3291f5942e3ae4a5d66c480e7aabe2f771031 20-Jul-2010 Owen Anderson <resistor@mac.com> Speculatively revert r108813, in an attempt to get the self-host buildbots working again. I don't see why this patch
would cause them to fail the way they are, but none of the other intervening patches seem likely either.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108818 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
0e493f5f82ca7b430758ded7a505aa0f2af4674b 20-Jul-2010 Owen Anderson <resistor@mac.com> Reapply r108794, a fix for the failing test from last time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108813 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
9e081004dad1c3cae7de82ad412c3f19a1a48d48 20-Jul-2010 Owen Anderson <resistor@mac.com> Reapply r108794, a fix for the failing test from last time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108813 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
3a798fa6251a04fdccbd8164679dcf0c49ff313b 20-Jul-2010 Daniel Dunbar <daniel@zuster.org> Revert r108794, "Separate PassInfo into two classes: a constructor-free
superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is
breaking teh everything.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108805 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
e8a469cdb400249ec263c79d1021f953f42f2760 20-Jul-2010 Daniel Dunbar <daniel@zuster.org> Revert r108794, "Separate PassInfo into two classes: a constructor-free
superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is
breaking teh everything.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108805 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
d0305eb7f8eb2530dc8d70073a2fe664ccf932cf 20-Jul-2010 Owen Anderson <resistor@mac.com> Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108794 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
8ba15cb7099d9eadcb345328228d77ffa5afa42d 20-Jul-2010 Owen Anderson <resistor@mac.com> Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108794 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
47fa2148960037ae8e881420c54bc3ddc68a55e8 16-Jul-2010 Douglas Gregor <doug.gregor@gmail.com> Remove extraneous semicolons after member functions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108525 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
1461520f8cba8ebbdfd832d5396079888f1ab96e 16-Jul-2010 Douglas Gregor <dgregor@apple.com> Remove extraneous semicolons after member functions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108525 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
414c6c091ce59a65c7dff605e43a05b89aa0792d 16-Jul-2010 Gabor Greif <ggreif@gmail.com> eliminate CallInst::ArgOffset

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108522 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a6aac4c5bc22bb10c7adb11eee3f82c703af7002 16-Jul-2010 Gabor Greif <ggreif@gmail.com> eliminate CallInst::ArgOffset

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108522 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6e4ef4df2d5c54c6139c2635a36e564f73fcf8a1 16-Jul-2010 Eli Friedman <eli.friedman@gmail.com> A few more minor additions to ELF.h.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108519 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
53621a1a7376cba5d0a22c12a171933eb8c6d3f6 16-Jul-2010 Eli Friedman <eli.friedman@gmail.com> A few more minor additions to ELF.h.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108519 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
0c836a658d7f95bb4a1859ff92f921460124840a 15-Jul-2010 Chris Lattner <sabre@nondot.org> remove some unneeded overloads that were causing
ambiguity problems on some systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108462 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
34068cb96f6d4e0d08f38fa440f2bbc1011e4ba7 15-Jul-2010 Chris Lattner <sabre@nondot.org> remove some unneeded overloads that were causing
ambiguity problems on some systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108462 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
4cf6e73f51b33e252cdad17bc03f487f17418941 15-Jul-2010 Benjamin Kramer <benny.kra@googlemail.com> Don't pass StringRef by reference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108366 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
tringPool.h
38e59891ee4417a9be2f8146ce0ba3269e38ac21 15-Jul-2010 Benjamin Kramer <benny.kra@googlemail.com> Don't pass StringRef by reference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108366 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
tringPool.h
7ba892662508d1255c802a11a3b881beeb24be86 14-Jul-2010 Chris Lattner <sabre@nondot.org> Merge lib/Target/X86/X86COFF.h into include/llvm/Support/COFF.h,
patch by Michael Spencer!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108342 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
9fe2c6704582a6730f4fc99dd85e214b23f3494b 14-Jul-2010 Chris Lattner <sabre@nondot.org> Merge lib/Target/X86/X86COFF.h into include/llvm/Support/COFF.h,
patch by Michael Spencer!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108342 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
29c62b38df76ecea6d58382d9f3f1b33322010d0 13-Jul-2010 Stephen Wilson <wilsons@start.ca> Bring ELF64 on par with ELF32, add a few magic constants and support ".dynamic"
section entries.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108221 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
9a9ad77847c1be4ffc5ba6304e33ccecbf72e43f 13-Jul-2010 Stephen Wilson <wilsons@start.ca> Bring ELF64 on par with ELF32, add a few magic constants and support ".dynamic"
section entries.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108221 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
c74350c911df536d54a9a309348d20b3975f07ac 13-Jul-2010 Stephen Wilson <wilsons@start.ca> Simple format/style fixes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108203 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
314451326ad1ef89241b240a704e104897e4ee81 13-Jul-2010 Stephen Wilson <wilsons@start.ca> Simple format/style fixes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108203 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
77be94ee764d1e0497eb0d6ba570f3dda86ad3f1 12-Jul-2010 Stephen Wilson <wilsons@start.ca> Test commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108197 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
fe4591bfc2b147c10d6a7b1a5af56454fb78dace 12-Jul-2010 Stephen Wilson <wilsons@start.ca> Test commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108197 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
4acd08bf4ef3047f2048d1b9ffc2f36b91ff5944 12-Jul-2010 Eric Christopher <echristo@apple.com> Remove tab characters and 80-col.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108127 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
6c507926532d609b1225c29878b37c562e4277f2 12-Jul-2010 Eric Christopher <echristo@apple.com> Remove tab characters and 80-col.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108127 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
ec25c929e718999b22b3fcee506104f995b3b457 09-Jul-2010 Bob Wilson <bob.wilson@apple.com> --- Reverse-merging r107947 into '.':
U utils/TableGen/FastISelEmitter.cpp
--- Reverse-merging r107943 into '.':
U test/CodeGen/X86/fast-isel.ll
U test/CodeGen/X86/fast-isel-loads.ll
U include/llvm/Target/TargetLowering.h
U include/llvm/Support/PassNameParser.h
U include/llvm/CodeGen/FunctionLoweringInfo.h
U include/llvm/CodeGen/CallingConvLower.h
U include/llvm/CodeGen/FastISel.h
U include/llvm/CodeGen/SelectionDAGISel.h
U lib/CodeGen/LLVMTargetMachine.cpp
U lib/CodeGen/CallingConvLower.cpp
U lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
U lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
U lib/CodeGen/SelectionDAG/FastISel.cpp
U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
U lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
U lib/CodeGen/SelectionDAG/InstrEmitter.cpp
U lib/CodeGen/SelectionDAG/TargetLowering.cpp
U lib/Target/XCore/XCoreISelLowering.cpp
U lib/Target/XCore/XCoreISelLowering.h
U lib/Target/X86/X86ISelLowering.cpp
U lib/Target/X86/X86FastISel.cpp
U lib/Target/X86/X86ISelLowering.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107987 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
02266e29f9250d74c5ec720aff23add3410ae920 09-Jul-2010 Bob Wilson <bob.wilson@apple.com> --- Reverse-merging r107947 into '.':
U utils/TableGen/FastISelEmitter.cpp
--- Reverse-merging r107943 into '.':
U test/CodeGen/X86/fast-isel.ll
U test/CodeGen/X86/fast-isel-loads.ll
U include/llvm/Target/TargetLowering.h
U include/llvm/Support/PassNameParser.h
U include/llvm/CodeGen/FunctionLoweringInfo.h
U include/llvm/CodeGen/CallingConvLower.h
U include/llvm/CodeGen/FastISel.h
U include/llvm/CodeGen/SelectionDAGISel.h
U lib/CodeGen/LLVMTargetMachine.cpp
U lib/CodeGen/CallingConvLower.cpp
U lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
U lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
U lib/CodeGen/SelectionDAG/FastISel.cpp
U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
U lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
U lib/CodeGen/SelectionDAG/InstrEmitter.cpp
U lib/CodeGen/SelectionDAG/TargetLowering.cpp
U lib/Target/XCore/XCoreISelLowering.cpp
U lib/Target/XCore/XCoreISelLowering.h
U lib/Target/X86/X86ISelLowering.cpp
U lib/Target/X86/X86FastISel.cpp
U lib/Target/X86/X86ISelLowering.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107987 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
1dac4614d6666137fab13240cbd1988227389164 09-Jul-2010 Dan Gohman <gohman@apple.com> Re-apply bottom-up fast-isel, with fixes. Be very careful to avoid emitting
a DBG_VALUE after a terminator, or emitting any instructions before an EH_LABEL.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107943 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
bf87e2491789d6ff788629e22e93d0c1ca02ae85 09-Jul-2010 Dan Gohman <gohman@apple.com> Re-apply bottom-up fast-isel, with fixes. Be very careful to avoid emitting
a DBG_VALUE after a terminator, or emitting any instructions before an EH_LABEL.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107943 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
8edb93798ec9c6755ffe5ec5ebacd6e6ea5cf592 08-Jul-2010 Gabor Greif <ggreif@gmail.com> remove unneeded parens

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107881 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
dba3e15625db58fca295b2f46eaafef60cd5f23c 08-Jul-2010 Gabor Greif <ggreif@gmail.com> remove unneeded parens

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107881 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
2c8382da2674b1e91d7f9ea590e38f4a00a82e1d 07-Jul-2010 Gabor Greif <ggreif@gmail.com> conditionalize on CallInst::ArgOffset

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107766 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
392a8867bbe315623584bdaddd77f5a020ebed94 07-Jul-2010 Gabor Greif <ggreif@gmail.com> conditionalize on CallInst::ArgOffset

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107766 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
64784e1d671f4bf39b809f10916127208a7da11f 06-Jul-2010 Matt Fleming <matt@console-pimps.org> Add X86_64 ELF relocation values and ELF64 relocation classes.

Patch from Roman Divacky.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107688 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
004c82ad7c0d2da761726f063373c28ffd18e66d 06-Jul-2010 Matt Fleming <matt@console-pimps.org> Add X86_64 ELF relocation values and ELF64 relocation classes.

Patch from Roman Divacky.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107688 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
5a5c30416354f49ccb27b33f32bc14287f0b903b 06-Jul-2010 Matt Fleming <matt@console-pimps.org> Add some more ELF OSABI values as found in the System V Application
Binary Interface specification.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107685 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
e07cc5dab102c0f8c3f66c2703c95e547d6bf1c6 06-Jul-2010 Matt Fleming <matt@console-pimps.org> Add some more ELF OSABI values as found in the System V Application
Binary Interface specification.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107685 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
5010fbb7ef0a443e871ad42824a42bee435187cf 06-Jul-2010 John McCall <rjmccall@apple.com> Provide IRBuilder conveniences for creating integer constants at common widths,
and give a more precise return type for some of the type-creation methods.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107683 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b271d8679ded357e70ee989d708cdd2c963342b2 06-Jul-2010 John McCall <rjmccall@apple.com> Provide IRBuilder conveniences for creating integer constants at common widths,
and give a more precise return type for some of the type-creation methods.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107683 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
c5849f93b4482a7dbcab39be5c9a97128dcbbd4d 06-Jul-2010 John McCall <rjmccall@apple.com> Provide an abstraction to save and restore the current insertion point of
an IRBuilder.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107677 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
5ed9eee61aa8d87e8c2eaa2025bd7c73365fedbb 06-Jul-2010 John McCall <rjmccall@apple.com> Provide an abstraction to save and restore the current insertion point of
an IRBuilder.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107677 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
529093fe1d000eabc5f110304465fd23a0042dac 06-Jul-2010 Nick Lewycky <nicholas@mxc.ca> Fix typo 'getter' where 'setter' was intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107635 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b3344f87ac7833240a40d87d29115bed5f6b2396 06-Jul-2010 Nick Lewycky <nicholas@mxc.ca> Fix typo 'getter' where 'setter' was intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107635 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
55f58f190103e64afb1c649a19f02fc217b0ad5b 01-Jul-2010 Daniel Dunbar <daniel@zuster.org> Remove stray comma.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107425 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
eb89c90f0b79fbec9b7b20776764a9c52a4c7965 01-Jul-2010 Daniel Dunbar <daniel@zuster.org> Remove stray comma.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107425 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
9e6742e75a3828fe4ccad95cde287c9dab159cf5 01-Jul-2010 Daniel Dunbar <daniel@zuster.org> MC: Move COFF enumeration constants to llvm/Support/COFF.h, patch by Michael
Spencer!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107418 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
94610588af55ae7d16ba7d72d1e68324631ec249 01-Jul-2010 Daniel Dunbar <daniel@zuster.org> MC: Move COFF enumeration constants to llvm/Support/COFF.h, patch by Michael
Spencer!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107418 91177308-0d34-0410-b5e6-96231b3b80d8
OFF.h
fa0879fabd13d4600547d4cdbbffd3c09aedf14d 01-Jul-2010 Gabor Greif <ggreif@gmail.com> reformulate CallSiteBase::getCallee to adapt to CallInst::ArgOffset, and make it work even if CallInst::op_* are private

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107392 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
cf32c6e0049405b521f0baf720d1fe76ec510b26 01-Jul-2010 Gabor Greif <ggreif@gmail.com> reformulate CallSiteBase::getCallee to adapt to CallInst::ArgOffset, and make it work even if CallInst::op_* are private

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107392 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
402bee45a0e2ee73b0e53ae3b4a354466e63ce50 27-Jun-2010 Chris Lattner <sabre@nondot.org> fit in 80 cols


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106968 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ae925f5c1eb494785e1d96d2f36d94136186524d 27-Jun-2010 Chris Lattner <sabre@nondot.org> fit in 80 cols


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106968 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0d7373da6af3a9578bc5f977d226f12d37b2d992 25-Jun-2010 Benjamin Kramer <benny.kra@googlemail.com> Tweak MemoryBuffer to allocate the class itself, the name and possibly the
buffer in the same chunk of memory.

2 less mallocs for every uninitialized MemoryBuffer and 1 less malloc for every
MemoryBuffer pointing to a memory range translate into 20% less mallocs on
clang -cc1 -Eonly Cocoa_h.m.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106839 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
d4d1f85aa751cadf69768746afd2c6c43c116ac2 25-Jun-2010 Benjamin Kramer <benny.kra@googlemail.com> Tweak MemoryBuffer to allocate the class itself, the name and possibly the
buffer in the same chunk of memory.

2 less mallocs for every uninitialized MemoryBuffer and 1 less malloc for every
MemoryBuffer pointing to a memory range translate into 20% less mallocs on
clang -cc1 -Eonly Cocoa_h.m.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106839 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
4a4e563b3748ff8922fa6a6ac172bbe5a8fa2aa5 24-Jun-2010 Dan Gohman <gohman@apple.com> Add overloads for getFile and getFileOrSTDIN which take a const char *
instead of a StringRef, avoiding the need to copy the string in the
common case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106754 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
60e6f3d4123a01babeb2c1a0e00d0a2b109008e5 24-Jun-2010 Dan Gohman <gohman@apple.com> Add overloads for getFile and getFileOrSTDIN which take a const char *
instead of a StringRef, avoiding the need to copy the string in the
common case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106754 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
eac4870bc4d7308c96e703dcd3ecaa5ac99ed51a 22-Jun-2010 Dan Gohman <gohman@apple.com> Add a comment explaining a non-obvious API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106539 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
30f30e43861512d78023c84952e5e524c0003ae9 22-Jun-2010 Dan Gohman <gohman@apple.com> Add a comment explaining a non-obvious API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106539 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
e2a9508b0f0ac87d802ef01aa8038846c2ef7976 18-Jun-2010 Dan Gohman <gohman@apple.com> Give NamedRegionTimer an Enabled flag, allowing all its clients to
switch from this:

if (TimePassesIsEnabled) {
NamedRegionTimer T(Name, GroupName);
do_something();
} else {
do_something(); // duplicate the code, this time without a timer!
}

to this:

{
NamedRegionTimer T(Name, GroupName, TimePassesIsEnabled);
do_something();
}


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106285 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
03c3dc7b6828d48a9f3be50896b3390a696caa64 18-Jun-2010 Dan Gohman <gohman@apple.com> Give NamedRegionTimer an Enabled flag, allowing all its clients to
switch from this:

if (TimePassesIsEnabled) {
NamedRegionTimer T(Name, GroupName);
do_something();
} else {
do_something(); // duplicate the code, this time without a timer!
}

to this:

{
NamedRegionTimer T(Name, GroupName, TimePassesIsEnabled);
do_something();
}


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106285 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
0dee25abc87400080e087b509d07776ae397f30a 17-Jun-2010 Jason Molenda <jmolenda@apple.com> Add the entire range of DW_OP_lit[0..31], DW_OP_reg[0..31], and
DW_OP_breg[0..31] to Dwarf.h.

Add "DW_" prefix to the llvm::dwarf::*String methods which did not
already have them in Dwarf.cpp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106197 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
f7a503e6bb0773c198620defd5bd71813d1398e9 17-Jun-2010 Jason Molenda <jmolenda@apple.com> Add the entire range of DW_OP_lit[0..31], DW_OP_reg[0..31], and
DW_OP_breg[0..31] to Dwarf.h.

Add "DW_" prefix to the llvm::dwarf::*String methods which did not
already have them in Dwarf.cpp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106197 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
786ff3c044b06bcde5f13512aa372cb22346bc92 27-May-2010 Dan Gohman <gohman@apple.com> Make ParseIRFile and getLazyIRFileModule incoporate the underlying
error message string into their own error message string, so that
the information isn't lost.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104887 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
8983846e6934fc52b9f2894fc95e68cbd1f56187 27-May-2010 Dan Gohman <gohman@apple.com> Make ParseIRFile and getLazyIRFileModule incoporate the underlying
error message string into their own error message string, so that
the information isn't lost.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104887 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
68a5e23e8beedb20b4bf3610f6346b077fbcd44b 27-May-2010 Dan Gohman <gohman@apple.com> Add basic error checking to MemoryBuffer::getSTDIN.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104855 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
30377e780918aacda1befa47054c61b0155c194c 27-May-2010 Dan Gohman <gohman@apple.com> Add basic error checking to MemoryBuffer::getSTDIN.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104855 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
ec30be9a64166b12096c86453a430abed3864d10 27-May-2010 Gabor Greif <ggreif@gmail.com> typo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104832 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
cb2df6bd53d03d04c9c7d0834c8774b8441b9464 27-May-2010 Gabor Greif <ggreif@gmail.com> typo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104832 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
76cc9b55425e0b0cdc6107a3b65ccceab376f416 14-May-2010 Dan Gohman <gohman@apple.com> Use PassManagerBase, to give clients the option of using either
FunctionPassManager or regular PassManager.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103773 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
8090e214f7a1e954227047cf289868d80cc88507 14-May-2010 Dan Gohman <gohman@apple.com> Use PassManagerBase, to give clients the option of using either
FunctionPassManager or regular PassManager.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103773 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
3462513398dda0694b4172d2a0f88fef1bf1ab28 14-May-2010 Dan Gohman <gohman@apple.com> Add an isNodeHidden to the graph traits, to support definition of
subgraph views.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103772 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
89938ce0ad6a0c13104495e2a00d3cc745e34068 14-May-2010 Dan Gohman <gohman@apple.com> Add an isNodeHidden to the graph traits, to support definition of
subgraph views.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103772 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
87177829e96ec9552c8a426fffd40a3090e515e5 11-May-2010 Duncan Sands <baldrick@free.fr> I got tired of VISIBILITY_HIDDEN colliding with the gcc enum. Rename it
to LLVM_LIBRARY_VISIBILITY and introduce LLVM_GLOBAL_VISIBILITY, which is
the opposite, for future use by dragonegg.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103495 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
16d8f8bd919b72866e687d99f3aa94a140137c59 11-May-2010 Duncan Sands <baldrick@free.fr> I got tired of VISIBILITY_HIDDEN colliding with the gcc enum. Rename it
to LLVM_LIBRARY_VISIBILITY and introduce LLVM_GLOBAL_VISIBILITY, which is
the opposite, for future use by dragonegg.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103495 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f842b8bdff0880cafe0c0999836f2367168614ae 10-May-2010 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103424 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
da24b34c9ac5ad4cfaea6bbb409bd589c912551a 10-May-2010 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103424 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
65b1531ec33d0a7bd7a7883d021905851c612fac 30-Apr-2010 Dan Gohman <gohman@apple.com> Properly escape edge source and destination labels.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102728 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
5b296e307f71bcaf3d31eff4a04ba5d2016eb628 30-Apr-2010 Dan Gohman <gohman@apple.com> Properly escape edge source and destination labels.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102728 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
7abe37e4aee38cc79d91dd069a37d7e91d5bef53 28-Apr-2010 Shih-wei Liao <sliao@google.com> Sync upstream to r102410.
Re-turn on sdk.

Change-Id: I91a890863989a67243b4d2dfd1ae09b843ebaeaf
llocator.h
FG.h
allSite.h
asting.h
ebugLoc.h
warf.h
LF.h
rrorHandling.h
ileUtilities.h
RBuilder.h
RReader.h
athExtras.h
emoryBuffer.h
ecyclingAllocator.h
lowOperationInformer.h
ourceMgr.h
imer.h
alueHandle.h
aw_ostream.h
9147417b152d607a6c4cef89f239044f46e33610 19-Apr-2010 Devang Patel <dpatel@apple.com> Add DW_AT_APPLE_omit_frame_ptr to encode -fomit-frame-pointer flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101805 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
2a4a3b7c6180202d24aff5b1992067907aefcab6 19-Apr-2010 Devang Patel <dpatel@apple.com> Add DW_AT_APPLE_omit_frame_ptr to encode -fomit-frame-pointer flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101805 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
7eedb9c3e42b25c2c48b56a760b55986a0d5c860 19-Apr-2010 Dan Gohman <gohman@apple.com> Add a few more ELF bits.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101778 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
5af8f421b6412e52530608097e39d2602195629f 19-Apr-2010 Dan Gohman <gohman@apple.com> Add a few more ELF bits.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101778 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
fbf918ba42cda25ba57d28eecd0aee89a83a1ecc 17-Apr-2010 Eric Christopher <echristo@apple.com> Revert 101465, it broke internal OpenGL testing.

Probably the best way to know that all getOperand() calls have been handled
is to replace that API instead of updating.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101579 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
551754c4958086cc6910da7c950f2875e212f5cf 17-Apr-2010 Eric Christopher <echristo@apple.com> Revert 101465, it broke internal OpenGL testing.

Probably the best way to know that all getOperand() calls have been handled
is to replace that API instead of updating.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101579 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b86413602e2d1d0d510016044092949168ac4d3f 16-Apr-2010 Gabor Greif <ggreif@gmail.com> reapply r101434
with a fix for self-hosting

rotate CallInst operands, i.e. move callee to the back
of the operand array

the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101465 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
4ec2258ffb495d7ce00177e447740ef1123a27db 16-Apr-2010 Gabor Greif <ggreif@gmail.com> reapply r101434
with a fix for self-hosting

rotate CallInst operands, i.e. move callee to the back
of the operand array

the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101465 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
ab05d8fcf61f7b926cf3e08f111794c69ca60690 16-Apr-2010 Gabor Greif <ggreif@gmail.com> back out r101423 and r101397, they break llvm-gcc self-host on darwin10

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101434 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
607a7ab3da72a2eb53553a520507cbb8068dd1d8 16-Apr-2010 Gabor Greif <ggreif@gmail.com> back out r101423 and r101397, they break llvm-gcc self-host on darwin10

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101434 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
763153ef8466ad11db0c5bb55647483cc5d69a2a 15-Apr-2010 Gabor Greif <ggreif@gmail.com> reapply r101364, which has been backed out in r101368
with a fix

rotate CallInst operands, i.e. move callee to the back
of the operand array

the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101397 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2ff961f66816daab8bbc58a19025161d969821c2 15-Apr-2010 Gabor Greif <ggreif@gmail.com> reapply r101364, which has been backed out in r101368
with a fix

rotate CallInst operands, i.e. move callee to the back
of the operand array

the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101397 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
52f155ee5d607b3773c2bc19fa688758f8887e35 15-Apr-2010 Gabor Greif <ggreif@gmail.com> back out r101364, as it trips the linux nightlybot on some clang C++ tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101368 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
9ee17208115482441953127615231c59a2f4d052 15-Apr-2010 Gabor Greif <ggreif@gmail.com> back out r101364, as it trips the linux nightlybot on some clang C++ tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101368 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
d46fdb45387f46beeadc04472b3a66ad1da3aca1 15-Apr-2010 Gabor Greif <ggreif@gmail.com> rotate CallInst operands, i.e. move callee to the back
of the operand array

the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101364 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
165dac08d1bb8428b32a5f39cdd3dbee2888987f 15-Apr-2010 Gabor Greif <ggreif@gmail.com> rotate CallInst operands, i.e. move callee to the back
of the operand array

the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101364 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
22e88bd351b4ccce47001476cb0d73716716685c 15-Apr-2010 Dan Gohman <gohman@apple.com> Fix TrackingVH to handle const Value subclasses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101300 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
070c07f2c881c9f005c411fb113011a2d5af4057 15-Apr-2010 Dan Gohman <gohman@apple.com> Fix TrackingVH to handle const Value subclasses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101300 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
9633bbb21f3e96a022cd79f538d4919dbabfcd70 14-Apr-2010 Dan Gohman <gohman@apple.com> Move a bunch of methods from CallSite to CallSiteBase, so that they can
be used in ImmutableCallSite too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101292 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7ad3b2a3f0188f5bceb4937e90085c52665672b4 14-Apr-2010 Dan Gohman <gohman@apple.com> Move a bunch of methods from CallSite to CallSiteBase, so that they can
be used in ImmutableCallSite too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101292 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3c7fb593f2a549aaf0951bc0cfc586108e9b4799 14-Apr-2010 Dan Gohman <gohman@apple.com> Use FunTy instead of hard-coding Function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101283 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7b975f411f03a00e352c6ef7d9745e76ad070fd2 14-Apr-2010 Dan Gohman <gohman@apple.com> Use FunTy instead of hard-coding Function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101283 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a90f43fba7114271cdc40c188facf1ab9bcf527c 14-Apr-2010 Dan Gohman <gohman@apple.com> Oops, make these public.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101280 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
ce931088f36b75dc5073013d2928aebd6397567a 14-Apr-2010 Dan Gohman <gohman@apple.com> Oops, make these public.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101280 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
5bd28fad5d55b177a54c9a4e898ae6b4192a96bc 14-Apr-2010 Dan Gohman <gohman@apple.com> Move getType() and getCaller() into CallSiteBase so that
ImmutableCallSite can use them too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101279 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
d9587fddd65c874ecc70771dc76119ceb4b1500c 14-Apr-2010 Dan Gohman <gohman@apple.com> Move getType() and getCaller() into CallSiteBase so that
ImmutableCallSite can use them too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101279 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
29b353bd7692f1eb5d5392542204a5a2350a7ed9 14-Apr-2010 Dan Gohman <gohman@apple.com> Fix whitespace, comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101247 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
5861142dad77d0a6dc048e817c4c6c79f2d9383b 14-Apr-2010 Dan Gohman <gohman@apple.com> Fix whitespace, comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101247 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
0df60670bd094745b9d9c1ad2153d7d4085f5819 14-Apr-2010 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101246 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
4788ec49a907a00803bee012acb6b12b019eb44a 14-Apr-2010 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101246 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
3d490297ab100b4753f1284462efe92eb24f901b 14-Apr-2010 Dan Gohman <gohman@apple.com> Use C++, not C++-standard-library-internals-ese.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101245 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
6193e5b128489c529176c038c76c11e549c4ee12 14-Apr-2010 Dan Gohman <gohman@apple.com> Use C++, not C++-standard-library-internals-ese.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101245 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
14438e43d7200622b7390541f8246b7c76838b3c 14-Apr-2010 Dan Gohman <gohman@apple.com> Make SuccIterator's private parts private too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101244 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
8bc489fd7fc767a1b6de561ad7ea91e96d5a2027 14-Apr-2010 Dan Gohman <gohman@apple.com> Make SuccIterator's private parts private too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101244 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
c693030dbcac07b1a380c14eb471baa08baf62e3 14-Apr-2010 Dan Gohman <gohman@apple.com> Make helper utility members private.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101243 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
0118b8d86d46322c500e795df301fe99cc8725df 14-Apr-2010 Dan Gohman <gohman@apple.com> Make helper utility members private.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101243 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
d6a056d46cc53f59dfbe67fdc1ab09447f1e6ea7 13-Apr-2010 Daniel Dunbar <daniel@zuster.org> IRBuilder: Add Create{Shl,LShr,And,Or,Xor} methods from uin64_t and APInt constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101110 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ee09d2781de2f5a47bbb991a5a525c67557ac5cd 13-Apr-2010 Daniel Dunbar <daniel@zuster.org> IRBuilder: Add Create{Shl,LShr,And,Or,Xor} methods from uin64_t and APInt constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101110 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3800631ec3fe58d49cf83a2c532022a47f986980 09-Apr-2010 Dan Gohman <gohman@apple.com> Don't use reserved identifiers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100838 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
094b1c851dbc189aee5db580338c4c2206133b88 09-Apr-2010 Dan Gohman <gohman@apple.com> Don't use reserved identifiers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100838 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
d36c6bfa5d6e118413489f8f10de955db1f07c33 08-Apr-2010 Benjamin Kramer <benny.kra@googlemail.com> Provide operator delete for BumpPtrAllocator and RecyclingAllocator. They will
never be called but msvc complains that they're missing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100766 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ecyclingAllocator.h
180c3d4edd1219832be8f2cf91f5f73f9757c36f 08-Apr-2010 Benjamin Kramer <benny.kra@googlemail.com> Provide operator delete for BumpPtrAllocator and RecyclingAllocator. They will
never be called but msvc complains that they're missing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100766 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ecyclingAllocator.h
be3b7577e33fc67fbac0bd5cdfc2a49de1e8573c 08-Apr-2010 Chris Lattner <sabre@nondot.org> rename llvm_install_error_handler -> install_fatal_error_handler
and friends.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100717 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
b0094c2404d0f826aa736bdb7d4d2fba65ad50b4 08-Apr-2010 Chris Lattner <sabre@nondot.org> rename llvm_install_error_handler -> install_fatal_error_handler
and friends.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100717 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
8316f2d3810dd37bae0f847bc3efd495432b5893 08-Apr-2010 Chris Lattner <sabre@nondot.org> rename llvm::llvm_report_error -> llvm::report_fatal_error



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100709 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
aw_ostream.h
75361b69f3f327842b9dad69fa7f28ae3b688412 08-Apr-2010 Chris Lattner <sabre@nondot.org> rename llvm::llvm_report_error -> llvm::report_fatal_error



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100709 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
aw_ostream.h
4dc6a794341a93e297d561d36e09e025fd3eb8ca 08-Apr-2010 Chris Lattner <sabre@nondot.org> minor tidying up


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100702 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
f88c856a471dd838607293f66b533374d7637fd1 08-Apr-2010 Chris Lattner <sabre@nondot.org> minor tidying up


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100702 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
e4454320b3cfffe926a487c33fbeb454366de2f8 07-Apr-2010 Shih-wei Liao <sliao@google.com> libbcc

Change-Id: Ieaa3ebd5a38f370752495549f8870b534eeedfc5
ommandLine.h
ompiler.h
warf.h
ormattedStream.h
RBuilder.h
egex.h
ourceMgr.h
argetFolder.h
2166105626749aaf3bd9ff6cf7a6436e749761f5 06-Apr-2010 Chris Lattner <sabre@nondot.org> this accessor doesn't need to copy the string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100542 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
779804353d40dff90fea50cda57e18f459b66f5f 06-Apr-2010 Chris Lattner <sabre@nondot.org> this accessor doesn't need to copy the string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100542 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
9e1ad75205e3759f1c0156d5dc13819f1b73378d 06-Apr-2010 Chris Lattner <sabre@nondot.org> enhance SMDiagnostic to also maintain a pointer to the SourceMgr.
Add a simplified constructor for clients that don't have locations
like "file not found" errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100538 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
ourceMgr.h
b019491b8d7b171cd0835ba34f3b28b24dfcc3e0 06-Apr-2010 Chris Lattner <sabre@nondot.org> enhance SMDiagnostic to also maintain a pointer to the SourceMgr.
Add a simplified constructor for clients that don't have locations
like "file not found" errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100538 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
ourceMgr.h
067cc28c13fcfb7a4745cdb4a56ba574255d07ee 06-Apr-2010 Jakob Stoklund Olesen <stoklund@2pi.dk> Avoid overflowing a signed integer which triggers undefined behaviour.
Overflowing an unsigned integer is fine and behaves as you would expect.
Also fix a pasto, allowing SignExtend64 to take a 64-bit argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100517 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
adc6e06ff0c5950abda86574c2da1fc6b863b75c 06-Apr-2010 Jakob Stoklund Olesen <stoklund@2pi.dk> Avoid overflowing a signed integer which triggers undefined behaviour.
Overflowing an unsigned integer is fine and behaves as you would expect.
Also fix a pasto, allowing SignExtend64 to take a 64-bit argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100517 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
383a382783f7f9f71a75db7ec67b3a9893df994d 06-Apr-2010 Chris Lattner <sabre@nondot.org> give the SourceMgr object a cookie.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100504 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
214aa8a2cf0c407e87d36a4ed2e36468d052669d 06-Apr-2010 Chris Lattner <sabre@nondot.org> give the SourceMgr object a cookie.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100504 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
4584b338c016e905379617795079c565f73a0cfb 06-Apr-2010 Chris Lattner <sabre@nondot.org> Give llvm::SourceMgr the ability to have a client-specified
diagnostic handler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100503 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
ourceMgr.h
8f0f480a10cd5b62914fd53611e696c5069fc62d 06-Apr-2010 Chris Lattner <sabre@nondot.org> Give llvm::SourceMgr the ability to have a client-specified
diagnostic handler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100503 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
ourceMgr.h
cd5cce889f97490b5d303f73d259ddcfe8779ed1 06-Apr-2010 Chris Lattner <sabre@nondot.org> add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100490 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
e072ab869159015743d280a5b0390b68430b1dc0 06-Apr-2010 Chris Lattner <sabre@nondot.org> add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100490 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
7fb59c6cad5a7e3ae621e0fedcbc67fea3ea13fe 06-Apr-2010 Chris Lattner <sabre@nondot.org> stringref-ize the MemoryBuffer::get apis. This requires
a co-committed clang patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100485 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
4c842dda3939c6b9f83ba7e8e19e43445cd9a832 06-Apr-2010 Chris Lattner <sabre@nondot.org> stringref-ize the MemoryBuffer::get apis. This requires
a co-committed clang patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100485 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
3d2e71faab289669724b9274fac0fce61841a3eb 04-Apr-2010 Jakob Stoklund Olesen <stoklund@2pi.dk> Switch SSEDomainFix to SpecificBumpPtrAllocator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100332 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
bbef815a3beeba3161cdad8e1cc108644bfc5ddc 04-Apr-2010 Jakob Stoklund Olesen <stoklund@2pi.dk> Switch SSEDomainFix to SpecificBumpPtrAllocator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100332 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
483af3c218eaedddcf8873e6af35eba739f593ab 04-Apr-2010 Mon P Wang <wangmp@apple.com> Reapply address space patch after fixing an issue in MemCopyOptimizer.
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100304 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
20adc9dc4650313f017b27d9818eb2176238113d 04-Apr-2010 Mon P Wang <wangmp@apple.com> Reapply address space patch after fixing an issue in MemCopyOptimizer.
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100304 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3ed7eaf80cf71dbd63fa9903a9412db9b2593252 03-Apr-2010 Johnny Chen <johnny.chen@apple.com> Second try of initial ARM/Thumb disassembler check-in. It consists of a tablgen
backend (ARMDecoderEmitter) which emits the decoder functions for ARM and Thumb,
and the disassembler core which invokes the decoder function and builds up the
MCInst based on the decoded Opcode.

Reviewed by Chris Latter and Bob Wilson.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100233 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
b68a3ee82a8a34f7bae1d68d76f574e76a5535ef 03-Apr-2010 Johnny Chen <johnny.chen@apple.com> Second try of initial ARM/Thumb disassembler check-in. It consists of a tablgen
backend (ARMDecoderEmitter) which emits the decoder functions for ARM and Thumb,
and the disassembler core which invokes the decoder function and builds up the
MCInst based on the decoded Opcode.

Reviewed by Chris Latter and Bob Wilson.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100233 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
f587338cf7f261057efeade8597d793f1500ef8a 02-Apr-2010 Chris Lattner <sabre@nondot.org> remove compatibility typedef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100221 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
f53fd37ff628ce9011a5360e83c70d7c3217fd29 02-Apr-2010 Chris Lattner <sabre@nondot.org> remove compatibility typedef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100221 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
b14ae790a7bbd726f300635928fea6560786b812 02-Apr-2010 Chris Lattner <sabre@nondot.org> rename NewDebugLoc -> DebugLoc, prune #includes in DebugLoc.h.

This keeps around temporary typedef for clang/llvm-gcc so the
build won't break when I commit this :)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100218 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
RBuilder.h
84e679beea11ac55ed7871eec4deaccdf393de3e 02-Apr-2010 Chris Lattner <sabre@nondot.org> rename NewDebugLoc -> DebugLoc, prune #includes in DebugLoc.h.

This keeps around temporary typedef for clang/llvm-gcc so the
build won't break when I commit this :)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100218 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
RBuilder.h
b9692a7da0e45bd941437ae1974ee6919aff5a34 02-Apr-2010 Chris Lattner <sabre@nondot.org> Switch the code generator (except the JIT) onto the new DebugLoc
representation. This eliminates the 'DILocation' MDNodes for
file/line/col tuples from -O0 -g codegen.

This remove the old DebugLoc class, making it a typedef for DebugLoc,
I'll rename NewDebugLoc next.

I didn't update the JIT to use the new apis, so it will continue to
work, but be as slow as before. Someone should eventually do this
or, better yet, rip out the JIT debug info stuff and build the JIT
on top of MC.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100209 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
de4845c163a5847c82d7ce10ed0c320098bce6e0 02-Apr-2010 Chris Lattner <sabre@nondot.org> Switch the code generator (except the JIT) onto the new DebugLoc
representation. This eliminates the 'DILocation' MDNodes for
file/line/col tuples from -O0 -g codegen.

This remove the old DebugLoc class, making it a typedef for DebugLoc,
I'll rename NewDebugLoc next.

I didn't update the JIT to use the new apis, so it will continue to
work, but be as slow as before. Someone should eventually do this
or, better yet, rip out the JIT debug info stuff and build the JIT
on top of MC.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100209 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
f9f760e09acb520d70f23cdbd6b2d288b9094a46 02-Apr-2010 Mon P Wang <wangmp@apple.com> Revert r100191 since it breaks objc in clang


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100199 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e754d3fb852abdeaf910c7331eed60f6303597c1 02-Apr-2010 Mon P Wang <wangmp@apple.com> Revert r100191 since it breaks objc in clang


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100199 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
703dd7c7eda9ffea68170bd9d8cdbc74322825dc 02-Apr-2010 Mon P Wang <wangmp@apple.com> Reapply address space patch after fixing an issue in MemCopyOptimizer.
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100191 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e33c848fa481b038d5ad0c7c898c33b2b27ec71e 02-Apr-2010 Mon P Wang <wangmp@apple.com> Reapply address space patch after fixing an issue in MemCopyOptimizer.
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100191 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9c0b8a8a72589ce295d0da96a0f0c8d0c917524f 02-Apr-2010 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100187 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
a6194b3a2a6a4a4e41cf5f2e6163960e21b733ee 02-Apr-2010 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100187 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
53108421c4660576a2cfc1cbd2ec3c026a582323 02-Apr-2010 Edwin Török <edwintorok@gmail.com> Fix SpecificBumpPtrAllocator iteration.

Need to start from (char*)(Slab+1), and not from (char*)Slab+1.
This fixes crashes in Win64 debug mode.
Thanks to Nicolas Capens!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100184 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
86bfd34ece523d863282ef2a2e4cf451c387c559 02-Apr-2010 Torok Edwin <edwintorok@gmail.com> Fix SpecificBumpPtrAllocator iteration.

Need to start from (char*)(Slab+1), and not from (char*)Slab+1.
This fixes crashes in Win64 debug mode.
Thanks to Nicolas Capens!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100184 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
0fbd0306b7f5e7d139def41ec3f1f9a8f6bc977a 01-Apr-2010 Gabor Greif <ggreif@gmail.com> Introduce ImmutableCallSite, useful for contexts where no mutation
is necessary. Inherits from new templated baseclass CallSiteBase<>
which is highly customizable. Base CallSite on it too, in a configuration
that allows full mutation.
Adapt some call sites in analyses to employ ImmutableCallSite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100100 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
c8b82ccbcf3b2e2384d2c0b5176e7b0b40b7f82f 01-Apr-2010 Gabor Greif <ggreif@gmail.com> Introduce ImmutableCallSite, useful for contexts where no mutation
is necessary. Inherits from new templated baseclass CallSiteBase<>
which is highly customizable. Base CallSite on it too, in a configuration
that allows full mutation.
Adapt some call sites in analyses to employ ImmutableCallSite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100100 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6a31a3f0e57afd64ef20f0e3550a67339816adf8 01-Apr-2010 Chris Lattner <sabre@nondot.org> switch IRBuilder to use NewDebugLoc for locations instead
of raw mdnodes. This allows frontends to specify debug
locations without ever creating an MDNode for the DILocation.

This requires a corresponding clang/llvm-gcc change which
I'll try to commit as simultaneously as possible.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100095 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a41b9153c3e568c874eb777d2b295659a9aca10a 01-Apr-2010 Chris Lattner <sabre@nondot.org> switch IRBuilder to use NewDebugLoc for locations instead
of raw mdnodes. This allows frontends to specify debug
locations without ever creating an MDNode for the DILocation.

This requires a corresponding clang/llvm-gcc change which
I'll try to commit as simultaneously as possible.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100095 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
699d3c6351b949506379ba296180e74e5a41f62e 01-Apr-2010 Chris Lattner <sabre@nondot.org> add comments, don't require inlined-at to be specified.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100092 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
f0100ff3f6adb41d257ab5bff5fef390a8f458e2 01-Apr-2010 Chris Lattner <sabre@nondot.org> add comments, don't require inlined-at to be specified.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100092 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
8e068543918ce088afefd56c43c9c2b0eeb5e55d 01-Apr-2010 Chris Lattner <sabre@nondot.org> add a method to decode a DILocation into a NewDebugLoc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100081 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
68c551349947e659a79eb0d4782d0487756020b5 01-Apr-2010 Chris Lattner <sabre@nondot.org> add a method to decode a DILocation into a NewDebugLoc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100081 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
9c4cb51d864b17c5010e13391ba505929d6da05d 01-Apr-2010 Chris Lattner <sabre@nondot.org> Add a new "NewDebugLoc" class which will eventually replace DebugLoc,
and will replace the 'DbgInfo' member in Instruction.

The benefit of NewDebugLoc is that it is compact (8 bytes vs 12/24
bytes for the DbgInfo member in Instruction on a 32/64 bit system),
it means that we will end up not having to allocate MDNodes to
represent the "DILocations" in common cases of -O0 -g, and it is
much more efficient to get things out of than the MDNode.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100072 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
b227925fa313428045f554187b0136d084d723f6 01-Apr-2010 Chris Lattner <sabre@nondot.org> Add a new "NewDebugLoc" class which will eventually replace DebugLoc,
and will replace the 'DbgInfo' member in Instruction.

The benefit of NewDebugLoc is that it is compact (8 bytes vs 12/24
bytes for the DbgInfo member in Instruction on a 32/64 bit system),
it means that we will end up not having to allocate MDNodes to
represent the "DILocations" in common cases of -O0 -g, and it is
much more efficient to get things out of than the MDNode.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100072 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
8737b5abd9a6741a92926f761618e4b7c492480c 31-Mar-2010 Duncan Sands <baldrick@free.fr> Correct comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99991 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
6417a6c99d91e63cd430f3eddcba8005e8c5de86 31-Mar-2010 Duncan Sands <baldrick@free.fr> Correct comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99991 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
d5f1d2eb2149d858314a35465eabac19cf2cb7a0 31-Mar-2010 Chris Lattner <sabre@nondot.org> fix file header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99987 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
b6c72b92c23065e219099140e16615ad2c06af30 31-Mar-2010 Chris Lattner <sabre@nondot.org> fix file header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99987 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
9b9c2b968e051723fa91bb55309152d9b2493b14 31-Mar-2010 Chris Lattner <sabre@nondot.org> make irbuilder use the new optimized debug info accessors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99984 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
5169c9e56771bb6a60d55de4786287eb6ec192ea 31-Mar-2010 Chris Lattner <sabre@nondot.org> make irbuilder use the new optimized debug info accessors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99984 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0b44e49f000a4da6b9948bdaa923b48911d2f47a 31-Mar-2010 Chris Lattner <sabre@nondot.org> add new apis for getting/setting !dbg metadata on
instructions. In addition to being a convenience,
they are faster than the old apis, particularly when
not going from an MDKindID like people should be
doing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99982 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
870cfcf9a6189b65a8ee805b93a2c737c0183e62 31-Mar-2010 Chris Lattner <sabre@nondot.org> add new apis for getting/setting !dbg metadata on
instructions. In addition to being a convenience,
they are faster than the old apis, particularly when
not going from an MDKindID like people should be
doing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99982 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
78126721b249513788b11ece5829fb1cb07c8ce5 31-Mar-2010 Chris Lattner <sabre@nondot.org> Fix a major source of compile-time slowness at -O0 -g by optimizing
the storage of !dbg metadata kinds in the instruction themselves.
The on-the-side hash table works great for metadata that not-all
instructions get, or for metadata that only exists when optimizing.
But when compile-time is everything, it isn't great.

I'm not super thrilled with the fact that this plops a TrackingVH in
Instruction, because it grows it by 3 words. I'm investigating
alternatives, but this should be a step in the right direction in any
case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99957 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
ec39f095f5abaf1ec90d7c6c46454032cda36e1c 31-Mar-2010 Chris Lattner <sabre@nondot.org> Fix a major source of compile-time slowness at -O0 -g by optimizing
the storage of !dbg metadata kinds in the instruction themselves.
The on-the-side hash table works great for metadata that not-all
instructions get, or for metadata that only exists when optimizing.
But when compile-time is everything, it isn't great.

I'm not super thrilled with the fact that this plops a TrackingVH in
Instruction, because it grows it by 3 words. I'm investigating
alternatives, but this should be a step in the right direction in any
case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99957 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
76821a73c39a21f7116ef99aa60940b07aedefac 31-Mar-2010 Bob Wilson <bob.wilson@apple.com> Revert Mon Ping's change 99928, since it broke all the llvm-gcc buildbots.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99948 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
100f090adde26005b9f1eca96871dff52825b27b 31-Mar-2010 Bob Wilson <bob.wilson@apple.com> Revert Mon Ping's change 99928, since it broke all the llvm-gcc buildbots.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99948 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f4862b06ca84fae2bb80e4936b3b2e598419c704 30-Mar-2010 Mon P Wang <wangmp@apple.com> Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
A update of langref will occur in a subsequent checkin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99928 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
808bab0169ab7d2e8dfdc72dd2c991cd8ff2396d 30-Mar-2010 Mon P Wang <wangmp@apple.com> Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
A update of langref will occur in a subsequent checkin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99928 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
128fdd98acae4b74400a03b6940e8209c05e7474 30-Mar-2010 Benjamin Kramer <benny.kra@googlemail.com> Introduce SpecificBumpPtrAllocator, a wrapper for BumpPtrAllocator which allows
only a single type of object to be allocated. Use it to make VNInfo destruction
typesafe.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99919 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
991de14dd62dcbab4b31357ae22dc5b053ba50a0 30-Mar-2010 Benjamin Kramer <benny.kra@googlemail.com> Introduce SpecificBumpPtrAllocator, a wrapper for BumpPtrAllocator which allows
only a single type of object to be allocated. Use it to make VNInfo destruction
typesafe.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99919 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
e24c8d2b28e3a297f00d21d840e794f98a778406 30-Mar-2010 Dan Gohman <gohman@apple.com> Fix llvm-ld to clean up its output files in case of an error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99915 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
132a9946bf494f046ca61b95cea02a53804845c4 30-Mar-2010 Dan Gohman <gohman@apple.com> Fix llvm-ld to clean up its output files in case of an error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99915 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
060af39e10c3b826838e8b18d5ad12f6451331a2 30-Mar-2010 Douglas Gregor <doug.gregor@gmail.com> Switch isa_impl from a function template to a class template with a
static inline member function doit(). This enables the use of partial
specialization to override the last stage of the "isa" check.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99898 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
0179e977234fef45b1877eb93a3c7565cdd1862d 30-Mar-2010 Douglas Gregor <dgregor@apple.com> Switch isa_impl from a function template to a class template with a
static inline member function doit(). This enables the use of partial
specialization to override the last stage of the "isa" check.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99898 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
75ae7ac964133d47df16b30d5dd23620e5f3f4a1 30-Mar-2010 Edwin Török <edwintorok@gmail.com> Reapply r99881 with some fixes: only call destructor in releaseMemory!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99883 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
01cb1b665da03e2b74c0724f71751e912ec8c2be 30-Mar-2010 Torok Edwin <edwintorok@gmail.com> Reapply r99881 with some fixes: only call destructor in releaseMemory!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99883 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
b433bf9e02a22cf11395ff6a40bd45056b4ec094 30-Mar-2010 Edwin Török <edwintorok@gmail.com> Revert 99881, it brooke smooshlab's llvm-gcc-i386-darwin9.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99882 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
226dd2ba992b1f00491c10c59ca1889825bf92b6 30-Mar-2010 Torok Edwin <edwintorok@gmail.com> Revert 99881, it brooke smooshlab's llvm-gcc-i386-darwin9.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99882 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
5697fa998e62ff77965b4a7878ec102ea1245da8 30-Mar-2010 Edwin Török <edwintorok@gmail.com> Introduce another Reset() method in BumpPtrAllocator that calls a destructor
on all objects it has allocated, if they are all of the same size and alignment.
Use this to destruct all VNInfos allocated in LiveIntervalAnalysis (PR6653).

valnos is not reliable for this purpose, as seen in r99400
(which still leaked, and sometimes caused double frees).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99881 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
2a22004f6857c57dc483ea6180f0e1f86854bd13 30-Mar-2010 Torok Edwin <edwintorok@gmail.com> Introduce another Reset() method in BumpPtrAllocator that calls a destructor
on all objects it has allocated, if they are all of the same size and alignment.
Use this to destruct all VNInfos allocated in LiveIntervalAnalysis (PR6653).

valnos is not reliable for this purpose, as seen in r99400
(which still leaked, and sometimes caused double frees).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99881 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
3a352e7394670da3ebb4cf95b30ee4837d42ae36 30-Mar-2010 Chris Lattner <sabre@nondot.org> stringref'ize Timer apis


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99877 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
cebf5bc2ee0c5fdfa2b604e002b60add3cc895f0 30-Mar-2010 Chris Lattner <sabre@nondot.org> stringref'ize Timer apis


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99877 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
224e85ea55c00a9738cd23c87778a20cc43cf681 30-Mar-2010 Chris Lattner <sabre@nondot.org> finally, maintain a global list of timer groups, allowing us to
implement TimerGroup::printAll, which prints and resets all active
timers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99876 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
83fa78efb19d288d172a5db87bafcb9a34a4f035 30-Mar-2010 Chris Lattner <sabre@nondot.org> finally, maintain a global list of timer groups, allowing us to
implement TimerGroup::printAll, which prints and resets all active
timers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99876 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
4485d68df73a3eba1b2ed9986866bce8c4e9eea4 30-Mar-2010 Chris Lattner <sabre@nondot.org> add a new TimerGroup::print method, and refactor away the bogus
TimerGroup copy ctor and assignment operator.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99875 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
ecdbff8c74e9c85af08fe9ec9cee4625d36c3c36 30-Mar-2010 Chris Lattner <sabre@nondot.org> add a new TimerGroup::print method, and refactor away the bogus
TimerGroup copy ctor and assignment operator.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99875 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
73fa93a00b0976ba4571fa8ad7b1683d4a9bc25e 30-Mar-2010 Chris Lattner <sabre@nondot.org> if a timergroup is destroyed before its timers, print times.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99873 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
9f9f6d19dd67926446fb89a7b2dc0bda6353645b 30-Mar-2010 Chris Lattner <sabre@nondot.org> if a timergroup is destroyed before its timers, print times.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99873 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
9d556113ff04455dabab8b1fd68b770433ff730c 30-Mar-2010 Chris Lattner <sabre@nondot.org> change TimerGroup to keep a linked list of active timers
instead of just a count of them, and refactor the guts of
report printing out of removeTimer into its own method.
Refactor addTimerToPrint away.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99872 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
b9312690a2a79de490ab9c439b9b5d7c9319bff8 30-Mar-2010 Chris Lattner <sabre@nondot.org> change TimerGroup to keep a linked list of active timers
instead of just a count of them, and refactor the guts of
report printing out of removeTimer into its own method.
Refactor addTimerToPrint away.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99872 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
0203994600df73ac6e9dd794eaaa150ded252834 30-Mar-2010 Chris Lattner <sabre@nondot.org> reapply my timer rewrite with a change for PassManager to store
timers by pointer instead of by-value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99871 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
a782e75d487006cafffdc256b3c623307fee4dcf 30-Mar-2010 Chris Lattner <sabre@nondot.org> reapply my timer rewrite with a change for PassManager to store
timers by pointer instead of by-value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99871 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
1b53d744eda128a47c8f19df696aff763369da11 30-Mar-2010 Chris Lattner <sabre@nondot.org> revert r99862 which is causing FNT failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99870 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
0d2725ad696afb60c86076469031783669809739 30-Mar-2010 Chris Lattner <sabre@nondot.org> revert r99862 which is causing FNT failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99870 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
c72581bacf3f9f8991cb2e4e93568506e0dbfe2d 30-Mar-2010 Chris Lattner <sabre@nondot.org> fairly major rewrite of various timing related stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99862 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
9fa0eff30a0d4fcbc84ac3ada4c47620b5449043 30-Mar-2010 Chris Lattner <sabre@nondot.org> fairly major rewrite of various timing related stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99862 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
7597f69483ab53717f047760c0cf75f793c888e4 29-Mar-2010 Chris Lattner <sabre@nondot.org> remove support for per-time peak memory tracking, this
isn't used by anyone and is better exposed as a non-per-timer
thing. Also, stop including System/Mutex.h in Timer.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99841 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
fc86c3cfd6e81113722f17bebc54bc0b63389b58 29-Mar-2010 Chris Lattner <sabre@nondot.org> remove support for per-time peak memory tracking, this
isn't used by anyone and is better exposed as a non-per-timer
thing. Also, stop including System/Mutex.h in Timer.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99841 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
5f52edcaa4052c234e9e981ca975614da06a18ee 29-Mar-2010 Chris Lattner <sabre@nondot.org> various timer fixes: move operator= out of line,
eliminate the per-timer lock (timers should be
externally locked if needed), the info-output-stream
can never be dbgs(), so drop the check. Make some
stuff private.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99839 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
0ea86bc411748f10b913f42ef3a71b46ace7ceb2 29-Mar-2010 Chris Lattner <sabre@nondot.org> various timer fixes: move operator= out of line,
eliminate the per-timer lock (timers should be
externally locked if needed), the info-output-stream
can never be dbgs(), so drop the check. Make some
stuff private.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99839 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
25c5cb6cf27630d67b543fef557d5c7e9ebb11dd 29-Mar-2010 Benjamin Kramer <benny.kra@googlemail.com> Make isInt?? and isUint?? template specializations of the generic versions. This
makes calls a little bit more consistent and allows easy removal of the
specializations in the future. Convert all callers to the templated functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99838 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
34247a0f356edf45ae3ad9ce04e1f90a77c6dba7 29-Mar-2010 Benjamin Kramer <benny.kra@googlemail.com> Make isInt?? and isUint?? template specializations of the generic versions. This
makes calls a little bit more consistent and allows easy removal of the
specializations in the future. Convert all callers to the templated functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99838 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
e9516b39b12f11bef626ff7ffcd4b0dd62fef45a 27-Mar-2010 Dan Gohman <gohman@apple.com> Give FileRemover a default constructor to allow FileRemovers to be created
and initialized separately.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99717 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
a5d0501b5935010c5db81e758baded607a861b30 27-Mar-2010 Dan Gohman <gohman@apple.com> Give FileRemover a default constructor to allow FileRemovers to be created
and initialized separately.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99717 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
e600d4e88df626ae16a96a82cd1916fa1bac1c03 27-Mar-2010 Dan Gohman <gohman@apple.com> Add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99715 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
60a6e1f461392a94366567468129d54b7378e93e 27-Mar-2010 Dan Gohman <gohman@apple.com> Add a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99715 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
225e92f34c3af8002a0208f9950d9e3049e67771 26-Mar-2010 Gabor Greif <ggreif@gmail.com> rename pred_const_iterator to const_pred_iterator for consistency's sake

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99567 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
44424646ac9db5c4d3919462bd0831ec22783085 26-Mar-2010 Gabor Greif <ggreif@gmail.com> rename pred_const_iterator to const_pred_iterator for consistency's sake

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99567 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
f23f025d5f76801e1d73fe6748775d1e3a50a4d0 26-Mar-2010 Gabor Greif <ggreif@gmail.com> rename use_const_iterator to const_use_iterator for consistency's sake

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99564 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
allSite.h
60ad781c61815ca5b8dc2a45a102e1c8af65992f 26-Mar-2010 Gabor Greif <ggreif@gmail.com> rename use_const_iterator to const_use_iterator for consistency's sake

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99564 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
allSite.h
dca2e6ef5878e31f91fe44cd3d30648490033cd9 25-Mar-2010 Eric Christopher <echristo@apple.com> Reapply r99451 with a fix to move the NoInline check to the cost functions
instead of InlineFunction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99483 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f27e6088a3af277d5aeed7b554192cc62b7b40fd 25-Mar-2010 Eric Christopher <echristo@apple.com> Reapply r99451 with a fix to move the NoInline check to the cost functions
instead of InlineFunction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99483 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
960817c26edd486769feba1256db5bbd25950aae 25-Mar-2010 Eric Christopher <echristo@apple.com> Temporarily revert this, it's causing an issue with an internal project.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99451 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
0623e90398153be61226ad19f1b40d3817874526 25-Mar-2010 Eric Christopher <echristo@apple.com> Temporarily revert this, it's causing an issue with an internal project.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99451 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
09452dca7da2e17525402bb7604bc5f4af3e321c 24-Mar-2010 Gabor Greif <ggreif@gmail.com> Finally land the InvokeInst operand reordering.
I have audited all getOperandNo calls now, fixing
hidden assumptions. CallSite related uglyness will
be eliminated successively.

Note this patch has a long and griveous history,
for all the back-and-forths have a look at
CallSite.h's log.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99399 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
c9f7500d1752feac7cece26d20007a99d21f677c 24-Mar-2010 Gabor Greif <ggreif@gmail.com> Finally land the InvokeInst operand reordering.
I have audited all getOperandNo calls now, fixing
hidden assumptions. CallSite related uglyness will
be eliminated successively.

Note this patch has a long and griveous history,
for all the back-and-forths have a look at
CallSite.h's log.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99399 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
978986c455c8c6b91328a5caa952b0806f212078 23-Mar-2010 Chris Lattner <sabre@nondot.org> add some accessors to callsite/callinst/invokeinst to check
for the noinline attribute, and make the inliner refuse to
inline a call site when the call site is marked noinline even
if the callee isn't. This fixes PR6682.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99341 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a54934ae9d278448fb557366eb4a79a8cb3fc606 23-Mar-2010 Chris Lattner <sabre@nondot.org> add some accessors to callsite/callinst/invokeinst to check
for the noinline attribute, and make the inliner refuse to
inline a call site when the call site is marked noinline even
if the callee isn't. This fixes PR6682.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99341 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
edd3c028c5f99b46ac784b7e28db76b4960bb998 22-Mar-2010 Gabor Greif <ggreif@gmail.com> backing out r99170 because it still fails on clang-x86_64-darwin10-fnt

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99171 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
1cde4af15712f6ccdb81ab540df800cda90d0d74 22-Mar-2010 Gabor Greif <ggreif@gmail.com> backing out r99170 because it still fails on clang-x86_64-darwin10-fnt

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99171 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2dcf8b2fcc2729b376e28db29bbe32712d8745e8 22-Mar-2010 Gabor Greif <ggreif@gmail.com> Now that hopefully all direct accesses to InvokeInst operands are fixed
we can reapply the InvokeInst operand reordering patch. (see r98957).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99170 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
9b1061e2e3c3a463aa251e2e6631d5e4313a7ac6 22-Mar-2010 Gabor Greif <ggreif@gmail.com> Now that hopefully all direct accesses to InvokeInst operands are fixed
we can reapply the InvokeInst operand reordering patch. (see r98957).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99170 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e02ef8a6fcc83c39068e2baf33c7f55e4a5c9c20 19-Mar-2010 Gabor Greif <ggreif@gmail.com> back out r98957, it broke http://smooshlab.apple.com:8010/builders/clang-x86_64-darwin10-fnt/builds/703 in the nightly test suite

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98958 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
cc52ed0c4feec63e7a127462b78fd4a6b217f469 19-Mar-2010 Gabor Greif <ggreif@gmail.com> back out r98957, it broke http://smooshlab.apple.com:8010/builders/clang-x86_64-darwin10-fnt/builds/703 in the nightly test suite

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98958 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
de6c04c8aba7acc53865d4e09a6fd9ed0bacd6c2 19-Mar-2010 Gabor Greif <ggreif@gmail.com> Recommit r80858 again (which has been backed out in r80871).

This time I did a self-hosted bootstrap on Linux x86-64,
with no problems. Let's see how darwin 64-bit self-hosting
goes. At the first sign of failure I'll back this out.

Maybe the valgrind bots give me a hint of what may be wrong
(it at all).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98957 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f4f10e37791cef519a057d10d12f688333f554a7 19-Mar-2010 Gabor Greif <ggreif@gmail.com> Recommit r80858 again (which has been backed out in r80871).

This time I did a self-hosted bootstrap on Linux x86-64,
with no problems. Let's see how darwin 64-bit self-hosting
goes. At the first sign of failure I'll back this out.

Maybe the valgrind bots give me a hint of what may be wrong
(it at all).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98957 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
54acb369227ca3a21e8806baf841daa33cd61b52 18-Mar-2010 Dan Gohman <gohman@apple.com> offsetof always has type size_t.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98854 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
debbef20ee27e7808a81f261fd9da6c87c6179f0 18-Mar-2010 Dan Gohman <gohman@apple.com> offsetof always has type size_t.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98854 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
dbd0d9e6da4629f1a4faea0454634b9b6406dc5a 18-Mar-2010 Dan Gohman <gohman@apple.com> Explicitly cast std::min's arguments to avoid type mismatches.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98851 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
aea1b501ceff5a10e9def91febcc80926196391d 18-Mar-2010 Dan Gohman <gohman@apple.com> Explicitly cast std::min's arguments to avoid type mismatches.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98851 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
7616a1ef5c411f4503cc99bf0a12a863551edf95 18-Mar-2010 Dan Gohman <gohman@apple.com> Define placement new wrappers for BumpPtrAllocator and
RecyclingAllocator to allow client code to be simpler, and
simplify several clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98847 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ecyclingAllocator.h
9553188fccbf0ae9c5b6bef26d0d2bd5feff8b59 18-Mar-2010 Dan Gohman <gohman@apple.com> Define placement new wrappers for BumpPtrAllocator and
RecyclingAllocator to allow client code to be simpler, and
simplify several clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98847 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ecyclingAllocator.h
91ccc5a3f1fec604efa04df3d26fedb3c03aa33d 15-Mar-2010 Douglas Gregor <doug.gregor@gmail.com> Extend MemoryBuffer::getFile() to take an optional "stat" structure
pointer. If given, the structure will be set with the stat information from
the file actually read.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98575 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
1bb30b6f750e2364a68af3b04c76ed26b4f508e8 15-Mar-2010 Douglas Gregor <dgregor@apple.com> Extend MemoryBuffer::getFile() to take an optional "stat" structure
pointer. If given, the structure will be set with the stat information from
the file actually read.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98575 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
1a9514633cfd38821728e28b4057a1e318077726 09-Mar-2010 Devang Patel <dpatel@apple.com> Start using DIFile. See updated SourceLevelDebugging.html for more information.

This patch updates LLVMDebugVersion to 8.
Debug info descriptors encoded using LLVMDebugVersion 7 is supported.

Corresponding llvmgcc and clang FE commits are required.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98020 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
4b945500a5eb1b32ee8004e40e386105ee5815eb 09-Mar-2010 Devang Patel <dpatel@apple.com> Start using DIFile. See updated SourceLevelDebugging.html for more information.

This patch updates LLVMDebugVersion to 8.
Debug info descriptors encoded using LLVMDebugVersion 7 is supported.

Corresponding llvmgcc and clang FE commits are required.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98020 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
fef082041f2fd200bf7f95bb742c76fc103162ff 05-Mar-2010 Eric Christopher <echristo@apple.com> Add support for an i8* type accessor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97841 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e2381787aa98b995daf56f1277b169aabba9cd46 05-Mar-2010 Eric Christopher <echristo@apple.com> Add support for an i8* type accessor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97841 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ee1e0619ac44b59e8694f0d506a58b7f76f2e635 03-Mar-2010 Chris Lattner <sabre@nondot.org> don't use always_inline with gcc 3.4, it has some unimplemented features
and is too old to really care about the performance of the generated
compiler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97662 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
14c85cbf541ec8940127474c20d8f1b5d5706bfe 03-Mar-2010 Chris Lattner <sabre@nondot.org> don't use always_inline with gcc 3.4, it has some unimplemented features
and is too old to really care about the performance of the generated
compiler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97662 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
82a7cfd8db8fe9610bcc5a2bd2127c269d568a7a 28-Feb-2010 Bob Wilson <bob.wilson@apple.com> Revert r97245 which seems to be causing performance problems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97366 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
b29d7d25423bc91a06a8a16aee3ff0ea96980706 28-Feb-2010 Bob Wilson <bob.wilson@apple.com> Revert r97245 which seems to be causing performance problems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97366 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
33aa7ee39baf4bcdfca3257760ee8329caa834b7 26-Feb-2010 Bob Wilson <bob.wilson@apple.com> Move the EnableFullLoadPRE flag from a separate command-line option to an
argument of createGVNPass and set it automatically for -O3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97245 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
8561dcd7306f4a4d45b1f2372e7cd40a753f2cc6 26-Feb-2010 Bob Wilson <bob.wilson@apple.com> Move the EnableFullLoadPRE flag from a separate command-line option to an
argument of createGVNPass and set it automatically for -O3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97245 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
c5c38f087ff0f376b7ea1ca547f2ba0b350c8677 18-Feb-2010 Duncan Sands <baldrick@free.fr> Refer to -help instead of --help since this is what tools themselves say.
Also, have tools output -help-hidden rather than refer to --help-hidden,
for consistency, and likewise adjust documentation. This doesn't change
every mention of --help, only those which seemed clearly safe.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96578 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7e7ae5ad692760aa8d97477f061a05b10948cf57 18-Feb-2010 Duncan Sands <baldrick@free.fr> Refer to -help instead of --help since this is what tools themselves say.
Also, have tools output -help-hidden rather than refer to --help-hidden,
for consistency, and likewise adjust documentation. This doesn't change
every mention of --help, only those which seemed clearly safe.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96578 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9315462bd81010f59f9f37b342b106486cb3e215 17-Feb-2010 Daniel Dunbar <daniel@zuster.org> Add Regex::sub, for doing regular expression substitution with backreferences.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96503 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
d2a5c0d8562407f9acab97451a785b513edd4c9b 17-Feb-2010 Daniel Dunbar <daniel@zuster.org> Add Regex::sub, for doing regular expression substitution with backreferences.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96503 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
614a454bb1a8bdb78e049c4a05a54ec02fc7c73b 17-Feb-2010 Chris Lattner <sabre@nondot.org> add missing method, PR6284


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96489 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
46d1ddd13c1529fd669c7c66fa8bea54f26188ba 17-Feb-2010 Chris Lattner <sabre@nondot.org> add missing method, PR6284


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96489 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
d779bcb96ab72939243f1fdd85a2daae863a82c4 15-Feb-2010 Anton Korobeynikov <asl@math.spbu.ru> Preliminary patch to improve dwarf EH generation - Hooks to return Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96285 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
9184b25fa543a900463215c11635c2c014ddb623 15-Feb-2010 Anton Korobeynikov <asl@math.spbu.ru> Preliminary patch to improve dwarf EH generation - Hooks to return Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96285 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
cd219f69047c4772b9db07259745a58d2c3ba53d 15-Feb-2010 Chris Lattner <sabre@nondot.org> comment fix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96248 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
a7445340daab3bfb15968a414090292d37cc954b 15-Feb-2010 Chris Lattner <sabre@nondot.org> comment fix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96248 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
a33f977b92495d842d6b58976067abdc425ea724 15-Feb-2010 Chris Lattner <sabre@nondot.org> make PadToColumn return the stream so you can use:
OS.PadToColumn(42) << "foo";



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96208 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
efbdaa6463c8febe9cbfdd6d39f3a9ba18773427 15-Feb-2010 Chris Lattner <sabre@nondot.org> make PadToColumn return the stream so you can use:
OS.PadToColumn(42) << "foo";



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96208 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
658381abc8b6a19c8d4cfa81907b2ca2bcf0596b 11-Feb-2010 Jeffrey Yasskin <jyasskin@google.com> Fix some of the memcheck errors found in the JIT unittests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95856 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
9233b15d01ca62445bfc638f782243988c672e01 11-Feb-2010 Jeffrey Yasskin <jyasskin@google.com> Fix some of the memcheck errors found in the JIT unittests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95856 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
dc9a0664253bca3cd3dbfaa16d4972a63a7d89eb 10-Feb-2010 Dan Gohman <gohman@apple.com> Fix several comments which had previously been "the the" where a
different word was intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95795 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f3b11aa6a72e0c31066a60c2e888e7a5eb5f2399 10-Feb-2010 Dan Gohman <gohman@apple.com> Fix several comments which had previously been "the the" where a
different word was intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95795 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e264f62ca09a8f65c87a46d562a4d0f9ec5d457e 10-Feb-2010 Shih-wei Liao <sliao@google.com> Check in LLVM r95781.
lignOf.h
llocator.h
FG.h
allSite.h
asting.h
ommandLine.h
ompiler.h
onstantFolder.h
onstantRange.h
OTGraphTraits.h
ataFlow.h
ebug.h
ebugLoc.h
warf.h
ynamicLinker.h
LF.h
rrorHandling.h
ileUtilities.h
ormat.h
ormattedStream.h
etElementPtrTypeIterator.h
raphWriter.h
RBuilder.h
RReader.h
nstIterator.h
nstVisitor.h
eakDetector.h
achO.h
anagedStatic.h
athExtras.h
emoryBuffer.h
emoryObject.h
utexGuard.h
oFolder.h
utputBuffer.h
assNameParser.h
atternMatch.h
luginLoader.h
ointerLikeTypeTraits.h
redIteratorCache.h
rettyStackTrace.h
ecycler.h
ecyclingAllocator.h
egex.h
egistry.h
egistryParser.h
MLoc.h
lowOperationInformer.h
ourceMgr.h
tableBasicBlockNumbering.h
tandardPasses.h
tringPool.h
ystemUtils.h
argetFolder.h
imer.h
ypeBuilder.h
alueHandle.h
ircular_raw_ostream.h
aw_os_ostream.h
aw_ostream.h
ype_traits.h
df1a7ffe7f19756ba874b3c07615d93ece611a1d 10-Feb-2010 Dan Gohman <gohman@apple.com> Fix "the the" and similar typos.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95781 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f451cb870efcf9e0302d25ed05f4cac6bb494e42 10-Feb-2010 Dan Gohman <gohman@apple.com> Fix "the the" and similar typos.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95781 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a7f368c57d03e2e7230d13551d6cbc9c7a3af0eb 09-Feb-2010 Jeffrey Yasskin <jyasskin@google.com> Add support for TypeBuilder<const/volatile void*, false>.
Thanks to Jochen Wilhelmy for the suggestion!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95677 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
5e24737d16e1c2aab65d24ff2a10ffc5255864f9 09-Feb-2010 Jeffrey Yasskin <jyasskin@google.com> Add support for TypeBuilder<const/volatile void*, false>.
Thanks to Jochen Wilhelmy for the suggestion!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95677 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
2cbd134d14770977c504ee3bc90742a59835ff61 09-Feb-2010 Eric Christopher <echristo@apple.com> Pull these back out, they're a little too aggressive and time
consuming for a simple optimization.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95671 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
d2592ff69ba86d8d5da5b598429f373cb2842699 09-Feb-2010 Eric Christopher <echristo@apple.com> Pull these back out, they're a little too aggressive and time
consuming for a simple optimization.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95671 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
9ddd7f5a8fc234e7bf072930fb16ad7e2a0bfdbd 09-Feb-2010 Eric Christopher <echristo@apple.com> Add a new pass to do llvm.objsize lowering using SCEV.
Initial skeleton and SCEVUnknown lowering implemented,
the rest should come relatively quickly. Move testcase
to new directory.

Move pass to right before SimplifyLibCalls - which is
moved down a bit so we can take advantage of a few opts.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95628 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
1926b648e132631282aa15d25e4f8278f87c24fb 09-Feb-2010 Eric Christopher <echristo@apple.com> Add a new pass to do llvm.objsize lowering using SCEV.
Initial skeleton and SCEVUnknown lowering implemented,
the rest should come relatively quickly. Move testcase
to new directory.

Move pass to right before SimplifyLibCalls - which is
moved down a bit so we can take advantage of a few opts.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95628 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
6e478fa5cdb3fc6cf1fe40825b1edb9ed69dbfca 09-Feb-2010 Chris Lattner <sabre@nondot.org> enhance bits_storage to work with enums by using a c-style
cast instead of reinterpret_cast, fixing PR6243. Apparently
reinterpret_cast and I aren't getting along today.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95622 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
47afe4e806eb16dd3d90670adf3ea5f9bca72132 09-Feb-2010 Chris Lattner <sabre@nondot.org> enhance bits_storage to work with enums by using a c-style
cast instead of reinterpret_cast, fixing PR6243. Apparently
reinterpret_cast and I aren't getting along today.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95622 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a4a317c452d93b85bdd5c6f884caf0a637d92668 08-Feb-2010 Chris Lattner <sabre@nondot.org> use a c-style cast instead of reinterpret-cast, as sometimes the
cast needs to adjust for a vtable pointer when going from base to
derived type (when the base doesn't have a vtable but the
derived type does).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95585 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
3a3134ab12f3aa65f9791f702a73f6d0b2af423f 08-Feb-2010 Chris Lattner <sabre@nondot.org> use a c-style cast instead of reinterpret-cast, as sometimes the
cast needs to adjust for a vtable pointer when going from base to
derived type (when the base doesn't have a vtable but the
derived type does).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95585 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
ba41e39b1fe34b82eda0a5dba4602c538bf62ec2 02-Feb-2010 Chris Lattner <sabre@nondot.org> Add a new top-level MachO.h file for manifest constants, fixing
a layering violation from MC -> Target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95113 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
45f8c095ad94888716ceff54daf2fdf2f2f668a4 02-Feb-2010 Chris Lattner <sabre@nondot.org> Add a new top-level MachO.h file for manifest constants, fixing
a layering violation from MC -> Target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95113 91177308-0d34-0410-b5e6-96231b3b80d8
achO.h
9d19a87d72aa080aea40927f60cdbe476da3c1af 02-Feb-2010 Duncan Sands <baldrick@free.fr> Adding missing methods for creating Add, Mul, Neg and Sub with NUW.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95086 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
8991d51ddcea31e198aff1fd01c05af2679ee8f8 02-Feb-2010 Duncan Sands <baldrick@free.fr> Adding missing methods for creating Add, Mul, Neg and Sub with NUW.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95086 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
d93f4b3aa89abb7aa0da61f35b01ac9bcef719a2 29-Jan-2010 Jeffrey Yasskin <jyasskin@google.com> Rename two IRReader.h functions to indicate that they return a Module
that loads its contents lazily from bitcode. I think these are the
only remaining mis-named functions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94840 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
e0638cb56c972f34931de2c69895bc0c54440447 29-Jan-2010 Jeffrey Yasskin <jyasskin@google.com> Rename two IRReader.h functions to indicate that they return a Module
that loads its contents lazily from bitcode. I think these are the
only remaining mis-named functions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94840 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
62de4e7b460f8ffbe0ee71a5a09503790102943f 27-Jan-2010 Jeffrey Yasskin <jyasskin@google.com> Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.

Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods. The bindings to
other languages still use the ModuleProvider concept. It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.

Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94686 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
f0356fe140af1a30587b9a86bcfb1b2c51b8ce20 27-Jan-2010 Jeffrey Yasskin <jyasskin@google.com> Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.

Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods. The bindings to
other languages still use the ModuleProvider concept. It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.

Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94686 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
ed6530b9a247b7cd42d91728c9afeb660cb52ac0 27-Jan-2010 Mikhail Glushenkov <foldr@codedgers.com> Make SMDiagnostic::Print a const method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94672 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
42210668da1b304488320ff01eea74733d9a1829 27-Jan-2010 Mikhail Glushenkov <foldr@codedgers.com> Make SMDiagnostic::Print a const method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94672 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
4c301d06dcd3b0a4b3cb849766b54e63e11b6cd7 27-Jan-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94671 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
e690ffbe6dbcd1b04ef864dd61d4182143dd0c4c 27-Jan-2010 Mikhail Glushenkov <foldr@codedgers.com> Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94671 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
85510caa91f032db14fab28e291a1140358a6e61 24-Jan-2010 Chris Lattner <sabre@nondot.org> change the canonical form of "cond ? -1 : 0" to be
"sext cond" instead of a select. This simplifies some instcombine
code, matches the policy for zext (cond ? 1 : 0 -> zext), and allows
us to generate better code for a testcase on ppc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94339 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
abb992d6a3d2dc05d3f3c62a367ea8977a7dd070 24-Jan-2010 Chris Lattner <sabre@nondot.org> change the canonical form of "cond ? -1 : 0" to be
"sext cond" instead of a select. This simplifies some instcombine
code, matches the policy for zext (cond ? 1 : 0 -> zext), and allows
us to generate better code for a testcase on ppc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94339 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
5c5842066bb2b2fb5cccd8cc21537f811256df3d 22-Jan-2010 Chris Lattner <sabre@nondot.org> Changes to fix buffering that I forgot to commit with previous patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94222 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
14ca177beba15e86ca410c9f6fc7f48ba245dba6 22-Jan-2010 Chris Lattner <sabre@nondot.org> Changes to fix buffering that I forgot to commit with previous patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94222 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
49d7439115aed95bf267717de28c675bd65b1c35 22-Jan-2010 Chris Lattner <sabre@nondot.org> add a new MCAsmStreamer::GetCommentOS method to simplify stuff
that doesn't want to use twines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94199 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
d79d9dce47d505369662ae5111dba24f9ccdef68 22-Jan-2010 Chris Lattner <sabre@nondot.org> add a new MCAsmStreamer::GetCommentOS method to simplify stuff
that doesn't want to use twines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94199 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
5f9a4f33e931303f39ffb532530e6d3bf4dfae03 22-Jan-2010 Chris Lattner <sabre@nondot.org> give PassNameParser a home.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94162 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
6eeb7345f215217aca4a60098eb1f968c76f700c 22-Jan-2010 Chris Lattner <sabre@nondot.org> give PassNameParser a home.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94162 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
51f87144de35eeaae362781e95d4f95cbc2da31a 18-Jan-2010 Sean Callanan <scallanan@apple.com> Added a newline at the end of SMLoc.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93784 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
2122f69c023f197435c289701ebe6cbec9ecb881 18-Jan-2010 Sean Callanan <scallanan@apple.com> Added a newline at the end of SMLoc.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93784 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
d4e811a804ccce20d56f3a9fe13179c04ed7b096 18-Jan-2010 Sean Callanan <scallanan@apple.com> Changed the comment in the file header for SMLoc
to something more accurate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93782 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
76d76d568942e08ee35762532a7090a596af906c 18-Jan-2010 Sean Callanan <scallanan@apple.com> Changed the comment in the file header for SMLoc
to something more accurate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93782 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
bfb0597c23de66a817256d112cac812cd86c3989 18-Jan-2010 Sean Callanan <scallanan@apple.com> Split SMLoc out in its own header so that it can
be used independently of SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93780 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
ourceMgr.h
1ae486a4a06a5132c094b9ce66836ff081fea3a6 18-Jan-2010 Sean Callanan <scallanan@apple.com> Split SMLoc out in its own header so that it can
be used independently of SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93780 91177308-0d34-0410-b5e6-96231b3b80d8
MLoc.h
ourceMgr.h
31a54741b82809a2c136239af45bea276d4b85df 16-Jan-2010 Chris Lattner <sabre@nondot.org> move the mangler into libtarget from vmcore.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93664 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
45111d160cf0910030eeb6a949c69273502e5ad5 16-Jan-2010 Chris Lattner <sabre@nondot.org> move the mangler into libtarget from vmcore.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93664 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
5214518439740b4feb63e0be500cbc4711becfa5 16-Jan-2010 Chris Lattner <sabre@nondot.org> reapply the mangler gutting patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93656 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
c94c825a4098f2a86589d31b318bbb8836a5df44 16-Jan-2010 Chris Lattner <sabre@nondot.org> reapply the mangler gutting patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93656 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
2823525038515be92811775241b2c99af9d258ed 16-Jan-2010 Rafael Espindola <rafael.espindola@gmail.com> Revert 93648.
Mangler::getMangledName is used from lto
Mangler::setUseQuotes is used in the AsmPrinter
Mangler::setSymbolsCanStartWithDigit is used in the AsmPrinter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93652 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
0f0c97810c0d35882fdd2160553b0be94332e3fa 16-Jan-2010 Rafael Espindola <rafael.espindola@gmail.com> Revert 93648.
Mangler::getMangledName is used from lto
Mangler::setUseQuotes is used in the AsmPrinter
Mangler::setSymbolsCanStartWithDigit is used in the AsmPrinter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93652 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
608b270506bcf9b1d24f839a9e39683b707bec13 16-Jan-2010 Chris Lattner <sabre@nondot.org> Mangler::getMangledName is now dead, remove it and all the other stuff in Mangler that is now transitively dead. woo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93648 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
848d0f37d2ef3c8418380d5f7f3dd083a132fe48 16-Jan-2010 Chris Lattner <sabre@nondot.org> Mangler::getMangledName is now dead, remove it and all the other stuff in Mangler that is now transitively dead. woo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93648 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
d023360cf80495b6188d18c602b2900b3a47f5e4 16-Jan-2010 Chris Lattner <sabre@nondot.org> switch liblto to use the new getNameWithPrefix() method instead of getMangledName.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93643 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
469340493c48eb22b630bbd311db867c9d7953d6 16-Jan-2010 Chris Lattner <sabre@nondot.org> switch liblto to use the new getNameWithPrefix() method instead of getMangledName.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93643 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
bfd9727ce632602453d86f0dd5c08251087f83bb 16-Jan-2010 Chris Lattner <sabre@nondot.org> add an inefficient version of getNameWithPrefix that returns an std::string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93641 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
61f160a84e068fde0c3b1f706d43381851dbe14e 16-Jan-2010 Chris Lattner <sabre@nondot.org> add an inefficient version of getNameWithPrefix that returns an std::string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93641 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
332571f7835ef493160a282e64306b3b005395ea 16-Jan-2010 Benjamin Kramer <benny.kra@googlemail.com> Revive dead assert.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93638 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
ea37eb55ee92cd632ec46abee32348ef39cd8a32 16-Jan-2010 Benjamin Kramer <benny.kra@googlemail.com> Revive dead assert.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93638 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
042945f696010411918fb35b82cf4016da80ae18 16-Jan-2010 Devang Patel <dpatel@apple.com> Replace DebugLocTuple with DILocation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93630 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
6b61f5816e22ac7f7e009aaf3e11ccce7cfeb085 16-Jan-2010 Devang Patel <dpatel@apple.com> Replace DebugLocTuple with DILocation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93630 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
e6c8b95889233e1cb757a192b9e3c8a4e972aec6 16-Jan-2010 Bill Wendling <isanbard@gmail.com> Temporarily revert r93581. It was causing failures in the ExecutionEngine tests
on the build bots.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93606 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
c5b7b196770f8c3c83e4ec06c0f2a1f53b623b6f 16-Jan-2010 Bill Wendling <isanbard@gmail.com> Temporarily revert r93581. It was causing failures in the ExecutionEngine tests
on the build bots.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93606 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
f988f191a3f56d8a24ba8ed97e7e8508d045fd9a 16-Jan-2010 Ted Kremenek <kremenek@apple.com> BumpPtrAllocator: Have the DefaultSlabAllocator created at runtime, not initialization time. This removes one of the 'init_constructors' reported in <rdar://problem/7545356>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93581 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
67c59826bf0c2e980130781d1ea0d6b062e4b659 16-Jan-2010 Ted Kremenek <kremenek@apple.com> BumpPtrAllocator: Have the DefaultSlabAllocator created at runtime, not initialization time. This removes one of the 'init_constructors' reported in <rdar://problem/7545356>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93581 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
c758c0c5cc4e72a7470b0327a6771542e47b9d4b 13-Jan-2010 Tobias Grosser <grosser@fim.uni-passau.de> Add getSource() to SuccIterator

Get the source BB of an iterator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93364 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
edd1cc78d2bc6e07679489278460bae2d56a501d 13-Jan-2010 Tobias Grosser <grosser@fim.uni-passau.de> Add getSource() to SuccIterator

Get the source BB of an iterator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93364 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
59cad44da6f18b26d495ea3d8008f29e4d1ad4ad 13-Jan-2010 Tobias Grosser <grosser@fim.uni-passau.de> Extend SuccIterator

Implement most of the missing methods to make SuccIterator random access.
operator[] is still missing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93363 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
5106140a50c28536dca1cbf02ade8de988cad537 13-Jan-2010 Tobias Grosser <grosser@fim.uni-passau.de> Extend SuccIterator

Implement most of the missing methods to make SuccIterator random access.
operator[] is still missing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93363 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
de1e0f08ae0e888bd4f012de470f832992c61ea3 13-Jan-2010 Chris Lattner <sabre@nondot.org> makeNameProper is now private!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93357 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
145438489fc2ecdc223e19b1356712a6de06de1d 13-Jan-2010 Chris Lattner <sabre@nondot.org> makeNameProper is now private!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93357 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
cc3404e1e4a2c7ec35ed0fb0576b78010be8fd9e 13-Jan-2010 Chris Lattner <sabre@nondot.org> ugh, my last patch just sped up a method and changed all the clients
that I want to completely eliminate. Add fixme's so I remember this
in the future, and add the missing helper that they should be upgraded
to use instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93300 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
0e7ab8cb07716305894fabcc512b8d5d0318bd4d 13-Jan-2010 Chris Lattner <sabre@nondot.org> ugh, my last patch just sped up a method and changed all the clients
that I want to completely eliminate. Add fixme's so I remember this
in the future, and add the missing helper that they should be upgraded
to use instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93300 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
a38b287aec4e06a2aded8bc7809f0f949955ade5 13-Jan-2010 Chris Lattner <sabre@nondot.org> change Mangler::makeNameProper to return its result in a SmallVector
instead of returning it in an std::string. Based on this change:

1. Change TargetLoweringObjectFileCOFF::getCOFFSection to take a StringRef
2. Change a bunch of targets to call makeNameProper with a smallstring,
making several of them *much* more efficient.
3. Rewrite Mangler::makeNameProper to not build names and then prepend
prefixes, not use temporary std::strings, and to avoid other crimes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93298 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
4813035b726e7f0a3fd17bec437185fc72a50988 13-Jan-2010 Chris Lattner <sabre@nondot.org> change Mangler::makeNameProper to return its result in a SmallVector
instead of returning it in an std::string. Based on this change:

1. Change TargetLoweringObjectFileCOFF::getCOFFSection to take a StringRef
2. Change a bunch of targets to call makeNameProper with a smallstring,
making several of them *much* more efficient.
3. Rewrite Mangler::makeNameProper to not build names and then prepend
prefixes, not use temporary std::strings, and to avoid other crimes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93298 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
83411feeb0104e766ba27d045f480381124db0e0 13-Jan-2010 Chris Lattner <sabre@nondot.org> my mistake, Mangler::makeNameProper wants to take a twine, not a stringref!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93296 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
36e69ae3c1ff56828ee51d7d9a106bafdca7e46d 13-Jan-2010 Chris Lattner <sabre@nondot.org> my mistake, Mangler::makeNameProper wants to take a twine, not a stringref!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93296 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
9c4ddecffb47eb72fc07a4ae29201688ea05041b 13-Jan-2010 Chris Lattner <sabre@nondot.org> change makeNameProper to take a stringref instead of std::string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93295 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
1cb75460b6e430df6aef9530489d3b4a1e41d139 13-Jan-2010 Chris Lattner <sabre@nondot.org> change makeNameProper to take a stringref instead of std::string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93295 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
6d577f737b3f5391366476d17710cd80ffb17eb6 07-Jan-2010 Duncan Sands <baldrick@free.fr> Correct spelling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92910 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
452394d812816b05f626d414ce6dbd3b87d45a73 07-Jan-2010 Duncan Sands <baldrick@free.fr> Correct spelling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92910 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
443c4ac948100b268d46b30425ccbc91354ee4f8 05-Jan-2010 David Greene <greened@obbligato.org> Fix a build error by adding a missing commit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92670 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
acc935986d18b07de1472278edd7c7453e1ab439 05-Jan-2010 David Greene <greened@obbligato.org> Fix a build error by adding a missing commit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92670 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
c93843f1e4727f6ce132db98e2b9326e053580b1 01-Jan-2010 Chris Lattner <sabre@nondot.org> teach instcombine to optimize pointer difference idioms involving constant
expressions. This is a step towards comment #4 in PR3351.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92401 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f2ebc682d1ee008782d44261f28e92bf982790c2 01-Jan-2010 Chris Lattner <sabre@nondot.org> teach instcombine to optimize pointer difference idioms involving constant
expressions. This is a step towards comment #4 in PR3351.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92401 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
197403fe9633e79f3fc7e2374e0619b3ca91666b 28-Dec-2009 Chris Lattner <sabre@nondot.org> remove #include that comes in from ConstantFolder.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92232 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
66e89df1883bd666c80303dd39552c35f534b1ba 28-Dec-2009 Chris Lattner <sabre@nondot.org> remove #include that comes in from ConstantFolder.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92232 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
48a68ab63227f8e4d1550fe96012a18857fdebae 28-Dec-2009 Chris Lattner <sabre@nondot.org> remove #include of Function.h from IRBuilder


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92231 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
2ad32752b9a880902550c7c47f1b9ca175ee851c 28-Dec-2009 Chris Lattner <sabre@nondot.org> remove #include of Function.h from IRBuilder


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92231 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f6522a62a8299646fe5671dc4da9d1ff3fba94b8 28-Dec-2009 Chris Lattner <sabre@nondot.org> move debug info stuff out of line, allowing two #includes
to go away from IRBuilder.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92230 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
43469b6957140898709382082ef95dd4b77ac20a 28-Dec-2009 Chris Lattner <sabre@nondot.org> move debug info stuff out of line, allowing two #includes
to go away from IRBuilder.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92230 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b7f77c7a587d0ffcfcbcc6c1dd5c501e7fc69fbf 28-Dec-2009 Chris Lattner <sabre@nondot.org> split code that doesn't need to be templated out of IRBuilder into a new
non-templated IRBuilderBase class. Move that large CreateGlobalString
out of line, eliminating the need to #include GlobalVariable.h in IRBuilder.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92227 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a53cfd16f075f22655a8c965b122aea38e635aa3 28-Dec-2009 Chris Lattner <sabre@nondot.org> split code that doesn't need to be templated out of IRBuilder into a new
non-templated IRBuilderBase class. Move that large CreateGlobalString
out of line, eliminating the need to #include GlobalVariable.h in IRBuilder.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92227 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9a8c601d3e1def8a3a50707ccfcca6eef4102019 28-Dec-2009 Chris Lattner <sabre@nondot.org> rename ivar to be more descriptive.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92226 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
aca8d54c4f9a81e46fc94425392203d414b83376 28-Dec-2009 Chris Lattner <sabre@nondot.org> rename ivar to be more descriptive.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92226 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9741b1d2ca9e6fca4cb6ffa33022eb35c446cd8e 28-Dec-2009 Chris Lattner <sabre@nondot.org> rename getMDKind -> getMDKindID, make it autoinsert if an MD Kind
doesn't exist already, eliminate registerMDKind. Tidy up a bunch
of random stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92225 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0eb419800ae51d6e0e00a656ede0627483755361 28-Dec-2009 Chris Lattner <sabre@nondot.org> rename getMDKind -> getMDKindID, make it autoinsert if an MD Kind
doesn't exist already, eliminate registerMDKind. Tidy up a bunch
of random stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92225 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
2a377215b3f9fda270997eb1643d5c8c2e0ed45b 28-Dec-2009 Bill Wendling <isanbard@gmail.com> Add an "ATTRIBUTE_UNUSED" macro (and use it). It's for variables which are
mainly used in debugging and/or assert situations. It should make the compiler
and the static analyzer stop nagging us about them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92181 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
079b6f5ee5c3516b773a3ad71874c14e8ea7479c 28-Dec-2009 Bill Wendling <isanbard@gmail.com> Add an "ATTRIBUTE_UNUSED" macro (and use it). It's for variables which are
mainly used in debugging and/or assert situations. It should make the compiler
and the static analyzer stop nagging us about them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92181 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
83260774e0c41ed5d8e02fcb31b41400a7c080de 24-Dec-2009 David Greene <greened@obbligato.org> Fix a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92082 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
001762bb250b6b9afe22055a2665a03113969695 24-Dec-2009 David Greene <greened@obbligato.org> Fix a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92082 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
dd5f53564451820aaf891c570250f1dd6c1db91d 23-Dec-2009 David Greene <greened@obbligato.org> Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92016 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
0ff129f061233b724abe22fe048f06bcb06cd308 23-Dec-2009 David Greene <greened@obbligato.org> Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92016 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
e57aafd496d172e295db4c590ef5a824362bae80 23-Dec-2009 David Greene <greened@obbligato.org> Provide dbgs(), a circular-buffering debug output stream. By default it
simply passes output to errs(). If -debug-buffer-size=N is set N > 0,
dbgs() buffers its output until program termination and dumps the last N
characters sent to it. This is handy when debugging very large inputs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92002 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
b5d568cc70506c4cb3aa7abc3370d3ac9411b4a0 23-Dec-2009 David Greene <greened@obbligato.org> Provide dbgs(), a circular-buffering debug output stream. By default it
simply passes output to errs(). If -debug-buffer-size=N is set N > 0,
dbgs() buffers its output until program termination and dumps the last N
characters sent to it. This is handy when debugging very large inputs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92002 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
7a456e710b15b596df9e1f2ef3b43a971b7bb72c 23-Dec-2009 David Greene <greened@obbligato.org> Add circular_raw_ostream, which buffers its output in a circular queue
and outputs it when explicitly flushed. The intent is to use it in
situations such as debug output logging where a signal handler can take
care of flushing the buffer at program termination.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92001 91177308-0d34-0410-b5e6-96231b3b80d8
ircular_raw_ostream.h
e59011e7d913b59dd244b0295a984dcfe7976e72 23-Dec-2009 David Greene <greened@obbligato.org> Add circular_raw_ostream, which buffers its output in a circular queue
and outputs it when explicitly flushed. The intent is to use it in
situations such as debug output logging where a signal handler can take
care of flushing the buffer at program termination.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92001 91177308-0d34-0410-b5e6-96231b3b80d8
ircular_raw_ostream.h
580cbae09ddd2b501bfadb957a93abef669b4ed5 22-Dec-2009 Anton Korobeynikov <asl@math.spbu.ru> Restore snprintf weirdness for VCPP only

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91918 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
4935a02101353bb317dd178230e9e76fc0f975ef 22-Dec-2009 Anton Korobeynikov <asl@math.spbu.ru> Restore snprintf weirdness for VCPP only

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91918 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
bb791f2d77d7a15d31b26505d025771bc84e3a81 22-Dec-2009 Chris Lattner <sabre@nondot.org> don't run GVN at -O1, GCC doesn't do it's equivalent at that optimization level.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91886 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
508355c9829bd60bf2afba7068f8d74607152f87 22-Dec-2009 Chris Lattner <sabre@nondot.org> don't run GVN at -O1, GCC doesn't do it's equivalent at that optimization level.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91886 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
93d61f758389d41dd5cc9af9a4e0d43d2ec5739b 21-Dec-2009 Anton Korobeynikov <asl@math.spbu.ru> Remove uber-gross hack. The define _snprintf to snprintf is invalid due to two reasons: 1. Accroding to C++ standard snprintf should be available in std namespace (and __gnu_cxx in case of GCC to). Such ifdef will change all snprintf's to _snprintf's, but won't bring snprintf to all necessary namespaces. Thus e.g. any locale-using code on mingw will yield an error (include this file + string to see the result) 2. MSVCRT's _snprintf does not comply with C99 standard. Standard one is snprintf.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91842 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
7b1eb8a4091ff4e76323ce2d4a42d5d14b5e3f50 21-Dec-2009 Anton Korobeynikov <asl@math.spbu.ru> Remove uber-gross hack. The define _snprintf to snprintf is invalid due to two reasons: 1. Accroding to C++ standard snprintf should be available in std namespace (and __gnu_cxx in case of GCC to). Such ifdef will change all snprintf's to _snprintf's, but won't bring snprintf to all necessary namespaces. Thus e.g. any locale-using code on mingw will yield an error (include this file + string to see the result) 2. MSVCRT's _snprintf does not comply with C99 standard. Standard one is snprintf.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91842 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
7a5c91a071de190ee50e1a61b2166e9a7eaaac48 19-Dec-2009 Chris Lattner <sabre@nondot.org> Make some methods const. The only interesting change here is that
it changes raw_fd_ostream::preferred_buffer_size to return zero on
a scary stat failure instead of setting the stream to an error state.
This method really should not mutate the stream.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91740 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_os_ostream.h
aw_ostream.h
cd0129f5a6f0485ecac525c17a3c5dff0a19ca5f 19-Dec-2009 Chris Lattner <sabre@nondot.org> Make some methods const. The only interesting change here is that
it changes raw_fd_ostream::preferred_buffer_size to return zero on
a scary stat failure instead of setting the stream to an error state.
This method really should not mutate the stream.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91740 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_os_ostream.h
aw_ostream.h
f9e2b351f1a03ba4e429db02181a8b912a9e0180 18-Dec-2009 Dan Gohman <gohman@apple.com> Add utility routines for NSW multiply.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91664 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
411984810e4a66591123e1b16873e5f19ae18817 18-Dec-2009 Dan Gohman <gohman@apple.com> Add utility routines for NSW multiply.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91664 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
b71a331641379b8527d7bca14ab4ddf264c3b197 18-Dec-2009 Dan Gohman <gohman@apple.com> Add utility routines for creating integer negation operators with NSW set.
Integer negation only overflows with INT_MIN, but that's an important case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91662 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
bdc46c6af5ffcf3596a72df75880fe8703436060 18-Dec-2009 Dan Gohman <gohman@apple.com> Add utility routines for creating integer negation operators with NSW set.
Integer negation only overflows with INT_MIN, but that's an important case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91662 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
142f4f4c9d8ab4a1d1eb5c2fde61a6383fed25c4 15-Dec-2009 Chris Lattner <sabre@nondot.org> improve isPodLike to know that all non-class types are pod.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91425 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
dc2e570411bb1b1345a6b9840050aca823835a81 15-Dec-2009 Chris Lattner <sabre@nondot.org> improve isPodLike to know that all non-class types are pod.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91425 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
169f3a233e90dcdd01e42829b396c823d016fe30 15-Dec-2009 Chris Lattner <sabre@nondot.org> Remove isPod() from DenseMapInfo, splitting it out to its own
isPodLike type trait. This is a generally useful type trait for
more than just DenseMap, and we really care about whether something
acts like a pod, not whether it really is a pod.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91421 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
alueHandle.h
ype_traits.h
4bbf4ee1491637c247e195e19e3e4a8ee5ad72fa 15-Dec-2009 Chris Lattner <sabre@nondot.org> Remove isPod() from DenseMapInfo, splitting it out to its own
isPodLike type trait. This is a generally useful type trait for
more than just DenseMap, and we really care about whether something
acts like a pod, not whether it really is a pod.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91421 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
alueHandle.h
ype_traits.h
54fec492a4c81ee84265ad953f4212eda9aff5c1 15-Dec-2009 Chris Lattner <sabre@nondot.org> add an ALWAYS_INLINE macro, which does the obvious thing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91416 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
96c7ae5e978750380360fcb3f6e47876be337c31 15-Dec-2009 Chris Lattner <sabre@nondot.org> add an ALWAYS_INLINE macro, which does the obvious thing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91416 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
5dbe26aa8326068823cb9481972426dca151c3cc 14-Dec-2009 Dan Gohman <gohman@apple.com> Micro-optimize these functions in the case where they are not inlined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91316 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
a4f8ecd85de38c14b11bbd0fc8cb9a427e9f3d75 14-Dec-2009 Dan Gohman <gohman@apple.com> Micro-optimize these functions in the case where they are not inlined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91316 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
37fa76624c9c11ec6745b5b609a8b537f0cd8425 12-Dec-2009 Jeffrey Yasskin <jyasskin@google.com> Make it easier to use the llvm_unreachable and DEBUG macros without "using
namespace llvm" by qualifying their implementations with ::llvm::.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91206 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
rrorHandling.h
66b856683fb67796aa77e52d676c4739e8e47d6d 12-Dec-2009 Jeffrey Yasskin <jyasskin@google.com> Make it easier to use the llvm_unreachable and DEBUG macros without "using
namespace llvm" by qualifying their implementations with ::llvm::.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91206 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
rrorHandling.h
307e718947561a527c51e03e38cd77ca1efc6998 11-Dec-2009 Anders Carlsson <andersca@mac.com> Add qualifiers for calls to member functions in dependent bases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91087 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
da920fa4f985ce5d7b56652587d3451ca483e3d6 11-Dec-2009 Anders Carlsson <andersca@mac.com> Add qualifiers for calls to member functions in dependent bases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91087 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
8e77e9b0238cff581abc86626cd153f726478804 06-Dec-2009 Chris Lattner <sabre@nondot.org> Add helper methods for forming shift operations with a constant
shift amount.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90694 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
90ec9680a9b0c76bbc739d7309e4611b478ebe91 06-Dec-2009 Chris Lattner <sabre@nondot.org> Add helper methods for forming shift operations with a constant
shift amount.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90694 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0ef2d0921f1b88f1be8eb8c3380b4e17aee82bae 04-Dec-2009 Bob Wilson <bob.wilson@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90613 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
ea7bfc5aa04cd57daae85eab34a782108136829f 04-Dec-2009 Bob Wilson <bob.wilson@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90613 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
1358217bcbc89fe174040d453fbb63f4a2ca79d5 04-Dec-2009 Mike Stump <mrs@apple.com> Create yet another helper for Invoke.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90514 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9b195eaefd1fbffe2df5cd7378182eb836505240 04-Dec-2009 Mike Stump <mrs@apple.com> Create yet another helper for Invoke.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90514 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
cdbf27b90f3018b6bb3b66b3f58db960d445ef59 04-Dec-2009 Mike Stump <mrs@apple.com> Add some helpers for Invoke to mirror CreateCall helpers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90508 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b39a40757680a4d2e713614abe7b0ac723206178 04-Dec-2009 Mike Stump <mrs@apple.com> Add some helpers for Invoke to mirror CreateCall helpers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90508 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
49462255e92b03de36a013dd23845d9c8e35821c 30-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Fix odd declaration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90138 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
795eb2ae8eacba3d9d9e55353475b94de5d5d94c 30-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Fix odd declaration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90138 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
810b18c4cc8b022f79f0dd886cc9092a3e4f6d2c 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Remove ShortNames from getNodeLabel in DOTGraphTraits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90134 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
56f4ef3232850e29c4635d0923910acce8887bd0 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Remove ShortNames from getNodeLabel in DOTGraphTraits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90134 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
e2c3aec2cf16ee6ea233d3ec13a83e71e21523b9 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Instantiate DefaultDOTGraphTraits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90133 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
a10d598602308549d87d2c5d9848f5a72fda2b43 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Instantiate DefaultDOTGraphTraits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90133 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
fd748c9df057cd33fe255b9ff81e720518f82cb3 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Do not point edge heads to source labels

If no destination label is available, just point to the node itself
instead of pointing to some source label. Source and destination labels are
not related in any way.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90132 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
ce4edd647bddec0be61df39962f1a697068891f2 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Do not point edge heads to source labels

If no destination label is available, just point to the node itself
instead of pointing to some source label. Source and destination labels are
not related in any way.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90132 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
989dd8528652afdfcf5125f7d206bc0f075861e7 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Only print edgeSourceLabels if they are not empty

Graphviz can layout the graphs better if a node does not contain source
ports. Therefore only print the ports if the source ports are useful,
that means are not labeled with the empty string "".
This patch also simplifies graphs without any edgeSourceLabels e.g. the
dominance trees.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90131 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
c500566d9fb70472a17f62b4cf1689062c52e095 30-Nov-2009 Tobias Grosser <grosser@fim.uni-passau.de> Only print edgeSourceLabels if they are not empty

Graphviz can layout the graphs better if a node does not contain source
ports. Therefore only print the ports if the source ports are useful,
that means are not labeled with the empty string "".
This patch also simplifies graphs without any edgeSourceLabels e.g. the
dominance trees.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90131 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
dd5bbc12814ad7b8c6273e2f0f321e160ee98894 22-Nov-2009 Daniel Dunbar <daniel@zuster.org> SourceMgr: Add ShowLine argument to PrintMessage, to allow suppressing the source line output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89627 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
4153982375811da8ffe8d8cc45e09d44c6f40642 22-Nov-2009 Daniel Dunbar <daniel@zuster.org> SourceMgr: Add ShowLine argument to PrintMessage, to allow suppressing the source line output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89627 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
1790623d43a92b20bff15ed6d9a4edd44c44ff32 22-Nov-2009 Daniel Dunbar <daniel@zuster.org> Use ExtractElementInst::Create instead of new; patch by Artur Pietrek!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89606 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
5a325e3663c0af8b0c7d644dfb56a5bed1f11bbc 22-Nov-2009 Daniel Dunbar <daniel@zuster.org> Use ExtractElementInst::Create instead of new; patch by Artur Pietrek!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89606 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
0359a09551cd3dee071945a565def98fa61b48e3 18-Nov-2009 Jeffrey Yasskin <jyasskin@google.com> Remove spurious @verbatim. Patch by Timo Juhani Lindfors!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89252 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
f605773869d1489dcfb10c47f99ada9fe4908b45 18-Nov-2009 Jeffrey Yasskin <jyasskin@google.com> Remove spurious @verbatim. Patch by Timo Juhani Lindfors!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89252 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
26459c2bf024b2a7dc92ab376679ebc4abf47e61 17-Nov-2009 Duncan Sands <baldrick@free.fr> Following a suggestion of Daniel Dunbar, stop people passing the name
as the isSigned bool to CreateIntCast by having this resolve to a call
to a private method, rather than by using a gcc attribute.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89067 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
RBuilder.h
8dc071a6e522ea5e3eb265e28b410be8f57cffb2 17-Nov-2009 Duncan Sands <baldrick@free.fr> Following a suggestion of Daniel Dunbar, stop people passing the name
as the isSigned bool to CreateIntCast by having this resolve to a call
to a private method, rather than by using a gcc attribute.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89067 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
RBuilder.h
d826aa969474c97c8522d440d82cfc0710f9ae2c 16-Nov-2009 Douglas Gregor <doug.gregor@gmail.com> Make ERROR_IF_USED macro work with GCC <= 4.2, Apple GCCs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88916 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
1546b11140e0b439856f363c37285e0608394f18 16-Nov-2009 Douglas Gregor <dgregor@apple.com> Make ERROR_IF_USED macro work with GCC <= 4.2, Apple GCCs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88916 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
a07e9ea3a1a0136632007d2cf93b70e3ebb4dc97 16-Nov-2009 Duncan Sands <baldrick@free.fr> Make sure that if anyone passes a name by accident for the isSigned
parameter of CreateIntCast then they get an error from the compiler
(or from the linker with a non-gcc compiler). Another possibility
is to flip the order of the DestTy and isSigned parameters, since you
should then get a compiler warning if you try to use a char* for a
Type*.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88913 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
RBuilder.h
4007324b58db24b0d358445a0a866a9047dac75e 16-Nov-2009 Duncan Sands <baldrick@free.fr> Make sure that if anyone passes a name by accident for the isSigned
parameter of CreateIntCast then they get an error from the compiler
(or from the linker with a non-gcc compiler). Another possibility
is to flip the order of the DestTy and isSigned parameters, since you
should then get a compiler warning if you try to use a char* for a
Type*.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88913 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
RBuilder.h
a50e9237b7d8cdeace748653d7f96b9899fe22b7 15-Nov-2009 Chris Lattner <sabre@nondot.org> add attributes for readnone/readonly functions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88862 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
6f0c67d4ffbc9c47153cab94985a22699b699729 15-Nov-2009 Chris Lattner <sabre@nondot.org> add attributes for readnone/readonly functions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88862 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
0f5690b2a5307bf3ca135f41ca2a42123026d12e 14-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Implement DISABLE_INLINE for MSVC. This required changing the position in all
forward declaration and patching tblgen to emit it right. Patch by Amine Khaldi!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88798 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f2a39bd24fe72481fa8fa612f3494efd41a8e001 14-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Implement DISABLE_INLINE for MSVC. This required changing the position in all
forward declaration and patching tblgen to emit it right. Patch by Amine Khaldi!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88798 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
f0bb845e635bd183b9526dff7a60f5c8edfd3392 14-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Make NORETURN working with MSVC. MSVC only accepts NORETURN in front of the
decl so move it there. GCC accepts it both in front and after decls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88791 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
7b068610eb68ae02c1c92a98d4a3749c7cb6456c 14-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Make NORETURN working with MSVC. MSVC only accepts NORETURN in front of the
decl so move it there. GCC accepts it both in front and after decls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88791 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
1e03e8568fcb49eadc7d0baf9640d28fb2e0444f 12-Nov-2009 Nuno Lopes <nunoplopes@sapo.pt> implement shl, ashr, and lshr methods. shl is not fully implemented as it is quite tricky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86986 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
34e992da381bf8b1a9cbcc1bde0b117207809649 12-Nov-2009 Nuno Lopes <nunoplopes@sapo.pt> implement shl, ashr, and lshr methods. shl is not fully implemented as it is quite tricky.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86986 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
e1ce565254502ef7472b125abc6918bd67fedcc4 11-Nov-2009 Devang Patel <dpatel@apple.com> Add SetDebugLocation() variant to
add debug info location to an instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86859 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
4a8efb0c397efc7a60c532d7534b155c53cb1ef7 11-Nov-2009 Devang Patel <dpatel@apple.com> Add SetDebugLocation() variant to
add debug info location to an instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86859 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
de578195f23510abf1bb3d29994f4835798ee5d2 11-Nov-2009 Chris Lattner <sabre@nondot.org> jump threading does everything that condprop does any more. This passes
bootstrap on darwin i386.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86758 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
6eb8dd2276b1122e74ab20f8432bf280bd3cc9a2 11-Nov-2009 Chris Lattner <sabre@nondot.org> jump threading does everything that condprop does any more. This passes
bootstrap on darwin i386.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86758 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
8154d2e023fe3137363f8bbc9dae2dff7188dccb 10-Nov-2009 Jeffrey Yasskin <jyasskin@google.com> Fix DenseMap iterator constness.

This patch forbids implicit conversion of DenseMap::const_iterator to
DenseMap::iterator which was possible because DenseMapIterator inherited
(publicly) from DenseMapConstIterator. Conversion the other way around is now
allowed as one may expect.

The template DenseMapConstIterator is removed and the template parameter
IsConst which specifies whether the iterator is constant is added to
DenseMapIterator.

Actually IsConst parameter is not necessary since the constness can be
determined from KeyT but this is not relevant to the fix and can be addressed
later.

Patch by Victor Zverovich!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86636 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
81cf4325698b48b02eddab921ac333c7f25005c3 10-Nov-2009 Jeffrey Yasskin <jyasskin@google.com> Fix DenseMap iterator constness.

This patch forbids implicit conversion of DenseMap::const_iterator to
DenseMap::iterator which was possible because DenseMapIterator inherited
(publicly) from DenseMapConstIterator. Conversion the other way around is now
allowed as one may expect.

The template DenseMapConstIterator is removed and the template parameter
IsConst which specifies whether the iterator is constant is added to
DenseMapIterator.

Actually IsConst parameter is not necessary since the constness can be
determined from KeyT but this is not relevant to the fix and can be addressed
later.

Patch by Victor Zverovich!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86636 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
80ab6551aafc61c32f496dcce7531a4621be653b 10-Nov-2009 Daniel Dunbar <daniel@zuster.org> Fix MemoryBuffer::getSTDIN to *not* return null if stdin is empty, this is a lame API.

Also, Stringrefify some more MemoryBuffer functions, and add two performance FIXMEs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86630 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
d65267ee625bb9cf8dc655a0c0409760e2b76c71 10-Nov-2009 Daniel Dunbar <daniel@zuster.org> Fix MemoryBuffer::getSTDIN to *not* return null if stdin is empty, this is a lame API.

Also, Stringrefify some more MemoryBuffer functions, and add two performance FIXMEs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86630 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
d49d0fd052f4f586956ffba0cb5c7b146632c3ef 09-Nov-2009 Nuno Lopes <nunoplopes@sapo.pt> add zextOrTrunc and sextOrTrunc methods, that are similar to the ones in APInt

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86549 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
95a3be0ba44e96308c65c28ee859acc36149ddd8 09-Nov-2009 Nuno Lopes <nunoplopes@sapo.pt> add zextOrTrunc and sextOrTrunc methods, that are similar to the ones in APInt

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86549 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
de46a5b60ea8cf3db0b613172667a7038470c578 06-Nov-2009 Daniel Dunbar <daniel@zuster.org> Pass StringRef by value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86251 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
2928c83b010f7cfdb0f819199d806f6942a7d995 06-Nov-2009 Daniel Dunbar <daniel@zuster.org> Pass StringRef by value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86251 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
002e65d73c9060d48f73b259ccfcc483352e859a 06-Nov-2009 Chris Lattner <sabre@nondot.org> remove some more Context arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86235 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
f55eeb918e9b4fac49853accabac5924a7716939 06-Nov-2009 Chris Lattner <sabre@nondot.org> remove some more Context arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86235 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
6070c017ba421c2862fc0c25d9770169e858c7e3 06-Nov-2009 Chris Lattner <sabre@nondot.org> remove a bunch of extraneous LLVMContext arguments
from various APIs, addressing PR5325.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86231 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
7b550ccfc5a3346c17e0390a59e2d6d19bc52705 06-Nov-2009 Chris Lattner <sabre@nondot.org> remove a bunch of extraneous LLVMContext arguments
from various APIs, addressing PR5325.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86231 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
406a0d14c0a031fe251e4d63f6713387cdebeb13 05-Nov-2009 Dan Gohman <gohman@apple.com> InstrTypes.h includes Instruction.h, so it's not necessary to include both.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86162 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
e5db7c4166957e13a7df84570be0b9ddc2ef07fe 05-Nov-2009 Dan Gohman <gohman@apple.com> InstrTypes.h includes Instruction.h, so it's not necessary to include both.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86162 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
5c2b47ac5ace2e3c08d4e37a6f9813c37ece0407 05-Nov-2009 Douglas Gregor <doug.gregor@gmail.com> Move llvm::cl::opt's conversion function into the base classes that
actually need that conversion function. Silences a Clang++ warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86148 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9ed0d92e9460ce4f3bbb72734a09c0d6fc9a5c97 05-Nov-2009 Douglas Gregor <dgregor@apple.com> Move llvm::cl::opt's conversion function into the base classes that
actually need that conversion function. Silences a Clang++ warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86148 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
68e77880026c35f6dfd89cc28ed98b349751ea8c 05-Nov-2009 Chris Lattner <sabre@nondot.org> Declare classes with matched tags, pointed out by a clang++ warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86144 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
0ff290615f7675e42111fd907f7b457f08f06747 05-Nov-2009 Chris Lattner <sabre@nondot.org> Declare classes with matched tags, pointed out by a clang++ warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86144 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
4de7965e718bb1a3fc3b36e233e97246c32c84f8 05-Nov-2009 Douglas Gregor <doug.gregor@gmail.com> Make two more LLVM headers standalone

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86131 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
131b0d2fcfa72de250f0add965f6f12aea943bf3 05-Nov-2009 Douglas Gregor <dgregor@apple.com> Make two more LLVM headers standalone

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86131 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
4e4fe9d4baccaff88c839d9662b0b503f9d2edd0 05-Nov-2009 Douglas Gregor <doug.gregor@gmail.com> Make a few headers standalone. Plus, add a missing "template" keyword
that Clang diagnoses but GCC does not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86130 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
eakDetector.h
utputBuffer.h
assNameParser.h
ecyclingAllocator.h
fbe67f85b2e14bf0b9a4c2b6306ccbcefdb8956b 05-Nov-2009 Douglas Gregor <dgregor@apple.com> Make a few headers standalone. Plus, add a missing "template" keyword
that Clang diagnoses but GCC does not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86130 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
eakDetector.h
utputBuffer.h
assNameParser.h
ecyclingAllocator.h
9f225801184a85aa03ddc3b45da5ad0eda8986ed 04-Nov-2009 Chris Lattner <sabre@nondot.org> make IRBuilder zap "X|0" and "X&-1" when building IR, this happens
during bitfield codegen and slows down -O0 compile times by making
useless IR. rdar://7362516


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86006 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
6bffa63dfea29a525bbd38ff46d03bcc40459dca 04-Nov-2009 Chris Lattner <sabre@nondot.org> make IRBuilder zap "X|0" and "X&-1" when building IR, this happens
during bitfield codegen and slows down -O0 compile times by making
useless IR. rdar://7362516


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86006 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e9b50cdd8d518c6321aba8b741024fa90d1bef4a 03-Nov-2009 Chris Lattner <sabre@nondot.org> turn IPSCCP back on by default, try #3 or 4? Woo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85929 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
fde2da47de8fc925028df323c2f5da3323eee9f9 03-Nov-2009 Chris Lattner <sabre@nondot.org> turn IPSCCP back on by default, try #3 or 4? Woo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85929 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
594522ab60e8ccebd9339149714422e94e1fdf72 03-Nov-2009 Duncan Sands <baldrick@free.fr> Run the functionattrs pass after the inliner, and not before.
This makes both logical sense (see below) and increases the
number of functions marked readnone/readonly by about 1-2%
in practice. The number of functions marked nocapture goes
up by about 5-10%. The reason it makes sense is shown by
the following example: if you run -functionattrs -inline on
it, then no attributes are assigned. But if you instead run
-inline -functionattrs then @f is marked readnone because the
simplifications produced by the inliner eliminate the store.

@x = external global i32

define void @w(i1 %b) {
br i1 %b, label %write, label %return
write:
store i32 1, i32 *@x
br label %return
return:
ret void
}

define void @f() {
call void @w(i1 0)
ret void
}



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85893 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
674fdc9a289c56edeb799bf5a8d4668f7e22bf73 03-Nov-2009 Duncan Sands <baldrick@free.fr> Run the functionattrs pass after the inliner, and not before.
This makes both logical sense (see below) and increases the
number of functions marked readnone/readonly by about 1-2%
in practice. The number of functions marked nocapture goes
up by about 5-10%. The reason it makes sense is shown by
the following example: if you run -functionattrs -inline on
it, then no attributes are assigned. But if you instead run
-inline -functionattrs then @f is marked readnone because the
simplifications produced by the inliner eliminate the store.

@x = external global i32

define void @w(i1 %b) {
br i1 %b, label %write, label %return
write:
store i32 1, i32 *@x
br label %return
return:
ret void
}

define void @f() {
call void @w(i1 0)
ret void
}



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85893 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
fab6da0286f9888c0c3a10117bcdbcb4504fe99a 03-Nov-2009 Daniel Dunbar <daniel@zuster.org> Speculatively redisable IPSCCP, I think its still breaking things.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85884 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
8fd64a5e27bba6f8d1b87682beb6639d1223556d 03-Nov-2009 Daniel Dunbar <daniel@zuster.org> Speculatively redisable IPSCCP, I think its still breaking things.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85884 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
3a2499a52b50685ed16c51d28550a09d0235dd29 03-Nov-2009 Chris Lattner <sabre@nondot.org> turn IPSCCP back on now that the iterator invalidation bug is fixed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85858 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
14532d03a17c83830e8ee765bf69bbf7198479dc 03-Nov-2009 Chris Lattner <sabre@nondot.org> turn IPSCCP back on now that the iterator invalidation bug is fixed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85858 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
d78dfdfe75fcfb54c65bd312ab31fec89d6741be 02-Nov-2009 Chris Lattner <sabre@nondot.org> revert r8579[56], which are causing unhappiness in buildbot land.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85818 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
3774c91854bcbfddb8c1b01b41841984d2c7ed32 02-Nov-2009 Chris Lattner <sabre@nondot.org> revert r8579[56], which are causing unhappiness in buildbot land.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85818 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
f386afd11f1c8e56d1afc8ff534bc58a2a3c29ed 02-Nov-2009 Chris Lattner <sabre@nondot.org> now that ip sccp *really* subsumes ipcp, remove ipcp again.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85796 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
b7a7f013ee7f3634b2d05e9fa02203892a13ae8b 02-Nov-2009 Chris Lattner <sabre@nondot.org> now that ip sccp *really* subsumes ipcp, remove ipcp again.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85796 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
66207cc7cda2cfcda69b9ba092279e2357d94a6d 01-Nov-2009 Chris Lattner <sabre@nondot.org> fix two strange things in the default passmgr:

1. we'd run simplifycfg at the very start, even though
the per function passes have already cleaned this up.

2. In the main per-function pipeline that is interlaced with inlining
etc, we would do instcombine, jump threading, simplifycfg *before*
doing SROA. SROA is much more likely to expose opportunities for
these passes than they are for SROA, so move SRoA up earlier.

also add some comments.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85742 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
f51635cd30232ecfcbe1094ceaf85118abe0f0f6 01-Nov-2009 Chris Lattner <sabre@nondot.org> fix two strange things in the default passmgr:

1. we'd run simplifycfg at the very start, even though
the per function passes have already cleaned this up.

2. In the main per-function pipeline that is interlaced with inlining
etc, we would do instcombine, jump threading, simplifycfg *before*
doing SROA. SROA is much more likely to expose opportunities for
these passes than they are for SROA, so move SRoA up earlier.

also add some comments.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85742 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
1f50617de31bdfc1138cbd1681bf67e59b5f5252 01-Nov-2009 Chris Lattner <sabre@nondot.org> IPSCCP apparently is not a superset of IPCP, this is bad,
but I'll investigate it separately. This unbreaks
test/FrontendC/weak_constant.c


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85735 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
3e54f8850a262fe0c8c7253b4e0ac700566c7365 01-Nov-2009 Chris Lattner <sabre@nondot.org> IPSCCP apparently is not a superset of IPCP, this is bad,
but I'll investigate it separately. This unbreaks
test/FrontendC/weak_constant.c


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85735 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
b5e2138e1894d150c0f3f830c236028ff5ad0f87 01-Nov-2009 Chris Lattner <sabre@nondot.org> only run GlobalDCE at -O3 and run it late instead of early.
GlobalOpt already deletes trivially dead functions/globals,
so GlobalDCE only adds values for cycles of dead things.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85731 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
c92712184faf007afa28503da77e9a962dceb8cc 01-Nov-2009 Chris Lattner <sabre@nondot.org> only run GlobalDCE at -O3 and run it late instead of early.
GlobalOpt already deletes trivially dead functions/globals,
so GlobalDCE only adds values for cycles of dead things.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85731 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
45ad5c40eb868d053ddbd2296a26c02882c6bd37 01-Nov-2009 Chris Lattner <sabre@nondot.org> We currently only run ipsccp at LTO time, which is silly. It subsumes
ipconstprop and doesn't take much time. Just run it in its place.

This adds a testcase for it, which I plan to expand to cover other
"integration" cases, where we expect the optimizer to be able to
eliminate various things. Due to phase order issues we've regressed
in a number of areas and integration tests are the only way I see to
prevent this.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85729 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
0037bfabd4733499ea8296dd1cfa8f579b50d13e 01-Nov-2009 Chris Lattner <sabre@nondot.org> We currently only run ipsccp at LTO time, which is silly. It subsumes
ipconstprop and doesn't take much time. Just run it in its place.

This adds a testcase for it, which I plan to expand to cover other
"integration" cases, where we expect the optimizer to be able to
eliminate various things. Due to phase order issues we've regressed
in a number of areas and integration tests are the only way I see to
prevent this.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85729 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
f9eeeee14b7945c133fdaed19ce62be2a18b0457 30-Oct-2009 Evan Cheng <evan.cheng@apple.com> Rather than having llvm-gcc changing the meaning of OptimizeSize, just make sure loop unswitch is conservative when optimization level is < 3.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85581 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
50222db00ac2476de6d76e599d8dd2baa4e5e244 30-Oct-2009 Evan Cheng <evan.cheng@apple.com> Rather than having llvm-gcc changing the meaning of OptimizeSize, just make sure loop unswitch is conservative when optimization level is < 3.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85581 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
30f4c269dd65e2abaaf718261410fd7c768dfc86 29-Oct-2009 Chris Lattner <sabre@nondot.org> add IRBuilder support for IndirectBr


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85445 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a809d2fb2759807e11babd294e4257ff45c220de 29-Oct-2009 Chris Lattner <sabre@nondot.org> add IRBuilder support for IndirectBr


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85445 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
337ba4f1060c186398363a037327b85fb8b4e1d1 28-Oct-2009 Chris Lattner <sabre@nondot.org> add a new 'SetCurrentDebugType' API (requested by Andrew Haley for JIT
stuff) to programmatically control the current debug flavor. While
I'm at it, doxygenate Debug.h and clean it up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85395 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
70197a3a0413476801622484b9c83cf6f2d6f82c 28-Oct-2009 Chris Lattner <sabre@nondot.org> add a new 'SetCurrentDebugType' API (requested by Andrew Haley for JIT
stuff) to programmatically control the current debug flavor. While
I'm at it, doxygenate Debug.h and clean it up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85395 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
4c3800f0172e2fdc0b3b2e78dbaf89b150f4e04f 28-Oct-2009 Chris Lattner <sabre@nondot.org> rename indbr -> indirectbr to appease the residents of #llvm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85351 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
ab21db79ef1d2530880ad11f21f0b87ffca02dd4 28-Oct-2009 Chris Lattner <sabre@nondot.org> rename indbr -> indirectbr to appease the residents of #llvm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85351 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
e0787286429c486909bd3b01b5dfedacbc2d7394 27-Oct-2009 Chris Lattner <sabre@nondot.org> add enough support for indirect branch for the feature test to pass
(assembler,asmprinter, bc reader+writer) and document it. Codegen
currently aborts on it.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85274 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
f9be95f867745b6754b2402b9b72f9eaeabd637f 27-Oct-2009 Chris Lattner <sabre@nondot.org> add enough support for indirect branch for the feature test to pass
(assembler,asmprinter, bc reader+writer) and document it. Codegen
currently aborts on it.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85274 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
9b95748848a137a23419ae1e6b4f92736af70e59 27-Oct-2009 Chris Lattner <sabre@nondot.org> lang points out that the comment is out of date with the code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85203 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
1711bcb19889eb982445691c321cd6f380130b37 27-Oct-2009 Chris Lattner <sabre@nondot.org> lang points out that the comment is out of date with the code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85203 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
f9a7a33126ed4def13851a4d77a442db55ffe307 27-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove FreeInst.
Remove LowerAllocations pass.
Update some more passes to treate free calls just like they were treating FreeInst.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85176 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
046e78ce55a7c3d82b7b6758d2d77f2d99f970bf 27-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove FreeInst.
Remove LowerAllocations pass.
Update some more passes to treate free calls just like they were treating FreeInst.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85176 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
ddabac83a56fa9fda47c8c4ededa6560731b7304 26-Oct-2009 Dan Gohman <gohman@apple.com> Add CreateZExtOrBitCast and CreateSExtOrBitCast to TargetFolder
for consistency with ConstantFolder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85137 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
e18700a09ac14dc957684472244a2681b536a118 26-Oct-2009 Dan Gohman <gohman@apple.com> Add CreateZExtOrBitCast and CreateSExtOrBitCast to TargetFolder
for consistency with ConstantFolder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85137 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
1ec7df14990f3bdf92f8e55dcdeeca03d6802602 26-Oct-2009 Chandler Carruth <chandlerc@gmail.com> Move DataTypes.h to include/llvm/System, update all users. This breaks the last
direct inclusion edge from System to Support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
llocator.h
onstantRange.h
ataTypes.h.cmake
ataTypes.h.in
LF.h
athExtras.h
emoryBuffer.h
emoryObject.h
ointerLikeTypeTraits.h
lowOperationInformer.h
imer.h
aw_ostream.h
8b67f774e9c38b7718b2b300b628388f966df4e0 26-Oct-2009 Chandler Carruth <chandlerc@gmail.com> Move DataTypes.h to include/llvm/System, update all users. This breaks the last
direct inclusion edge from System to Support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
llocator.h
onstantRange.h
ataTypes.h.cmake
ataTypes.h.in
LF.h
athExtras.h
emoryBuffer.h
emoryObject.h
ointerLikeTypeTraits.h
lowOperationInformer.h
imer.h
aw_ostream.h
939460818ececec9e225ac70ab473c109300bbad 24-Oct-2009 Victor Hernandez <vhernandez@apple.com> Auto-upgrade free instructions to calls to the builtin free function.
Update all analysis passes and transforms to treat free calls just like FreeInst.
Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84987 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
66284e063a1e46500acae48bdc0e4a00652021d1 24-Oct-2009 Victor Hernandez <vhernandez@apple.com> Auto-upgrade free instructions to calls to the builtin free function.
Update all analysis passes and transforms to treat free calls just like FreeInst.
Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84987 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
b168730cf56bd8e8bf0c4d7f494b79ca135e973d 23-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove AllocationInst. Since MallocInst went away, AllocaInst is the only subclass of AllocationInst, so it no longer is necessary.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84969 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
7b929dad59785f62a66f7c58615082f98441e95e 23-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove AllocationInst. Since MallocInst went away, AllocaInst is the only subclass of AllocationInst, so it no longer is necessary.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84969 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
50e846dbda3390610f7b414dd14000ebb170c737 23-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Try r84890 again (adding ValueMap<>), now that I've tested the compile on
gcc-4.4.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84902 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
71a5c22c2b635ea903c3ae7d2695ca649b38726f 23-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Try r84890 again (adding ValueMap<>), now that I've tested the compile on
gcc-4.4.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84902 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
510cbea6c3ebc7702616d655d4dd1367e17b462a 22-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Revert r84890, which broke the linux build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84892 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
a84c9db467ce55e68464e6a099dcfe934b513a2a 22-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Revert r84890, which broke the linux build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84892 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
87ed85965251c3c6dda530e083d5c1aedd3eef54 22-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Add a ValueMap<ValueOrSubclass*, T> type. ValueMap<Value*, T> is safe to use
even when keys get RAUWed and deleted during its lifetime. By default the keys
act like WeakVHs, but users can pass a third template parameter to configure
how updates work and whether to do anything beyond updating the map on each
action.

It's also possible to automatically acquire a lock around ValueMap updates
triggered by RAUWs and deletes, to support the ExecutionEngine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84890 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
e0a234029b1b65f21169536f4c45e83743ed3cfa 22-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Add a ValueMap<ValueOrSubclass*, T> type. ValueMap<Value*, T> is safe to use
even when keys get RAUWed and deleted during its lifetime. By default the keys
act like WeakVHs, but users can pass a third template parameter to configure
how updates work and whether to do anything beyond updating the map on each
action.

It's also possible to automatically acquire a lock around ValueMap updates
triggered by RAUWs and deletes, to support the ExecutionEngine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84890 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
04480acd34c5bf3312e6ddafb36d595788a26f0f 21-Oct-2009 Devang Patel <dpatel@apple.com> Cosmetic changes.

s/validName/isValidName/g
s/with an Instruction/to an Instruction/g
s/RegisterMDKind/registerMDKind/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84689 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
d9723e9a2800e3f74652ef3be7c1c2c58d01f376 21-Oct-2009 Devang Patel <dpatel@apple.com> Cosmetic changes.

s/validName/isValidName/g
s/with an Instruction/to an Instruction/g
s/RegisterMDKind/registerMDKind/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84689 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e45e6f933f7296f36a21918ef8d59431550c8eda 19-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Clean up the JITResolver stub/callsite<->function maps.

The JITResolver maps Functions to their canonical stubs and all callsites for
lazily-compiled functions to their target Functions. To make Function
destruction work, I'm going to need to remove all callsites on destruction, so
this patch also adds the reverse mapping for that.

There was an incorrect assumption in here that the only stub for a function
would be the one caused by needing to lazily compile it, while x86-64 far calls
and dlsym-stubs could also cause such stubs, but I didn't look for a test case
that the assumption broke.

This also adds DenseMapInfo<AssertingVH> so I can use DenseMaps instead of
std::maps.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84522 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
ebbcef945d33af5252486c1655ec6afdba4f97a7 19-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Clean up the JITResolver stub/callsite<->function maps.

The JITResolver maps Functions to their canonical stubs and all callsites for
lazily-compiled functions to their target Functions. To make Function
destruction work, I'm going to need to remove all callsites on destruction, so
this patch also adds the reverse mapping for that.

There was an incorrect assumption in here that the only stub for a function
would be the one caused by needing to lazily compile it, while x86-64 far calls
and dlsym-stubs could also cause such stubs, but I didn't look for a test case
that the assumption broke.

This also adds DenseMapInfo<AssertingVH> so I can use DenseMaps instead of
std::maps.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84522 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
918fdb719a332177af23aaa94bdb667979205412 18-Oct-2009 Eric Christopher <echristo@apple.com> More warnings patrol: Another unused argument and more implicit
conversions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84382 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
3a8ff4c8b67d12689cb5fc9c0e9606f4530e6f41 18-Oct-2009 Eric Christopher <echristo@apple.com> More warnings patrol: Another unused argument and more implicit
conversions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84382 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
6af700555f6c97d33872c2bbf316214924247065 17-Oct-2009 Daniel Dunbar <daniel@zuster.org> Add raw_ostream::write_escaped, for writing escaped strings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84355 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
522b113a752a8e86932eebdc41ba07e058950e41 17-Oct-2009 Daniel Dunbar <daniel@zuster.org> Add raw_ostream::write_escaped, for writing escaped strings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84355 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
37f513df87ceb54e873adc113a1fcf4af9556833 17-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove MallocInst from LLVM Instructions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84299 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
a276c603b82a11b0bf0b59f0517a69e4b63adeab 17-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove MallocInst from LLVM Instructions.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84299 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
7ad23fdef67f0088e7b610a6a19149a2a1b16639 15-Oct-2009 Eric Christopher <echristo@apple.com> One more iteration here and a yet better way to solve it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84150 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
085b9c034fb97120cffbf0c235c5f372f2c938b8 15-Oct-2009 Eric Christopher <echristo@apple.com> One more iteration here and a yet better way to solve it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84150 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
67d5877e544e547779e1b3349d9c8f3b56d7474a 14-Oct-2009 Eric Christopher <echristo@apple.com> Fix the unused argument problem here a different way - cast to void.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84147 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7a8a05b3408cffa5458f1407d0e4623855c40689 14-Oct-2009 Eric Christopher <echristo@apple.com> Fix the unused argument problem here a different way - cast to void.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84147 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
4d53c631654d3a04a85738a29ecee83d200cc3c4 14-Oct-2009 Dan Gohman <gohman@apple.com> Delete bogus semicolons.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84132 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
d10e68c2cb61f2c9569ca80e1c54b2e40ee066d2 14-Oct-2009 Dan Gohman <gohman@apple.com> Delete bogus semicolons.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84132 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
932740916d76b3253cf710e424abf73e525ee5cd 14-Oct-2009 Eric Christopher <echristo@apple.com> Remove a bunch of unused arguments from functions, silencing a
warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84130 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
aw_ostream.h
41b5adf20208f46e4b1104d6d473710fbfa61eb9 14-Oct-2009 Eric Christopher <echristo@apple.com> Remove a bunch of unused arguments from functions, silencing a
warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84130 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
aw_ostream.h
fc1df34dea6dae98d823f9cf95afbb364201ec97 14-Oct-2009 Devang Patel <dpatel@apple.com> s/DebugLoc.CompileUnit/DebugLoc.Scope/g
s/DebugLoc.InlinedLoc/DebugLoc.InlinedAtLoc/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84054 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
1619dc3b9ee2573c481591764c2d26d5ff16b483 14-Oct-2009 Devang Patel <dpatel@apple.com> s/DebugLoc.CompileUnit/DebugLoc.Scope/g
s/DebugLoc.InlinedLoc/DebugLoc.InlinedAtLoc/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84054 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
07087113c591107ec2b39346a39c160a8e5f1170 13-Oct-2009 Douglas Gregor <doug.gregor@gmail.com> Add is_same type trait

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84029 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
404aa26b26eb62c57daac8246159220eb173ae94 13-Oct-2009 Douglas Gregor <dgregor@apple.com> Add is_same type trait

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84029 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
9b3c779a1dfd96ccced1d0e8c6e3f95519ab23cf 12-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Fix http://llvm.org/PR5160, to let CallbackVHs modify other ValueHandles on the
same Value without breaking things.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83861 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
6a9291ad55cf3b3731d3512eb5aa72ac7cdf02f9 12-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Fix http://llvm.org/PR5160, to let CallbackVHs modify other ValueHandles on the
same Value without breaking things.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83861 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
0c7a6448809f6dc46ba73d35edfe8710c9758f64 11-Oct-2009 Chris Lattner <sabre@nondot.org> add a helper for matching "1".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83760 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f7a60d28a1160e314d577847b3e7349235293b7c 11-Oct-2009 Chris Lattner <sabre@nondot.org> add a helper for matching "1".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83760 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
b3fb398811b1fa62ff2262e0f96bca634aa96224 11-Oct-2009 Chris Lattner <sabre@nondot.org> there is no need to run mem2reg after jump threading at LTO time now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83753 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
1bd8d0a00b430723c85a9498e1253a2ae6eb9c3b 11-Oct-2009 Chris Lattner <sabre@nondot.org> there is no need to run mem2reg after jump threading at LTO time now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83753 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
e8bb5a4841c7f35bdad091ac5e9ffd8515ffcd5a 10-Oct-2009 Chris Lattner <sabre@nondot.org> add some WeakVH::operator='s. Without these, assigning
a Value* to a WeakVH was constructing a temporary WeakVH
(due to the implicit assignment operator). This avoids
that cost.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83704 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
f6811274e18a73e7ba84a820a28cc2549a4fab44 10-Oct-2009 Chris Lattner <sabre@nondot.org> add some WeakVH::operator='s. Without these, assigning
a Value* to a WeakVH was constructing a temporary WeakVH
(due to the implicit assignment operator). This avoids
that cost.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83704 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
763375a457d612e0300d71f78850f9bcf6e14650 04-Oct-2009 Evan Cheng <evan.cheng@apple.com> Rename enum NumOccurrences to NumOccurrencesFlag since there is a member named NumOccurrences.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83273 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
d113c6b601c778a85443cb4b4c80452e92c1fb8e 04-Oct-2009 Evan Cheng <evan.cheng@apple.com> Rename enum NumOccurrences to NumOccurrencesFlag since there is a member named NumOccurrences.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83273 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
0f9678ef172077982826809d5111881929175d83 01-Oct-2009 Douglas Gregor <doug.gregor@gmail.com> Teach CMake to look for bidirectional_iterator, iterator, forward_iterator, uint64_t, and u_int64_t, from Yonggang Luo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83203 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
9c091a4846044f18cfdd8bca55957c2aa6c9a8a5 01-Oct-2009 Douglas Gregor <dgregor@apple.com> Teach CMake to look for bidirectional_iterator, iterator, forward_iterator, uint64_t, and u_int64_t, from Yonggang Luo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83203 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
f736728788cddfb56d44fb826cb5d91dfdbfe294 01-Oct-2009 Devang Patel <dpatel@apple.com> Add another MDNode into DebugLocTuple. This will be used to keep track of inlined functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83190 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
a1434045c32eb6818354a607b84d99353af759b0 01-Oct-2009 Devang Patel <dpatel@apple.com> Add another MDNode into DebugLocTuple. This will be used to keep track of inlined functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83190 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
3402a11ab9fadebbfd897d532e3dd3ec33bc76d5 29-Sep-2009 Devang Patel <dpatel@apple.com> Only one custom meadata of each kind can be attached with an instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83105 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
58a230a4917592f5c529cb40e75bfc3e1c681b69 29-Sep-2009 Devang Patel <dpatel@apple.com> Only one custom meadata of each kind can be attached with an instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83105 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b5896160216cae66e3a06cb58c3c38ba09f6969e 28-Sep-2009 Devang Patel <dpatel@apple.com> Do not use global typedef for MDKindID.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83016 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a2148402ce39fb3aad09e98a32078d3853a01ae9 28-Sep-2009 Devang Patel <dpatel@apple.com> Do not use global typedef for MDKindID.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83016 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
aa2637b6ad3234e068167af31981d688f54191b0 26-Sep-2009 Chris Lattner <sabre@nondot.org> remove support for "NoSub" from regex. It seems like a minor optimization
and makes the API more annoying. Add a Regex::getNumMatches() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82877 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
81f46d9ce1888308b33336f9bea72147430da36b 26-Sep-2009 Chris Lattner <sabre@nondot.org> remove support for "NoSub" from regex. It seems like a minor optimization
and makes the API more annoying. Add a Regex::getNumMatches() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82877 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
1261dde02801ca06f9e8001747eab7fd244fa3f4 26-Sep-2009 Duncan Sands <baldrick@free.fr> For the NSWSub support in the builder to actually be useable,
there need to be corresponding changes to the constant folders,
done in this patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82862 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
3548ea8e905269e819fdd4c7fab42142b745c6c5 26-Sep-2009 Duncan Sands <baldrick@free.fr> For the NSWSub support in the builder to actually be useable,
there need to be corresponding changes to the constant folders,
done in this patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82862 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
b2b6ab5a11661fd22b5020a1175ca3715b02a509 26-Sep-2009 Duncan Sands <baldrick@free.fr> Add methods for creating NSW subtraction, as already exists
for addition.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82860 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b9c129d553c8f2ebdb82969d31c5478f899033bc 26-Sep-2009 Duncan Sands <baldrick@free.fr> Add methods for creating NSW subtraction, as already exists
for addition.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82860 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f55e81bef95886581ceb0597e7e6c4838e5cf002 24-Sep-2009 Chris Lattner <sabre@nondot.org> add and document regex support for FileCheck. You can now do stuff like:

; CHECK: movl {{%e[a-z][xi]}}, %eax

or whatever.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82717 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
528700863adefca8de461ce28a7d903729fb96b4 24-Sep-2009 Chris Lattner <sabre@nondot.org> add and document regex support for FileCheck. You can now do stuff like:

; CHECK: movl {{%e[a-z][xi]}}, %eax

or whatever.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82717 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
81f61b9291284bd0dc93d9dc333c1962a4399719 24-Sep-2009 Chris Lattner <sabre@nondot.org> tidy up, fix a memory leak in Regex::isValid


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82707 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
48ba9ff3c44f33c65c26ecf5df306f4a428d2c26 24-Sep-2009 Chris Lattner <sabre@nondot.org> tidy up, fix a memory leak in Regex::isValid


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82707 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
1f939a29fdfdfc31e521209c44fc1ca3b1ecfc6f 23-Sep-2009 Dan Gohman <gohman@apple.com> Correct a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82648 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
9f765dd0ee8837da7a454f5810364b2d2671fa5e 23-Sep-2009 Dan Gohman <gohman@apple.com> Correct a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82648 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
7fdd6fe71635b720cb3c47fe9bbe4c7587cb027d 23-Sep-2009 Devang Patel <dpatel@apple.com> s/*Location/*DebugLocation/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82635 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
2e3f2c48d87b95f854c5bc40c5077177565a5653 23-Sep-2009 Devang Patel <dpatel@apple.com> s/*Location/*DebugLocation/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82635 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e9cbef31ba8c374d41249635197e58c102fe41fb 23-Sep-2009 John McCall <rjmccall@apple.com> Make the type traits for a const pointer defer to those for a unqualified
pointer, instead of providing independent values modelled on the default
implementation.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82620 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
470e08e1d1ec4c3c0eae96fab98c1f4a1552c2a3 23-Sep-2009 John McCall <rjmccall@apple.com> Make the type traits for a const pointer defer to those for a unqualified
pointer, instead of providing independent values modelled on the default
implementation.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82620 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
191278d73343733b56e030ace8f6a9dcdf08818a 22-Sep-2009 Devang Patel <dpatel@apple.com> Add SetLocation() to allow IRBuilder user to set location info for an instruction already created.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82570 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
7815d71167e7ba7f0e4b0c54936c1a18a5f7b94d 22-Sep-2009 Devang Patel <dpatel@apple.com> Add SetLocation() to allow IRBuilder user to set location info for an instruction already created.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82570 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
5ffdd0e9c3eb03b473ddf666c885cecbc15f8df7 22-Sep-2009 Devang Patel <dpatel@apple.com> Check exisiting dbg MDKind first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82568 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
14433c96c6c2f1bd250fc4371c2647556d0d5c61 22-Sep-2009 Devang Patel <dpatel@apple.com> Check exisiting dbg MDKind first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82568 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9f854de1b687e0906e7521393f1fa176e4b15b52 22-Sep-2009 Daniel Dunbar <daniel@zuster.org> Revert "Don't allow formatted_ostream to be unbuffered, even if its underlying
buffer", while we work out a solution.

Dan convinced me that making debugging annoying for him is worse than 10x being
slower for me. :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82553 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
b759865495441386c58e3c56ec31c53121f45834 22-Sep-2009 Daniel Dunbar <daniel@zuster.org> Revert "Don't allow formatted_ostream to be unbuffered, even if its underlying
buffer", while we work out a solution.

Dan convinced me that making debugging annoying for him is worse than 10x being
slower for me. :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82553 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
4f912e5070e7e43b4bd9def2d9f1038254c5806c 22-Sep-2009 Daniel Dunbar <daniel@zuster.org> Add a TrackingVH value handle.

This is designed for tracking a value even when it might move (like WeakVH), but it is an error to delete the referenced value (unlike WeakVH0. TrackingVH is templated like AssertingVH on the tracked Value subclass, it is an error to RAUW a tracked value to an incompatible type.

For implementation reasons the latter error is only diagnosed on accesses to a mis-RAUWed TrackingVH, because we don't want a virtual interface in a templated class.

The former error is also only diagnosed on access, so that clients are allowed to delete a tracked value, as long as they don't use it. This makes it easier for the client to reason about destruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82506 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
e5b18362dbafc8ee44ae864664fffe47066f685a 22-Sep-2009 Daniel Dunbar <daniel@zuster.org> Add a TrackingVH value handle.

This is designed for tracking a value even when it might move (like WeakVH), but it is an error to delete the referenced value (unlike WeakVH0. TrackingVH is templated like AssertingVH on the tracked Value subclass, it is an error to RAUW a tracked value to an incompatible type.

For implementation reasons the latter error is only diagnosed on accesses to a mis-RAUWed TrackingVH, because we don't want a virtual interface in a templated class.

The former error is also only diagnosed on access, so that clients are allowed to delete a tracked value, as long as they don't use it. This makes it easier for the client to reason about destruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82506 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
bd66f1607e2c9e866c66fdb4b1feb9a15718075b 21-Sep-2009 Daniel Dunbar <daniel@zuster.org> Don't allow formatted_ostream to be unbuffered, even if its underlying buffer
is.
- The problem is that formatted_ostream forces its underlying buffer to be
unbuffered, so if some client happens to wrap a formatted_ostream around
something, but still use the underlying stream, then we can end up writing on
a fully unbuffered output (which was never intended to be unbuffered).

- This makes clang (and presumably llvm-gcc) -emit-llvm -S a mere 10x faster.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82434 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
cc1c702f628d93f9d84b681059e16652ad09d595 21-Sep-2009 Daniel Dunbar <daniel@zuster.org> Don't allow formatted_ostream to be unbuffered, even if its underlying buffer
is.
- The problem is that formatted_ostream forces its underlying buffer to be
unbuffered, so if some client happens to wrap a formatted_ostream around
something, but still use the underlying stream, then we can end up writing on
a fully unbuffered output (which was never intended to be unbuffered).

- This makes clang (and presumably llvm-gcc) -emit-llvm -S a mere 10x faster.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82434 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
e4a6ac9ba8cd5339cb954d9830b1d2a06223355b 20-Sep-2009 Chris Lattner <sabre@nondot.org> smallvectorize getExtraOptionNames


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82377 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
1908aea3a64fa89a907317849cbff73789cdb89a 20-Sep-2009 Chris Lattner <sabre@nondot.org> smallvectorize getExtraOptionNames


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82377 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
90cc3b72cd886acc682e2a287b5b43638f723e28 20-Sep-2009 Daniel Dunbar <daniel@zuster.org> A few more tabs -> spaces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82358 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
65b660743ccce5393f70d3667ac4e2b0b76e5236 20-Sep-2009 Daniel Dunbar <daniel@zuster.org> A few more tabs -> spaces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82358 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
157229d5138579232650753d0514025858b01f8e 20-Sep-2009 Chris Lattner <sabre@nondot.org> convert a bunch more stuff to use StringRef. The ArgName arguments are now
stringref because they may not be nul terminated. For options like -Lfoo
this now avoids a O(n) temporary std::strings where N is the length of
the string after -L.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82345 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
99c5c7b7df4fe44d54cd680e7878c44789e6e057 20-Sep-2009 Chris Lattner <sabre@nondot.org> convert a bunch more stuff to use StringRef. The ArgName arguments are now
stringref because they may not be nul terminated. For options like -Lfoo
this now avoids a O(n) temporary std::strings where N is the length of
the string after -L.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82345 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
41716328c597656692f2189f47c7cc56120d2aa5 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> Strip trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82332 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
f612ff6cfbf3a59842732f0280807c0714ab9025 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> Strip trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82332 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
80b13b31a80b54768abc2da9f00a725209702816 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> RHS of assignment should be const reference.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82331 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
7e32c4fa72f8663abce1121965c3065f5dfa6747 19-Sep-2009 Daniel Dunbar <daniel@zuster.org> RHS of assignment should be const reference.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82331 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
47d05cbb759287986bb6223325b987caeda53a6e 19-Sep-2009 Chris Lattner <sabre@nondot.org> convert a bunch of std::strings to use StringRef. This should eliminate
a massive number of temporary strings created when parsing a command line.
More still left to eliminate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82318 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a460beb5cdc1cf05da3b22a39fd2b3107ea2e2fe 19-Sep-2009 Chris Lattner <sabre@nondot.org> convert a bunch of std::strings to use StringRef. This should eliminate
a massive number of temporary strings created when parsing a command line.
More still left to eliminate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82318 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
627f280adfd69bbf8e859de69b6807ae0c9effce 19-Sep-2009 Chris Lattner <sabre@nondot.org> remove an extraneous mem2reg pass early in the pipe. Since
this is run after the 'standard function passes', SRoA was
recently run. This saves a domfrontier construction. Thanks
to Eli for noticing this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82291 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
4a86348bfb1dd06ac3ec204a8b295576873701e1 19-Sep-2009 Chris Lattner <sabre@nondot.org> remove an extraneous mem2reg pass early in the pipe. Since
this is run after the 'standard function passes', SRoA was
recently run. This saves a domfrontier construction. Thanks
to Eli for noticing this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82291 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
b215f0dab024efb9d46497a28404bcde2638e1a3 19-Sep-2009 Chris Lattner <sabre@nondot.org> reduce indentation by using an early exit, and add a comment,
no functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82290 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
d7a5983e482136af48c442cd77f42d614598f111 19-Sep-2009 Chris Lattner <sabre@nondot.org> reduce indentation by using an early exit, and add a comment,
no functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82290 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
3789f872b0ac8f9d22d99696164e04b664af90f6 18-Sep-2009 Anton Korobeynikov <asl@math.spbu.ru> Allow symbols to start from the digit if target requests it. This allows, e.g. pinning
variables to specified absolute address. Make use of this feature for MSP430.
This unbreaks PR4776.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82227 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
c6f729ed5519cdf398ca4039dbdbea4f81433ec0 18-Sep-2009 Anton Korobeynikov <asl@math.spbu.ru> Allow symbols to start from the digit if target requests it. This allows, e.g. pinning
variables to specified absolute address. Make use of this feature for MSP430.
This unbreaks PR4776.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82227 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
7fbb035781529abc1df7b4e4f6471dd977708e3b 18-Sep-2009 Julien Lerouge <jlerouge@apple.com> Use __attribute__((__used__)) if GCC >= 3.1 (seems to be the oldest GCC
supporting this attribute).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82177 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
cb89f6cc10d63e61115a6acc4e2703fbd0823253 18-Sep-2009 Julien Lerouge <jlerouge@apple.com> Use __attribute__((__used__)) if GCC >= 3.1 (seems to be the oldest GCC
supporting this attribute).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82177 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
9514eca3ca9a35a0f5fc01763f6556bec579cc0e 16-Sep-2009 Devang Patel <dpatel@apple.com> Add an interface to attach debugging information with an instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82062 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
95c1984e6b0b299f74d8a428fac6b6be266ae169 16-Sep-2009 Devang Patel <dpatel@apple.com> Add an interface to attach debugging information with an instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82062 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
48f5114de937c031d43c91691806b04f55d35e2b 15-Sep-2009 Daniel Dunbar <daniel@zuster.org> Drop the raw_ostream required buffer size to 1.

- As best I can tell, we have eliminated all the code which used to require a
larger buffer size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81912 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c8213b782735c7916cbc996c8dcdf89f9593d354 15-Sep-2009 Daniel Dunbar <daniel@zuster.org> Drop the raw_ostream required buffer size to 1.

- As best I can tell, we have eliminated all the code which used to require a
larger buffer size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81912 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
95bb35e9ba16fcbff3d32a0e32d43f876203d172 15-Sep-2009 Dan Gohman <gohman@apple.com> Fix apostrophos.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81856 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
75144f93eb7e4dbf22d308d21581ae255dd520c6 15-Sep-2009 Dan Gohman <gohman@apple.com> Fix apostrophos.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81856 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
31b20c7d4a2789da21fe865cc5e7cfa3f6fdd581 11-Sep-2009 Dan Gohman <gohman@apple.com> Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn't
working. To support this, add an is_displayed() function to raw_ostream,
and generalize Process::StandardOutIsDisplayed and friends in order to
support it.

Also, call RemoveFileOnSignal before creating a file instead of after, so
that the file isn't left behind if the program is interrupted between when
the file is created and RemoveFileOnSignal is called.

While here, add a -S to llvm-extract and port it to IRReader so that it
supports assembly input.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81568 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
ec080467f5b322441055de1f6cd4f08edc23d7df 11-Sep-2009 Dan Gohman <gohman@apple.com> Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn't
working. To support this, add an is_displayed() function to raw_ostream,
and generalize Process::StandardOutIsDisplayed and friends in order to
support it.

Also, call RemoveFileOnSignal before creating a file instead of after, so
that the file isn't left behind if the program is interrupted between when
the file is created and RemoveFileOnSignal is called.

While here, add a -S to llvm-extract and port it to IRReader so that it
supports assembly input.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81568 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
bd7e1108fe9851970a8f9cf190defddde49ab16b 11-Sep-2009 Chris Lattner <sabre@nondot.org> add a new Mangler::getNameWithPrefix API which returns the
(uniqued if unnamed) global variable name with the prefix that
it is supposed to get. It doesn't do "mangling" in the sense of
adding quotes and hacking on bad characters.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81505 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
5b7dfeebffe606a9be2e3d1eb82e339cfde14069 11-Sep-2009 Chris Lattner <sabre@nondot.org> add a new Mangler::getNameWithPrefix API which returns the
(uniqued if unnamed) global variable name with the prefix that
it is supposed to get. It doesn't do "mangling" in the sense of
adding quotes and hacking on bad characters.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81505 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
ffdf10df7ba8b1cef378d86ab11912a95b04e8d4 10-Sep-2009 Sean Callanan <scallanan@apple.com> Added an abstract superclass, MCDisassembler, for
all disassemblers.

Modified the MemoryObject to support 64-bit address
spaces, regardless of the LLVM process's address
width.

Modified the Target class to allow extraction of a
MCDisassembler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81392 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
251ef612a812ac99edeab6c08a752bf8ca220921 10-Sep-2009 Sean Callanan <scallanan@apple.com> Added an abstract superclass, MCDisassembler, for
all disassemblers.

Modified the MemoryObject to support 64-bit address
spaces, regardless of the LLVM process's address
width.

Modified the Target class to allow extraction of a
MCDisassembler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81392 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
509ea0c591607793cc3fdf076b80c5743b72ef17 09-Sep-2009 Jeffrey Yasskin <jyasskin@google.com> Make TypeBuilder's result depend on the LLVMContext it's passed.
TypeBuilder was using a local static variable to cache its result. This made it
ignore changes in its LLVMContext argument and always return a type constructed
from the argument to the first call.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81316 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
4a38930a4595d94b1f379d6955c531c48e5c2aa0 09-Sep-2009 Jeffrey Yasskin <jyasskin@google.com> Make TypeBuilder's result depend on the LLVMContext it's passed.
TypeBuilder was using a local static variable to cache its result. This made it
ignore changes in its LLVMContext argument and always return a type constructed
from the argument to the first call.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81316 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
1e4519c64ba34818ace9858444a66399be7eecfd 09-Sep-2009 Dan Gohman <gohman@apple.com> Use MemoryBuffer::getBufferIdentifier() in the AsmPrinter instead
of requiring a name be passed in. This makes it use "<stdin>"
instead of "-" and makes it more consistent with the Bitcode reader.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81256 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
f31657990191d5b2bb1eb3bd95020fc3375f0e3d 09-Sep-2009 Dan Gohman <gohman@apple.com> Use MemoryBuffer::getBufferIdentifier() in the AsmPrinter instead
of requiring a name be passed in. This makes it use "<stdin>"
instead of "-" and makes it more consistent with the Bitcode reader.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81256 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
fbc8e46ee99c6bc13b4cef2dabea28fa578f6c52 06-Sep-2009 Duncan Sands <baldrick@free.fr> Change "const static" to "static const", as warned about
by icc (#82). Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81117 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
05866f7963d37ede6b99445b5b079874413b1ec7 06-Sep-2009 Duncan Sands <baldrick@free.fr> Change "const static" to "static const", as warned about
by icc (#82). Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81117 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
dc94fb91bc0e3dba99c31b3b7f3b8e5048b0e137 06-Sep-2009 Duncan Sands <baldrick@free.fr> Mark more constants unsigned, as warned about by icc (#68).
Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81116 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
18f13c66bfb9cb2116be0f339fa955949dd60dd1 06-Sep-2009 Duncan Sands <baldrick@free.fr> Mark more constants unsigned, as warned about by icc (#68).
Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81116 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
e0223c296633ecaa5712c129a4cab7a0d6a3a9bf 06-Sep-2009 Duncan Sands <baldrick@free.fr> Public and private corrections, warned about by icc (#304).
Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81107 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
59bf4fcc0680e75b408579064d1205a132361196 06-Sep-2009 Duncan Sands <baldrick@free.fr> Public and private corrections, warned about by icc (#304).
Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81107 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
bbfc76d44f8db3457b24e4c2fdfe0f7774a815a5 06-Sep-2009 Duncan Sands <baldrick@free.fr> Remove unneeded declaration, as warned about by
icc (#1170). Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81104 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
34d0194583c46f7f0d8695cb33a1feb3845946b3 06-Sep-2009 Duncan Sands <baldrick@free.fr> Remove unneeded declaration, as warned about by
icc (#1170). Patch by Erick Tryzelaar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81104 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
1046e41998ac9178d87226cb0869612c22f5c6d1 04-Sep-2009 Dan Gohman <gohman@apple.com> Revert 80959. It isn't sufficient to solve the full problem. And it
introduced regressions in the Ocaml bindings tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80969 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
6e7ad958683f34bf6c014c88fef723e5a2d741be 04-Sep-2009 Dan Gohman <gohman@apple.com> Revert 80959. It isn't sufficient to solve the full problem. And it
introduced regressions in the Ocaml bindings tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80969 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
2f2ab4797b28ede081fda36855a26e8ec1b9357e 04-Sep-2009 Dan Gohman <gohman@apple.com> Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,
and exact flags. Because ConstantExprs are uniqued, creating an
expression with this flag causes all expressions with the same operands
to have the same flag, which may not be safe. Add, sub, mul, and sdiv
ConstantExprs are usually folded anyway, so the main interesting flag
here is inbounds, and the constant folder already knows how to set the
inbounds flag automatically in most cases, so there isn't an urgent need
for the API support.

This can be reconsidered in the future, but for now just removing these
API bits eliminates a source of potential trouble with little downside.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80959 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
e56a94ef91009ddb8d8b68783ff1650bcad3b326 04-Sep-2009 Dan Gohman <gohman@apple.com> Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,
and exact flags. Because ConstantExprs are uniqued, creating an
expression with this flag causes all expressions with the same operands
to have the same flag, which may not be safe. Add, sub, mul, and sdiv
ConstantExprs are usually folded anyway, so the main interesting flag
here is inbounds, and the constant folder already knows how to set the
inbounds flag automatically in most cases, so there isn't an urgent need
for the API support.

This can be reconsidered in the future, but for now just removing these
API bits eliminates a source of potential trouble with little downside.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80959 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
5a6b6b43459b875e88d598c232ddef7b805fe107 03-Sep-2009 Gabor Greif <ggreif@gmail.com> back out my recent commit (r80858), it seems to break self-hosting buildbot's stage 2 configure

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80871 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
03a5f139fb7d3e9c49fe95aea4c717fab2285d82 03-Sep-2009 Gabor Greif <ggreif@gmail.com> back out my recent commit (r80858), it seems to break self-hosting buildbot's stage 2 configure

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80871 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
fe15ce4a51f0d83bd2a0bb788af70663fc8713aa 03-Sep-2009 Gabor Greif <ggreif@gmail.com> re-commit r66920 (which has been backed out in r66953) I may have more luck this time. I'll back out if needed...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80858 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
190390b8d31af0a549827478911b322af4bc111a 03-Sep-2009 Gabor Greif <ggreif@gmail.com> re-commit r66920 (which has been backed out in r66953) I may have more luck this time. I'll back out if needed...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80858 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
56747f2521918e90a939a2db2d8c8e88f9688b89 02-Sep-2009 Dan Gohman <gohman@apple.com> Add convenience functions for reading in LLVM IR that autodetect
and LLVM Assembly and LLVM Bitcode and automatically call the
corresponding reader.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80809 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
87750fcfc8d6ace324d0a237ae7da14d120fff34 02-Sep-2009 Dan Gohman <gohman@apple.com> Add convenience functions for reading in LLVM IR that autodetect
and LLVM Assembly and LLVM Bitcode and automatically call the
corresponding reader.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80809 91177308-0d34-0410-b5e6-96231b3b80d8
RReader.h
5838baa4a8aedfd453a5b0663425979c77e4e285 02-Sep-2009 Sandeep Patel <deeppatel1987@gmail.com> Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80773 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
65c3c8f323198b99b88b109654194540cf9b3fa5 02-Sep-2009 Sandeep Patel <deeppatel1987@gmail.com> Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80773 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
8ba22dd113839d66b3f2912aff6bdd27776b1608 30-Aug-2009 Chris Lattner <sabre@nondot.org> hopefully unbreak the build by making this-> explicit for dependent
base class lookup.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80499 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
77bc60e77e864ee0748c56e9c3e532c731f0d6d1 30-Aug-2009 Chris Lattner <sabre@nondot.org> hopefully unbreak the build by making this-> explicit for dependent
base class lookup.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80499 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
42cee05a28e87ba96760daaf9699f8355ea53f6e 30-Aug-2009 Edwin Török <edwintorok@gmail.com> Add regular expression matching support, based on OpenBSD regexec()/regcomp()
implementation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80493 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
ce0c81e7dd321e9f94f628daa5528f56cab0ab88 30-Aug-2009 Torok Edwin <edwintorok@gmail.com> Add regular expression matching support, based on OpenBSD regexec()/regcomp()
implementation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80493 91177308-0d34-0410-b5e6-96231b3b80d8
egex.h
69af0ff152a949c41ea8ff4550c74627306262f7 30-Aug-2009 Chris Lattner <sabre@nondot.org> some minor cleanups to IRBuilder, factor the insertion
hook out of the main IRBuilder class to allow clients to
override it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80479 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0a9ad97b3558a7d2a8a353fa5ba23d696829c094 30-Aug-2009 Chris Lattner <sabre@nondot.org> some minor cleanups to IRBuilder, factor the insertion
hook out of the main IRBuilder class to allow clients to
override it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80479 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
15e723d2c6021bbeacad9baa9c0d946d4a19867e 29-Aug-2009 Devang Patel <dpatel@apple.com> Reapply 79977.
Use MDNodes to encode debug info in llvm IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80406 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
e4b275610a7a05b7ee4c0378a906a6330e4c4ab0 29-Aug-2009 Devang Patel <dpatel@apple.com> Reapply 79977.
Use MDNodes to encode debug info in llvm IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80406 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
a8425d44b7ffa3397ac7d010598e9caab54e1ed4 28-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add MathExtras.h OffsetToAlignment, like RoundUpToAlignment but returns the
offset to the next aligned integer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80339 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
eccf22528f8b4c21cdbd2f620cbe39dbb38ea6e1 28-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add MathExtras.h OffsetToAlignment, like RoundUpToAlignment but returns the
offset to the next aligned integer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80339 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
ab36e15e689a516f8ff2af4c2c0210a90a423652 28-Aug-2009 Gabor Greif <ggreif@gmail.com> eliminate all 80-col violations that I have introduced in my recent checkins (and some others more)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80304 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
etElementPtrTypeIterator.h
7362ce08cb2c1f0b544b18dbc21630fb4baebcfc 28-Aug-2009 Gabor Greif <ggreif@gmail.com> eliminate all 80-col violations that I have introduced in my recent checkins (and some others more)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80304 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
etElementPtrTypeIterator.h
765f012f22956a3085e1e84441af9d880bf65f35 27-Aug-2009 Gabor Greif <ggreif@gmail.com> Clean up the minor mess I caused with removing iterator.h. I shall take care of 80-col violations and the FIXME later. (Thanks goodness that I live in another continent, so the monkeypox did not strike me :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80224 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
etElementPtrTypeIterator.h
f0891be8bdbeeadb39da5575273b6645755fa383 27-Aug-2009 Gabor Greif <ggreif@gmail.com> Clean up the minor mess I caused with removing iterator.h. I shall take care of 80-col violations and the FIXME later. (Thanks goodness that I live in another continent, so the monkeypox did not strike me :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80224 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
etElementPtrTypeIterator.h
94060421ce73922e71c183fba0fda8bace7d0e2d 26-Aug-2009 Devang Patel <dpatel@apple.com> Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80073 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
824598883513789516a919651f4b35e7a638ec5c 26-Aug-2009 Devang Patel <dpatel@apple.com> Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80073 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
e6803b821738076b5b2299c1cd496be0d0042362 26-Aug-2009 Dan Gohman <gohman@apple.com> Eliminate the unused Context argument on one of the ICmpInst and FCmpInst
constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80049 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1c8a23c440b1665ba422778cdc74a0c59ecaf39e 26-Aug-2009 Dan Gohman <gohman@apple.com> Eliminate the unused Context argument on one of the ICmpInst and FCmpInst
constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80049 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
176426d2102142aaa0bf19aca55f528ceb873329 25-Aug-2009 Dan Gohman <gohman@apple.com> Make LLVM command-line tools overwrite their output files without -f.
This is conventional command-line tool behavior. -f now just means
"enable binary output on terminals".

Add a -f option to llvm-extract and llvm-link, for consistency.

Remove F_Force from raw_fd_ostream and enable overwriting and
truncating by default. Introduce an F_Excl flag to permit users to
enable a failure when the file already exists. This flag is
currently unused.

Update Makefiles and documentation accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79990 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
aw_ostream.h
baa26395ccf17fc988bb9cf62d6659ca8415ece9 25-Aug-2009 Dan Gohman <gohman@apple.com> Make LLVM command-line tools overwrite their output files without -f.
This is conventional command-line tool behavior. -f now just means
"enable binary output on terminals".

Add a -f option to llvm-extract and llvm-link, for consistency.

Remove F_Force from raw_fd_ostream and enable overwriting and
truncating by default. Introduce an F_Excl flag to permit users to
enable a failure when the file already exists. This flag is
currently unused.

Update Makefiles and documentation accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79990 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
aw_ostream.h
57b83c78f56324e3a8ff636b311235f6f2350b4e 25-Aug-2009 Devang Patel <dpatel@apple.com> Update DebugInfo interface to use metadata, instead of special named llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well.

This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79977 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
2a610c7387664bc557a35ce3bb4c0d4df56e4755 25-Aug-2009 Devang Patel <dpatel@apple.com> Update DebugInfo interface to use metadata, instead of special named llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well.

This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79977 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
7c251a8f4665895e5d8b6f8ef9eb75f6b7b49e16 24-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add MemoryBuffer::getBuffer() -> StringRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79903 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
1464869cb325e30673005a16accaf47da8b6ba1b 24-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add MemoryBuffer::getBuffer() -> StringRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79903 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
7386c7be4cb56637c175f535664853ba8c3842e8 24-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add missing include (for MSVC).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79897 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
8a719291db4cd209a7fa2b320f5f83462a2c487f 24-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add missing include (for MSVC).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79897 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
cd25ee45526a75a9b7554757be30eacc3b2d7806 24-Aug-2009 Chris Lattner <sabre@nondot.org> split raw_os_ostream out to its own header and implementation file. This
means that raw_ostream no longer has to #include <iosfwd>. Nothing in llvm
should use raw_os_ostream.h, but llvm-gcc and some unit tests do.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79886 91177308-0d34-0410-b5e6-96231b3b80d8
aw_os_ostream.h
aw_ostream.h
32e1eef631fb275c9db580d80116d1110c3ae5ee 24-Aug-2009 Chris Lattner <sabre@nondot.org> split raw_os_ostream out to its own header and implementation file. This
means that raw_ostream no longer has to #include <iosfwd>. Nothing in llvm
should use raw_os_ostream.h, but llvm-gcc and some unit tests do.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79886 91177308-0d34-0410-b5e6-96231b3b80d8
aw_os_ostream.h
aw_ostream.h
f537768f6dfcdf5f06696b0383e292cbe3c6fec1 24-Aug-2009 Chris Lattner <sabre@nondot.org> prune the #includes in raw_ostream.h by moving a
member out of line. ftostr is not particularly speedy,
so that method is presumably not perf sensitive.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79885 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
23132b188ba651ba172380cd082cc286df73d440 24-Aug-2009 Chris Lattner <sabre@nondot.org> prune the #includes in raw_ostream.h by moving a
member out of line. ftostr is not particularly speedy,
so that method is presumably not perf sensitive.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79885 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
b1aa85bcfad6245bed0a0c43adcca9efb51fcf79 24-Aug-2009 Chris Lattner <sabre@nondot.org> Prune #includes from llvm/Linker.h and llvm/System/Path.h,
forcing them down into various .cpp files.

This change also:
1. Renames TimeValue::toString() and Path::toString() to ::str()
for similarity with the STL.
2. Removes all stream insertion support for sys::Path, forcing
clients to call .str().
3. Removes a use of Config/alloca.h from bugpoint, using smallvector
instead.
4. Weans llvm-db off <iostream>

sys::Path really needs to be gutted, but I don't have the desire to
do it at this point.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79869 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
74382b7c699120fbec5cb5603c9cf4212eb37f06 24-Aug-2009 Chris Lattner <sabre@nondot.org> Prune #includes from llvm/Linker.h and llvm/System/Path.h,
forcing them down into various .cpp files.

This change also:
1. Renames TimeValue::toString() and Path::toString() to ::str()
for similarity with the STL.
2. Removes all stream insertion support for sys::Path, forcing
clients to call .str().
3. Removes a use of Config/alloca.h from bugpoint, using smallvector
instead.
4. Weans llvm-db off <iostream>

sys::Path really needs to be gutted, but I don't have the desire to
do it at this point.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79869 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
6990417f292d9f6edc4f445bbece635af88203b2 23-Aug-2009 Chris Lattner <sabre@nondot.org> llvm/Support/Streams.h is now dead, zap it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79865 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
28fb7c4a9a7ebabfd44d436028425862fbf01153 23-Aug-2009 Chris Lattner <sabre@nondot.org> llvm/Support/Streams.h is now dead, zap it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79865 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
3a71a1a5e668917661b184f2566ebcd5fefd498a 23-Aug-2009 Chris Lattner <sabre@nondot.org> eliminate the ostream version of CheckBitcodeOutputToConsole,
change the raw_ostream one to take the raw_ostream byref instead
of byptr. Prune #includes, eliminate a use of Streams.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79863 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
b683ea4712836e22b98d24bf8e40e599224d024e 23-Aug-2009 Chris Lattner <sabre@nondot.org> eliminate the ostream version of CheckBitcodeOutputToConsole,
change the raw_ostream one to take the raw_ostream byref instead
of byptr. Prune #includes, eliminate a use of Streams.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79863 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
ffbbf314f1740b9d73c5af1ad1aa3e731dac026b 23-Aug-2009 Daniel Dunbar <daniel@zuster.org> Fix off-by-one in llvm::Format::print.
- This also shortens the Format.h implementation, and uses the print buffer
fully (it was wasting a character).

- This manifested as llvm-test failures, because one side effect was that
raw_ostream would write garbage '\x00' values into the output stream if it
happened that the string was at the end of the buffer. This meant that grep
would report 'Binary file matches', which meant the silly pattern matching
llvm-test eventually does would fail. Cute. :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79862 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
9441cfe4880018a85af9710ad405d4f2e522acc2 23-Aug-2009 Daniel Dunbar <daniel@zuster.org> Fix off-by-one in llvm::Format::print.
- This also shortens the Format.h implementation, and uses the print buffer
fully (it was wasting a character).

- This manifested as llvm-test failures, because one side effect was that
raw_ostream would write garbage '\x00' values into the output stream if it
happened that the string was at the end of the buffer. This meant that grep
would report 'Binary file matches', which meant the silly pattern matching
llvm-test eventually does would fail. Cute. :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79862 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
33b2663488b0f8f188c1a6003faabd5ee89f7749 23-Aug-2009 Daniel Dunbar <daniel@zuster.org> Fix some refactos for iostream changes (in -Asserts mode).
- The world needs better C++ refactoring tools, can I get an Amen!?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79843 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
43ed267db3512823a9698f810be4e64bee227270 23-Aug-2009 Daniel Dunbar <daniel@zuster.org> Fix some refactos for iostream changes (in -Asserts mode).
- The world needs better C++ refactoring tools, can I get an Amen!?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79843 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
5febcae0d24fc09d90564a46e23645b2443f4304 23-Aug-2009 Chris Lattner <sabre@nondot.org> remove some uses of llvm/Support/Streams.h



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79842 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
d9ea85ab01fb0f2929ed50223d3758dceea8bcbd 23-Aug-2009 Chris Lattner <sabre@nondot.org> remove some uses of llvm/Support/Streams.h



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79842 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
bf9d76de710117c29a70a3cd18aca0254064aa68 23-Aug-2009 Chris Lattner <sabre@nondot.org> convert LoopInfo.h and GraphWriter.h to use raw_ostream


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79836 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
raphWriter.h
103289e9383ad1eb66caf28c9b166aebce963a35 23-Aug-2009 Chris Lattner <sabre@nondot.org> convert LoopInfo.h and GraphWriter.h to use raw_ostream


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79836 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
raphWriter.h
6851ab3214401cf40fe5579b2edc72e38c89f1b4 23-Aug-2009 Chris Lattner <sabre@nondot.org> eliminate DOUT and make Debug.h not include Streams.h anymore, woo!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79835 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
a36b81d64f90f7cc7c946080d317322c3f4e3a0f 23-Aug-2009 Chris Lattner <sabre@nondot.org> eliminate DOUT and make Debug.h not include Streams.h anymore, woo!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79835 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
397f4560780d34da0bd1e4c9b9101c6f0774e8ff 23-Aug-2009 Chris Lattner <sabre@nondot.org> Change Pass::print to take a raw ostream instead of std::ostream,
update all code that this affects.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79830 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
assNameParser.h
aw_ostream.h
45cfe545ec8177262dabc70580ce05feaa1c3880 23-Aug-2009 Chris Lattner <sabre@nondot.org> Change Pass::print to take a raw ostream instead of std::ostream,
update all code that this affects.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79830 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
assNameParser.h
aw_ostream.h
fdcd46e28ab0cc3eb975d6017ca77395214e8ad5 23-Aug-2009 Chris Lattner <sabre@nondot.org> Change raw_fd_ostream to take flags as an optional bitmask
instead of as two bools. Use this to add a F_Append flag
which has the obvious behavior.

Other unrelated changes conflated into this patch:

1. REmove EH stuff from llvm-dis and llvm-as, the try blocks
are dead.
2. Simplify the filename inference code in llvm-as/llvm-dis,
because raw_fd_ostream does the right thing with '-'.
3. Switch machine verifier to use raw_ostream instead of ostream
(Which is the thing that needed append in the first place).




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79807 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
17e9edc4a7bbeadf756494cf39fcacc9eff72202 23-Aug-2009 Chris Lattner <sabre@nondot.org> Change raw_fd_ostream to take flags as an optional bitmask
instead of as two bools. Use this to add a F_Append flag
which has the obvious behavior.

Other unrelated changes conflated into this patch:

1. REmove EH stuff from llvm-dis and llvm-as, the try blocks
are dead.
2. Simplify the filename inference code in llvm-as/llvm-dis,
because raw_fd_ostream does the right thing with '-'.
3. Switch machine verifier to use raw_ostream instead of ostream
(Which is the thing that needed append in the first place).




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79807 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
3e1a69ca0592afdcce2c05f120768bfca5b39fd2 23-Aug-2009 Chris Lattner <sabre@nondot.org> switch formattedstream to use raw_ostream::indent. This eliminates
the weird MAX_COLUMN_PAD limitation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79785 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
de51ded2fa3d8d92e821e72294a89c1310a70cc6 23-Aug-2009 Chris Lattner <sabre@nondot.org> switch formattedstream to use raw_ostream::indent. This eliminates
the weird MAX_COLUMN_PAD limitation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79785 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
b8a21d922ee13763449dc4e7ef9f36ab73efd6d0 23-Aug-2009 Chris Lattner <sabre@nondot.org> add a raw_ostream::indent method, to be used like:

OS.indent(i) << "whatever";

people seem to like indenting things ;-)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79784 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c5a227ddd1fa09cd66e4fd1c0473be5c2b4f8f32 23-Aug-2009 Chris Lattner <sabre@nondot.org> add a raw_ostream::indent method, to be used like:

OS.indent(i) << "whatever";

people seem to like indenting things ;-)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79784 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
4f2c6f1de4ca7b4f64fedc08a8b61249e2edb9d3 21-Aug-2009 Reid Kleckner <reid@kleckner.net> Fix a bug where the DWARF emitter in the JIT was not initializing alignment
bytes. libgcc doesn't seem to mind, but if you pass this DWARF to GDB, it
doesn't like it.

Also make the JIT memory manager to initialize it's memory to garbage in debug
mode, so that it's easier to find bugs like these in the future.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79674 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
01248e671100fbd6eac6bc3646096dc75ec885d1 21-Aug-2009 Reid Kleckner <reid@kleckner.net> Fix a bug where the DWARF emitter in the JIT was not initializing alignment
bytes. libgcc doesn't seem to mind, but if you pass this DWARF to GDB, it
doesn't like it.

Also make the JIT memory manager to initialize it's memory to garbage in debug
mode, so that it's easier to find bugs like these in the future.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79674 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
7970449d5bfbce225e3c88e263274ccec6324810 20-Aug-2009 Dan Gohman <gohman@apple.com> Add some comments clarifying what appear to be the intent of various
error handling mechanisms. Please correct these if I've misunderstood
something.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79505 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
583b6dbcc586359e6ea7c3e4ac46bdb708779dce 20-Aug-2009 Dan Gohman <gohman@apple.com> Add some comments clarifying what appear to be the intent of various
error handling mechanisms. Please correct these if I've misunderstood
something.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79505 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
3b0553c80f782f6c3ea9b811b61764f3e6bf54e4 20-Aug-2009 Daniel Dunbar <daniel@zuster.org> Switch IRBuilder to using Twine references for names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79482 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9d8f0042665cc9a3038deece29492b6a7813fe24 20-Aug-2009 Daniel Dunbar <daniel@zuster.org> Switch IRBuilder to using Twine references for names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79482 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
56c9286edcc59fb381452c7d88f8faf80ab1b525 19-Aug-2009 Dan Gohman <gohman@apple.com> Unbreak GetBufferSize() on uninitialized streams. This fixes a problem
that led to errs() getting made buffered.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79458 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7ab2fef792238ec467cf3351ee63b4b8c026a3dd 19-Aug-2009 Dan Gohman <gohman@apple.com> Unbreak GetBufferSize() on uninitialized streams. This fixes a problem
that led to errs() getting made buffered.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79458 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
bbaf54e529edc19a827a4939ce11955ad91e8941 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> Change raw_svector_ostream to reserve the input buffer if necessary, Ted was
right.
- This class turns out to be much more convenient to use if we do this; clients
can make sure the buffer is always big enough if they care (since our current
idiom tends to be to use a SmallString<256> for the input to this we should
generally be avoiding an unnecessary malloc).

Also, add a convenience raw_svector_ostream::str method which flushes the buffer
and returns a StringRef for the vector contents.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79446 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
d14787e49777888eb7c685c0d5803044e7b7971a 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> Change raw_svector_ostream to reserve the input buffer if necessary, Ted was
right.
- This class turns out to be much more convenient to use if we do this; clients
can make sure the buffer is always big enough if they care (since our current
idiom tends to be to use a SmallString<256> for the input to this we should
generally be avoiding an unnecessary malloc).

Also, add a convenience raw_svector_ostream::str method which flushes the buffer
and returns a StringRef for the vector contents.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79446 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7dfa741b135d49ffccf3cc03e9c6fdf43b2865f7 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> Switch raw_svector_ostream to use the vector as the ostream buffer.
- This avoids unnecessary malloc/free overhead in the common case, and
unnecessary copying from the ostream buffer into the output vector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79434 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
425d08c654c7893782b1215f9b2715bc1d90bd07 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> Switch raw_svector_ostream to use the vector as the ostream buffer.
- This avoids unnecessary malloc/free overhead in the common case, and
unnecessary copying from the ostream buffer into the output vector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79434 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
0202feebb49b283e6d0748acf526e3211070afa1 19-Aug-2009 Owen Anderson <resistor@mac.com> Reapply my less-lock-contention-in-leak-detector patch, now with new files
actually added.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79429 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
c34ebf65af0139eaf5cb0969fabcd32c0b6e1710 19-Aug-2009 Owen Anderson <resistor@mac.com> Reapply my less-lock-contention-in-leak-detector patch, now with new files
actually added.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79429 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
f7980963c2a2fe61a366711b06228ef8cf4c856a 19-Aug-2009 Owen Anderson <resistor@mac.com> Revert my last patch temporarily.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79388 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
021d664a3838b89620b3fb9d995083f1da77d451 19-Aug-2009 Owen Anderson <resistor@mac.com> Revert my last patch temporarily.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79388 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
3587bdbdb8100d8f22fa8013374cd46cb11db472 19-Aug-2009 Owen Anderson <resistor@mac.com> Privatize part of the leak detector mechanism, which turned out to be heavily contended
when trying to run opt in parallel. This lets parallel opt crunch 403.gcc in about a third
of the time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79387 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
ba43a385a817d7f59e528a744dc40e44317ec739 19-Aug-2009 Owen Anderson <resistor@mac.com> Privatize part of the leak detector mechanism, which turned out to be heavily contended
when trying to run opt in parallel. This lets parallel opt crunch 403.gcc in about a third
of the time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79387 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
d34262015dd5c0a6866ee71d73b1a50c58a461fd 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Remove pointless redefinitions of tell().
- The base class implementation is correct.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79385 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
d29d497b530a7094c808540cfdb68a7af3afd315 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Remove pointless redefinitions of tell().
- The base class implementation is correct.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79385 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
35993b39d696214d06daabe27524bafcb19e2d41 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Add the capability for subclasses to manually install an external
buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79382 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
906d5b4455c6d605ab62f26d45cad2e49bf948bb 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Add the capability for subclasses to manually install an external
buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79382 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c7513374895850b0b53196866a4da233cfaf2c4f 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Reduce FormattedStream's reliance on raw_ostream's implementation.
- Kill off begin(), end(), and iterator. It isn't clear what these
mean. Instead provide getBufferStart(), which can be used with
GetNumBytesInBuffer to the same effect.

- Update ComputeColumn to take arguments for the buffer to scan, this
simplifies the implementation of write_impl substantially.

- This should also fix possible problems with the scanning pointer pointing
outside of the current raw_ostream buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79379 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
ab810275448c34c072c47be1f16ae1d679bfd20c 19-Aug-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Reduce FormattedStream's reliance on raw_ostream's implementation.
- Kill off begin(), end(), and iterator. It isn't clear what these
mean. Instead provide getBufferStart(), which can be used with
GetNumBytesInBuffer to the same effect.

- Update ComputeColumn to take arguments for the buffer to scan, this
simplifies the implementation of write_impl substantially.

- This should also fix possible problems with the scanning pointer pointing
outside of the current raw_ostream buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79379 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
6c140bc2c8d7679100a9cae0d8efdfa13ba6c51a 18-Aug-2009 Daniel Dunbar <daniel@zuster.org> Revert r78924, disabling buffering defeats all the fast paths in raw_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79361 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
35979c021e4789b915cd569145bd9fb9ae0d8d8b 18-Aug-2009 Daniel Dunbar <daniel@zuster.org> Revert r78924, disabling buffering defeats all the fast paths in raw_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79361 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
066ed6a19998f933d53d79d7a67390cfa2907065 18-Aug-2009 David Greene <greened@obbligato.org> Make various changes suggested by Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79358 91177308-0d34-0410-b5e6-96231b3b80d8
OManip.h
fe37ab335be5632eab561d49984c95cb06b946d4 18-Aug-2009 David Greene <greened@obbligato.org> Make various changes suggested by Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79358 91177308-0d34-0410-b5e6-96231b3b80d8
OManip.h
46148950d8ca80286b88da5dffc5fefc75239778 17-Aug-2009 Chris Lattner <sabre@nondot.org> the MinPad argument to PadToColumn only really makes sense to be 1,
just remove the argument and replace it with 1.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79246 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
8f4b1ec02bbc72161a9bd9777a2996dae439c81e 17-Aug-2009 Chris Lattner <sabre@nondot.org> the MinPad argument to PadToColumn only really makes sense to be 1,
just remove the argument and replace it with 1.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79246 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
76d4275e253b758a944c0416b982505e96c0fd81 16-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Add more casts to the IRBuilder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79158 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
02904d5d848a12be0d5857fc7a25261fb162e0ed 16-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Add more casts to the IRBuilder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79158 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
7010639cfe027dd481e89e349056e5daf132f916 15-Aug-2009 Dan Gohman <gohman@apple.com> Move FormattedStream's write_impl out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79064 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
a4a68c1b439af1bacf8b9c3c06cdb97f56be4d94 15-Aug-2009 Dan Gohman <gohman@apple.com> Move FormattedStream's write_impl out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79064 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
58a43329c2a35725d7b75adc137f12e3f8813123 14-Aug-2009 Owen Anderson <resistor@mac.com> Add doxygen comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79027 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
5ee3ba2f9ed3eb1e1dc29b3406e235f4e1e40969 14-Aug-2009 Owen Anderson <resistor@mac.com> Add doxygen comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79027 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1ddb3ba4bf15db09a286ef5ebbca9bf49b0fa890 14-Aug-2009 Argiris Kirtzidis <akyrtzi@gmail.com> Revert r78424.

In order for the changes in r78424 to work properly, cast_retty<X,Y> should return an object instead of a reference, and it's not clear that this approach has real advantages.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79023 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
9a0b165cb58cb5cf49cb3a143c302029f389acb2 14-Aug-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Revert r78424.

In order for the changes in r78424 to work properly, cast_retty<X,Y> should return an object instead of a reference, and it's not clear that this approach has real advantages.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79023 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
e44b8c4b7037d0d822bb5adf4a901c9bc17c2f56 14-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> A couple IRBuilder functions were still using getGlobalContext().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78997 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
d644cb8ff5c4774af8c9c75d73c6cb7b29102809 14-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> A couple IRBuilder functions were still using getGlobalContext().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78997 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a882df59a5ceda3c6a5a8f58b9fd010b5849f9b7 14-Aug-2009 Owen Anderson <resistor@mac.com> Add helpers for fetching basic types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78969 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0668dc7955644dcf5003b5356dabf9edb847932f 14-Aug-2009 Owen Anderson <resistor@mac.com> Add helpers for fetching basic types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78969 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fc8a6b996f0741016a9e04b72f67bf73ff3ecb75 14-Aug-2009 Dan Gohman <gohman@apple.com> Make formatted_raw_ostream restore the buffer settings of the
underlying stream when it is finished, so that clients don't
have to do this manually.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78952 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
6c304f2314e5fb00488ac6bdfdac180c0ffd3d09 14-Aug-2009 Dan Gohman <gohman@apple.com> Make formatted_raw_ostream restore the buffer settings of the
underlying stream when it is finished, so that clients don't
have to do this manually.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78952 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
35b4707edb32008b1a7976dcbf3920b1160fc1c6 13-Aug-2009 Owen Anderson <resistor@mac.com> Push LLVMContexts through the IntegerType APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ypeBuilder.h
1d0be15f89cb5056e20e2d24faa8d6afb1573bca 13-Aug-2009 Owen Anderson <resistor@mac.com> Push LLVMContexts through the IntegerType APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ypeBuilder.h
30d569c3c4ce4bca2718410f7586771c2840e383 13-Aug-2009 Dan Gohman <gohman@apple.com> Set raw_os_ostream, raw_string_ostream, and raw_svector_ostream to be
unbuffered. std::ostream does its own buffering, and std::string and
SmallVector both have allocation strategies intended to handle frequent
appending.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78924 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
0ba50bb05661165f2b97f4526732f109a81100b5 13-Aug-2009 Dan Gohman <gohman@apple.com> Set raw_os_ostream, raw_string_ostream, and raw_svector_ostream to be
unbuffered. std::ostream does its own buffering, and std::string and
SmallVector both have allocation strategies intended to handle frequent
appending.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78924 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
6bd7eceded66eb7f5da54a3123a0c6e80a7d21b9 13-Aug-2009 Dan Gohman <gohman@apple.com> Add support to raw_ostream for sizing the buffer according to the
needs of the underlying output mechanism. raw_fd_ostream now uses
st_blksize from fstat to determine a buffer size.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78923 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
208ec0f32eed8874074bddf97cd04f60a772198d 13-Aug-2009 Dan Gohman <gohman@apple.com> Add support to raw_ostream for sizing the buffer according to the
needs of the underlying output mechanism. raw_fd_ostream now uses
st_blksize from fstat to determine a buffer size.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78923 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
744ee54b644163cf59fb7ad556ef25a342828921 13-Aug-2009 Dan Gohman <gohman@apple.com> Make raw_ostream non-copyable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78920 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
b3667ae9b6fb204e60d4e1def21442fbf0251f99 13-Aug-2009 Dan Gohman <gohman@apple.com> Make raw_ostream non-copyable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78920 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
48916523f53a54ce5468b133547dc25625515527 13-Aug-2009 Dan Gohman <gohman@apple.com> Move SetBufferSize and SetUnbuffered out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78909 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
524dea4d4ca6ecafa18e1e011934a2129c770f4f 13-Aug-2009 Dan Gohman <gohman@apple.com> Move SetBufferSize and SetUnbuffered out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78909 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
072828e99bb310b69349dd1c0c1701f6ff655e02 13-Aug-2009 Dan Gohman <gohman@apple.com> Fix the buffer handling logic so that write_impl is always called with
a full buffer, rather than often being called with a
slightly-less-than-full buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78907 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
33e49ef5e5dc2d3e65bcd4fc1f20874bf3847829 13-Aug-2009 Dan Gohman <gohman@apple.com> Fix the buffer handling logic so that write_impl is always called with
a full buffer, rather than often being called with a
slightly-less-than-full buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78907 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
6d896e41812d12fa2fedd49d2e62c3209d4da5a0 13-Aug-2009 Jakob Stoklund Olesen <stoklund@2pi.dk> Fix the N>=64 case in the isInt<> and isUint<> templates.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78899 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
d4c00c0f558193b492aed9ab6aacf84bf1d3fb4e 13-Aug-2009 Jakob Stoklund Olesen <stoklund@2pi.dk> Fix the N>=64 case in the isInt<> and isUint<> templates.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78899 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
3dbe9443c80ab668ad5cc8547fdb874634f25818 13-Aug-2009 Dan Gohman <gohman@apple.com> This void is implicit in C++.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78848 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
aw_ostream.h
ype_traits.h
a9ad04191cb56c42944b17980b8b2bb2afe11ab2 13-Aug-2009 Dan Gohman <gohman@apple.com> This void is implicit in C++.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78848 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
aw_ostream.h
ype_traits.h
f6fee2278045792af9042d42828f8f9bc4e6cdb9 12-Aug-2009 Dan Gohman <gohman@apple.com> Add a GetBufferSize() member to raw_ostream and use it to
simplify some formatted_raw_ostream code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78836 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
f3e488476e1bdfe9de6daddcd1cd452c9d874b56 12-Aug-2009 Dan Gohman <gohman@apple.com> Add a GetBufferSize() member to raw_ostream and use it to
simplify some formatted_raw_ostream code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78836 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
cdff21264de2f2d0ba98cdf333618c6f0e822ef9 12-Aug-2009 Dan Gohman <gohman@apple.com> Remove a bunch more now-unnecessary Context arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78809 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
atternMatch.h
4ae5126d041768ab9665cf2f11c024becd76c41f 12-Aug-2009 Dan Gohman <gohman@apple.com> Remove a bunch more now-unnecessary Context arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78809 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
atternMatch.h
314f7f71410cf75f5900c9f8fd9da626147cb864 12-Aug-2009 Jakob Stoklund Olesen <stoklund@2pi.dk> Move immediate constant predicate templates from the Blackfin target to MathExtras.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78793 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
d6eb635d1a1317fc3d218056ec77ec242c2413cb 12-Aug-2009 Jakob Stoklund Olesen <stoklund@2pi.dk> Move immediate constant predicate templates from the Blackfin target to MathExtras.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78793 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
726b55ff9e252bc10540d8dde68a50a463a123bf 11-Aug-2009 Dan Gohman <gohman@apple.com> Add convenience functions for creating nsw add operators.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78707 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
d6474fa1f19224e62e5095a6373bed0c69bdb215 11-Aug-2009 Dan Gohman <gohman@apple.com> Add convenience functions for creating nsw add operators.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78707 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
37206ab80a7dfdbf927dc1d83591680ce4765e67 11-Aug-2009 Dan Gohman <gohman@apple.com> Add convenience functions for creating inbounds GEPs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78695 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
e2574d3215c412a15763d26aee9aa5d856764c2c 11-Aug-2009 Dan Gohman <gohman@apple.com> Add convenience functions for creating inbounds GEPs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78695 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
804572246234cc9c43ceb45e0d5d2cd495e0132d 11-Aug-2009 Chris Lattner <sabre@nondot.org> add a trivial line # cache to SourceMgr to make repeated queries to
FindLineNumber much faster when in sequence.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78693 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
1d96ccc69a265435cc1fb0eafe208857290e7dd2 11-Aug-2009 Chris Lattner <sabre@nondot.org> add a trivial line # cache to SourceMgr to make repeated queries to
FindLineNumber much faster when in sequence.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78693 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
aca6b328677fe567e2e7293600aa8a724ab92219 11-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Make LLVMContext and LLVMContextImpl classes instead of structs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78690 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
12ddd409535b52a7fa5157ded9a4cedd161fedb6 11-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Make LLVMContext and LLVMContextImpl classes instead of structs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78690 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
argetFolder.h
3d36ec144725ca1c8eddaa9c3bc762b704764fe1 11-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Fix struct/class mismatch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78686 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
754bdacf4675a75031ece44aa23f82c000cd1be8 11-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Fix struct/class mismatch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78686 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
826edc531d4afce987381962c4f9c093ac73765a 11-Aug-2009 Dan Gohman <gohman@apple.com> Use isa instead of dyn_cast when the result is only converted to bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78685 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
104eac156e7be298b80280669d7d081fb32e0a65 11-Aug-2009 Dan Gohman <gohman@apple.com> Use isa instead of dyn_cast when the result is only converted to bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78685 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
d0f3a78d5b47386e37224a9d609974239e36759c 11-Aug-2009 Dan Gohman <gohman@apple.com> Add convenience functions for creating exact sdiv operators, and
use them in CreatePtrDiff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78682 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
59c4f5c2fc82af14b0f4f332709aac62921c6177 11-Aug-2009 Dan Gohman <gohman@apple.com> Add convenience functions for creating exact sdiv operators, and
use them in CreatePtrDiff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78682 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
argetFolder.h
4a77f2ab65cc1136e1df99966bbebd062199b833 11-Aug-2009 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78675 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b2d746ce6df9b6c4ceef991ffb740eac6aea8173 11-Aug-2009 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78675 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b290a121c87d8472d58c48c99e56d9e79007fe87 11-Aug-2009 Dan Gohman <gohman@apple.com> ConstantFolder and NoFolder no longer require their Context members.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78673 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
7f4151bc69e02a22862752742ad1cb637d90ded0 11-Aug-2009 Dan Gohman <gohman@apple.com> ConstantFolder and NoFolder no longer require their Context members.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78673 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
oFolder.h
6acc0b24a969c1ab5898c7256d2cc08291e25561 11-Aug-2009 Dan Gohman <gohman@apple.com> Use the default copy-ctor, copy-assignment, and destructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78670 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
3751aa559d0a020d1dba7d25d31900710a61e22c 11-Aug-2009 Dan Gohman <gohman@apple.com> Use the default copy-ctor, copy-assignment, and destructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78670 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
4c1d433b3641e3591daf1756b01d52cb9298d007 10-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Convert comments to C90-style so llvm-c can import DataTypes.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78590 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
a84b15575906b6a0e9ada7646724cc716cff1cd1 10-Aug-2009 Erick Tryzelaar <idadesub@users.sourceforge.net> Convert comments to C90-style so llvm-c can import DataTypes.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78590 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
e52fd87879c56151b6fc78b52c3aa1306f6e9af6 10-Aug-2009 David Greene <greened@obbligato.org> Add support for printing loop structure information in asm comments.
This definitely slows down asm output so put it under an -asm-exuberant
flag.

This information is useful when doing static analysis of performance
issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78567 91177308-0d34-0410-b5e6-96231b3b80d8
OManip.h
b71d1b2fe2c0673005283b48be2f37c750ce367b 10-Aug-2009 David Greene <greened@obbligato.org> Add support for printing loop structure information in asm comments.
This definitely slows down asm output so put it under an -asm-exuberant
flag.

This information is useful when doing static analysis of performance
issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78567 91177308-0d34-0410-b5e6-96231b3b80d8
OManip.h
4b5e45bff2958f4697fae79c3b09dd89f769acb1 10-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add support for a user supplied pointer argument to llvm_install_error_handler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78553 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
ca15f3d6d6c29e9cc75225730270e9ef85834a22 10-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add support for a user supplied pointer argument to llvm_install_error_handler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78553 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
8350419ba05bac1934c64c1537d3c9b935c64022 08-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add DEBUG_WITH_TYPE as a clean alternative to tweaking DEBUG_TYPE.

This:
--
#undef DEBUG_TYPE
#define DEBUG_TYPE "foo"
DEBUG(...)
#undef DEBUG_TYPE
#define DEBUG_TYPE ""
--
becomes this:
--
DEBUG_WITH_TYPE("foo", ...)
--


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78435 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
c3c9239d76e2acb01dac8c72323a0b28fadebe4b 08-Aug-2009 Daniel Dunbar <daniel@zuster.org> Add DEBUG_WITH_TYPE as a clean alternative to tweaking DEBUG_TYPE.

This:
--
#undef DEBUG_TYPE
#define DEBUG_TYPE "foo"
DEBUG(...)
#undef DEBUG_TYPE
#define DEBUG_TYPE ""
--
becomes this:
--
DEBUG_WITH_TYPE("foo", ...)
--


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78435 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
de580b52a988d695e375b9a840ca97f118eb6dfb 08-Aug-2009 Argiris Kirtzidis <akyrtzi@gmail.com> Modifications to dyn_cast/cast to make them work for objects too, instead of only pointers.

The use case is if you have a wrapper class:

class Base {
void *Ptr;
public:
Base() : Ptr(0) { }
operator bool() const { return Ptr; }
.....
}

and sub-wrappers that have exactly the same size:

class Sub : public Base {
public:
....
static bool classof(const Base*);
}

and in the code you would do:

void f(Base b) {
Sub sub = dyn_cast<Sub>(b);
if (sub) {
....
}
}



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78424 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
8b6d86df062f9402c0cde66eb6c7013afb414285 08-Aug-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Modifications to dyn_cast/cast to make them work for objects too, instead of only pointers.

The use case is if you have a wrapper class:

class Base {
void *Ptr;
public:
Base() : Ptr(0) { }
operator bool() const { return Ptr; }
.....
}

and sub-wrappers that have exactly the same size:

class Sub : public Base {
public:
....
static bool classof(const Base*);
}

and in the code you would do:

void f(Base b) {
Sub sub = dyn_cast<Sub>(b);
if (sub) {
....
}
}



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78424 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
291d66aae0d77e747b75ddd314412f1c3feacc49 07-Aug-2009 Jeffrey Yasskin <jyasskin@google.com> To catch bugs like the one fixed in
http://llvm.org/viewvc/llvm-project?view=rev&revision=78127, I'm changing the
ExecutionEngine's global mappings to hold AssertingVH<const GlobalValue>. That
way, if unregistering a mapping fails to actually unregister it, we'll get an
assert. Running the jit nightly tests didn't uncover any actual instances of
the problem.

This also uncovered the fact that AssertingVH<const X> didn't work, so I fixed
that too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78400 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
0d5bd59553375dc85ac04c81ef48ef74c9e7193e 07-Aug-2009 Jeffrey Yasskin <jyasskin@google.com> To catch bugs like the one fixed in
http://llvm.org/viewvc/llvm-project?view=rev&revision=78127, I'm changing the
ExecutionEngine's global mappings to hold AssertingVH<const GlobalValue>. That
way, if unregistering a mapping fails to actually unregister it, we'll get an
assert. Running the jit nightly tests didn't uncover any actual instances of
the problem.

This also uncovered the fact that AssertingVH<const X> didn't work, so I fixed
that too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78400 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
8e0b7b9dce24963406405260c17d0af9c6b9d77e 05-Aug-2009 Dan Gohman <gohman@apple.com> Fix FindExecutable to use sys::Path::GetMainExecutable instead of
just argv[0]. And remove the code for searching the current
working directory and for searching PATH; the point of FindExecutable
is not to find whatever version of the executable can be found by
searching around, but to find an executable that accompanies the
current executable.

Update the tools to use sys::Program::FindProgramByName when they
want PATH searching.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78240 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
197f728d49fa0cc0baa5aadb2b905fbd8c22a81e 05-Aug-2009 Dan Gohman <gohman@apple.com> Fix FindExecutable to use sys::Path::GetMainExecutable instead of
just argv[0]. And remove the code for searching the current
working directory and for searching PATH; the point of FindExecutable
is not to find whatever version of the executable can be found by
searching around, but to find an executable that accompanies the
current executable.

Update the tools to use sys::Program::FindProgramByName when they
want PATH searching.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78240 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
b217bfa3b6d0649942c4f231ca5cc5ac85c5503c 05-Aug-2009 Andrew Lenharth <alenhar2@cs.uiuc.edu> only point to dest labels if the graph has them

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78192 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
ea2381eb7143e2ba3ad37de386cabd392b6609d8 05-Aug-2009 Andrew Lenharth <andrewl@lenharth.org> only point to dest labels if the graph has them

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78192 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
b52abbc089c21a98acb85fb2496a0fdf1f7893e3 05-Aug-2009 Owen Anderson <resistor@mac.com> Factor some of the constants+context related code out into a separate header, to make LLVMContextImpl.h
not hideous. Also, fix some MSVC compile errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78115 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
48b2f3e4850cd27d54224cd42da8a160d6b95984 05-Aug-2009 Owen Anderson <resistor@mac.com> Factor some of the constants+context related code out into a separate header, to make LLVMContextImpl.h
not hideous. Also, fix some MSVC compile errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78115 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
ef40462d848f4e97bdca104da3ab4cfbd656dfed 04-Aug-2009 Douglas Gregor <doug.gregor@gmail.com> Add some type traits that are used for Clang's statically-checked
canonical types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78076 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
c7a6da6e1469100937851cc3741a36b5850e54da 04-Aug-2009 Douglas Gregor <dgregor@apple.com> Add some type traits that are used for Clang's statically-checked
canonical types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78076 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
0a17f3d8e26ed60ac1b04407759ca67de2d1ffb5 03-Aug-2009 Daniel Dunbar <daniel@zuster.org> Fix some comments referring to std::cerr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77931 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
275872e79950dafc6699f6502cee52f74b84a22a 03-Aug-2009 Daniel Dunbar <daniel@zuster.org> Fix some comments referring to std::cerr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77931 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9164c67e154c20495cf881c19fa67d86baabeb5b 02-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Remove duplicated colons and spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77892 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
e6864c1d355c4ec1156b956c1dd548682ad3e6b1 02-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Remove duplicated colons and spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77892 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a6ed247aeea58cc79d9b8c2b5b505acb669445fb 01-Aug-2009 Dan Gohman <gohman@apple.com> Use the default copy ctor and copy-assignment operators.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77793 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7aeff084a4c452ad9cbe510d7b999782b12378e3 01-Aug-2009 Dan Gohman <gohman@apple.com> Use the default copy ctor and copy-assignment operators.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77793 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
aac2837c17cafaf4ff6487a54bab42e6618b5945 31-Jul-2009 Owen Anderson <resistor@mac.com> Move a few more APIs back to 2.5 forms. The only remaining ones left to change back are
metadata related, which I'm waiting on to avoid conflicting with Devang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77721 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a7235ea7245028a0723e8ab7fd011386b3900777 31-Jul-2009 Owen Anderson <resistor@mac.com> Move a few more APIs back to 2.5 forms. The only remaining ones left to change back are
metadata related, which I'm waiting on to avoid conflicting with Devang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77721 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
6e0ffed0fe15bcf041218ebff2a4de33a915aed4 31-Jul-2009 Dan Gohman <gohman@apple.com> Remove Annotation.h, which is no longer used in the LLVM tree.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77706 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
5e5337a833c36b069723ff864c873a1ba4883b99 31-Jul-2009 Dan Gohman <gohman@apple.com> Remove Annotation.h, which is no longer used in the LLVM tree.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77706 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
1c068e44ef5eec070a51dbd7e9e4133ab92d09b0 31-Jul-2009 Dan Gohman <gohman@apple.com> Teach ValueHandleBase to treat DenseMap's special Empty and Tombstone
values the same way it treats null pointers. This is needed to allow
CallbackVH to be used as a key in a DenseMap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77695 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
29384efb76a85e84f87c9bf898262d7f1069c38c 31-Jul-2009 Dan Gohman <gohman@apple.com> Teach ValueHandleBase to treat DenseMap's special Empty and Tombstone
values the same way it treats null pointers. This is needed to allow
CallbackVH to be used as a key in a DenseMap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77695 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
b99ecca4954cbc3fbff77ffb252952cc19c4d799 31-Jul-2009 Owen Anderson <resistor@mac.com> Move more code back to 2.5 APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77635 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9e9a0d5fc26878e51a58a8b57900fcbf952c2691 31-Jul-2009 Owen Anderson <resistor@mac.com> Move more code back to 2.5 APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77635 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ea9b9d36d6a67f9967d2af6c6ee70685f23b65af 30-Jul-2009 Daniel Dunbar <daniel@zuster.org> Add raw_ostream::write_hex


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77614 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
48018e08f0d47331e72e5dcfcde2173217091b0e 30-Jul-2009 Daniel Dunbar <daniel@zuster.org> Add raw_ostream::write_hex


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77614 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
4f9bd19d952be34ed57584ffeff3df52d7f667b5 30-Jul-2009 Devang Patel <dpatel@apple.com> Fix comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77603 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
e8b3e02dce297304389ef7dffae818943d07d640 30-Jul-2009 Devang Patel <dpatel@apple.com> Fix comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77603 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
6b6e2d9392782724c48110bcca4bee2c8fbbd7b9 30-Jul-2009 Owen Anderson <resistor@mac.com> Move types back to the 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77516 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
debcb01b0f0a15f568ca69e8f288fade4bfc7297 30-Jul-2009 Owen Anderson <resistor@mac.com> Move types back to the 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77516 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
02b48c3be2112c64d8fc9cf5419c9c8d4ec30b71 29-Jul-2009 Owen Anderson <resistor@mac.com> Move ConstantExpr to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77494 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
atternMatch.h
argetFolder.h
baf3c404409d5e47b13984a7f95bfbd6d1f2e79e 29-Jul-2009 Owen Anderson <resistor@mac.com> Move ConstantExpr to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77494 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
atternMatch.h
argetFolder.h
3a87597cb3b59c9188734b6628db63e3ae603a04 29-Jul-2009 David Greene <greened@obbligato.org> Re-apply previous changes and improve column padding performance some more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77461 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
eb85728970c6152842577658ac2c5d2ff3a98b13 29-Jul-2009 David Greene <greened@obbligato.org> Re-apply previous changes and improve column padding performance some more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77461 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
55055dc83dca6560a9ef969b4db8047444c9f2aa 29-Jul-2009 Daniel Dunbar <daniel@zuster.org> Revert r77397, it causes significant regressions in llc performance.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77425 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
95db93caa1130725123eb50479d0c51c09e8a2f4 29-Jul-2009 Daniel Dunbar <daniel@zuster.org> Revert r77397, it causes significant regressions in llc performance.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77425 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
b4ccc9468003c9b910519e71eab04738c2a423c9 29-Jul-2009 David Greene <greened@obbligato.org> Improve performance of PadToColumn by eliminating flushes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77397 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
7aaad71722aeb26f14c8523ee55df91e38837a02 29-Jul-2009 David Greene <greened@obbligato.org> Improve performance of PadToColumn by eliminating flushes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77397 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
1eeb628e443853598c75caaa80c9b9de64590a11 29-Jul-2009 David Greene <greened@obbligato.org> Add some protected interfaces to allow subclass access to the buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77395 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
fd29440c07f195d7c059efeb50fe0c5905d88b3b 29-Jul-2009 David Greene <greened@obbligato.org> Add some protected interfaces to allow subclass access to the buffer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77395 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7b4f9f8b74cd8f8d476787763ea02030762b00e7 28-Jul-2009 Owen Anderson <resistor@mac.com> Change ConstantArray to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77347 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1fd7096407d5e598ed3366a1141548e71273f1c5 28-Jul-2009 Owen Anderson <resistor@mac.com> Change ConstantArray to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77347 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
47b6995970bdd44fc0d8e4a4158efa57a510c328 28-Jul-2009 Stefanus Du Toit <stefanus.dutoit@rapidmind.com> Include cmath/math.h in DataTypes.h regardless of whether MSVC is being used.

Fixes MSVC build of LiveInterval.cpp.

Patch by Nicolas Capens.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77317 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
9b97fc785b5a925966c70919c2ee2889f4beff7e 28-Jul-2009 Stefanus Du Toit <stefanus.dutoit@rapidmind.com> Include cmath/math.h in DataTypes.h regardless of whether MSVC is being used.

Fixes MSVC build of LiveInterval.cpp.

Patch by Nicolas Capens.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77317 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
ataTypes.h.in
7f4a9dd8d3ea5c391465f06d0bdb46ce15103bb3 27-Jul-2009 Dan Gohman <gohman@apple.com> Make raw_null_ostream flush its buffer in its destructor, so that
it conforms to the assertion added in r77245. This fixes a failure
in qa_override.c in clang's testsuite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77255 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
f78c835faa97a6f5c8021923c05f7514a550619f 27-Jul-2009 Dan Gohman <gohman@apple.com> Make raw_null_ostream flush its buffer in its destructor, so that
it conforms to the assertion added in r77245. This fixes a failure
in qa_override.c in clang's testsuite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77255 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
d363a0e9b128db489f429405944607e672a7d92c 27-Jul-2009 Owen Anderson <resistor@mac.com> Move ConstantFP construction back to the 2.5-ish API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77247 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
6f83c9c6ef0e7f79825a0a8f22941815e4b684c7 27-Jul-2009 Owen Anderson <resistor@mac.com> Move ConstantFP construction back to the 2.5-ish API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77247 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
c84ae881650c9e38040830899a40cfd612138859 27-Jul-2009 Sean Callanan <scallanan@apple.com> Thanks, Bill!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77240 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
1abcfce7169f5377b38775c018d724017e224fae 27-Jul-2009 Sean Callanan <scallanan@apple.com> Thanks, Bill!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77240 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
69ec0e2c7dad9d8de1e7e6f30a428ce7d4465b1a 27-Jul-2009 Sean Callanan <scallanan@apple.com> Many of Daniel's fixes.

I'm returning the number of bytes actually copied so that the client has some
warning when it reads past the end of the buffer.

I'm keeping the distinction between getByte() and getBytes() for now for
subclasses that use functions like ptrace() on Linux and only have a restricted
interface. This makes their implementation easier, and subclasses can always
write a one-line implementation of readByte() that uses their custom
readBytes().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77225 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
e91ea06dff293e7fe001329efebcdb33a6d105da 27-Jul-2009 Sean Callanan <scallanan@apple.com> Many of Daniel's fixes.

I'm returning the number of bytes actually copied so that the client has some
warning when it reads past the end of the buffer.

I'm keeping the distinction between getByte() and getBytes() for now for
subclasses that use functions like ptrace() on Linux and only have a restricted
interface. This makes their implementation easier, and subclasses can always
write a one-line implementation of readByte() that uses their custom
readBytes().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77225 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
51d5234254d2b068b0b261a3597685d2251e30f5 25-Jul-2009 Dan Gohman <gohman@apple.com> Remove spurious semicolons.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77077 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
996b9d6aa9864c24178891adf29eeafd3f34d90c 25-Jul-2009 Dan Gohman <gohman@apple.com> Remove spurious semicolons.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77077 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1ba3687e0e8526294fec1bcacade62e64b08422d 25-Jul-2009 Eric Christopher <echristo@apple.com> Move ExtractElementInst to ::Create instead of new. Update all uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77044 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a3500da5592aee83675d6714d4f1e9d5ad96d1f2 25-Jul-2009 Eric Christopher <echristo@apple.com> Move ExtractElementInst to ::Create instead of new. Update all uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77044 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
63b61129023303d6320f8d5fdf9bc83347e85e6e 25-Jul-2009 Sean Callanan <scallanan@apple.com> MemoryObject - Abstract base class for contiguous addressable memory.
Necessary for cases in which the memory is in another process, in a
file, or on a remote machine.

The primary use for this is the llvm-mc disassemblers, so that they
can be targeted at arbitrary objects, not just in-process memory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77023 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
4711326d60251e9394192032e6646fff0d113eee 25-Jul-2009 Sean Callanan <scallanan@apple.com> MemoryObject - Abstract base class for contiguous addressable memory.
Necessary for cases in which the memory is in another process, in a
file, or on a remote machine.

The primary use for this is the llvm-mc disassemblers, so that they
can be targeted at arbitrary objects, not just in-process memory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77023 91177308-0d34-0410-b5e6-96231b3b80d8
emoryObject.h
eacb44d0bb89c608c4465b7900eea3afc0f0be0d 25-Jul-2009 Owen Anderson <resistor@mac.com> Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types. More to come.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77011 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
eed707b1e6097aac2bb6b3d47271f6300ace7f2e 25-Jul-2009 Owen Anderson <resistor@mac.com> Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types. More to come.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77011 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
7e18b650e9ee29c3ba75f932f5c0e82f74caeb6f 24-Jul-2009 Daniel Dunbar <daniel@zuster.org> Allow llvm_report_error to accept a Twine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76961 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
82a29b6a02324e65847ed99bae84dafb2755ea32 24-Jul-2009 Daniel Dunbar <daniel@zuster.org> Allow llvm_report_error to accept a Twine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76961 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
bf9a67a9bfb84f77cca3ab81babd8d5cce4aa154 24-Jul-2009 David Greene <greened@obbligato.org> Write space padding as one string to speed up comment printing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76910 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
ed0e2adc7076365596ee3d26d5ba5240ce13f23d 24-Jul-2009 David Greene <greened@obbligato.org> Write space padding as one string to speed up comment printing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76910 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
f147a5b2310d62860021367b5cd1b74fe6439ef8 23-Jul-2009 Duncan Sands <baldrick@free.fr> Fix PR4614: the Intel C compiler defines _GNUC__
but does not provide __builtin_bswap32/64.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76896 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
17e4aa7d0a0aa67a115da82319534f9e425d960a 23-Jul-2009 Duncan Sands <baldrick@free.fr> Fix PR4614: the Intel C compiler defines _GNUC__
but does not provide __builtin_bswap32/64.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76896 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
f913d705459bb8d04c7d167d20006ab86f588da1 23-Jul-2009 Reid Kleckner <reid@kleckner.net> Re-committing changes from r76825 to BumpPtrAllocator with a fix and tests for
an off-by-one error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76891 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
8f51a62b41a425f7fe262ff20cee835129ecc072 23-Jul-2009 Reid Kleckner <reid@kleckner.net> Re-committing changes from r76825 to BumpPtrAllocator with a fix and tests for
an off-by-one error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76891 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
4d10add69d4b366dacaa7bb0ceb7db4ac61b4d3d 23-Jul-2009 Daniel Dunbar <daniel@zuster.org> Convert StringMap to using StringRef for its APIs.
- Yay for '-'s and simplifications!

- I kept StringMap::GetOrCreateValue for compatibility purposes, this can
eventually go away. Likewise the StringMapEntry Create functions still follow
the old style.

- NIFC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76888 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
6316fbcb04af00fe76b6526fab09f51484014b3e 23-Jul-2009 Daniel Dunbar <daniel@zuster.org> Convert StringMap to using StringRef for its APIs.
- Yay for '-'s and simplifications!

- I kept StringMap::GetOrCreateValue for compatibility purposes, this can
eventually go away. Likewise the StringMapEntry Create functions still follow
the old style.

- NIFC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76888 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
00cc87ae631c0b3908e607b215c1f5bda3b339ce 23-Jul-2009 Andrew Lenharth <alenhar2@cs.uiuc.edu> emit simple node was using different labels for fields than the rest of the graph writter

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76879 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
787b0db33c0aed66e74ec826809f8ff2fa174349 23-Jul-2009 Andrew Lenharth <andrewl@lenharth.org> emit simple node was using different labels for fields than the rest of the graph writter

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76879 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
53927e42de07e9a0c22a5aed4ab8404db41c235a 23-Jul-2009 Reid Kleckner <reid@kleckner.net> Reverting r76825 and r76828, since they caused clang runtime errors and some build failure involving memset.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76838 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
4bf370698a456bcc96d26184785eb4f5fab396f2 23-Jul-2009 Reid Kleckner <reid@kleckner.net> Reverting r76825 and r76828, since they caused clang runtime errors and some build failure involving memset.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76838 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
e672dc2856f6334d4d218e260e3aae04ab97909c 23-Jul-2009 Reid Kleckner <reid@kleckner.net> Parameterize the BumpPtrAllocator over a slab allocator. It defaults to using
malloc, so there should be no functional changes to other code.

These changes are necessary since I have plans to use this allocator in the JIT
memory manager, and it needs a special allocator.

I also added some tests which helped me pinpoint some bugs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76825 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
95eb3ad353460c6987a9d1e03a3e3e12c75b4059 23-Jul-2009 Reid Kleckner <reid@kleckner.net> Parameterize the BumpPtrAllocator over a slab allocator. It defaults to using
malloc, so there should be no functional changes to other code.

These changes are necessary since I have plans to use this allocator in the JIT
memory manager, and it needs a special allocator.

I also added some tests which helped me pinpoint some bugs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76825 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
3fb536bde6f584edf5202eb96ccdd69442882b95 22-Jul-2009 Daniel Dunbar <daniel@zuster.org> Support writing a StringRef to a raw_ostream directly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76754 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
dbe77cfa0bcae10d91fbdbf118a97ec212afc88e 22-Jul-2009 Daniel Dunbar <daniel@zuster.org> Support writing a StringRef to a raw_ostream directly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76754 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
f1fcae74236725c49a89b37650b70d576de4311f 22-Jul-2009 Eli Friedman <eli.friedman@gmail.com> Attempt to fix BuildBot breakage with MSVC.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76722 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
1126038436feef10620baa9f1528ad5c3c61fd4f 22-Jul-2009 Eli Friedman <eli.friedman@gmail.com> Attempt to fix BuildBot breakage with MSVC.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76722 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
175b6540352920afd47979cecb8c2667a3f7fdd3 22-Jul-2009 Owen Anderson <resistor@mac.com> Get rid of the Pass+Context magic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
argetFolder.h
e922c0201916e0b980ab3cfe91e1413e68d55647 22-Jul-2009 Owen Anderson <resistor@mac.com> Get rid of the Pass+Context magic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
argetFolder.h
3f1d2c3a512eacb997c35e6f1277549b31c892cb 21-Jul-2009 Chris Lattner <sabre@nondot.org> revert r76602, 76603, and r76615, pending design discussions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76646 91177308-0d34-0410-b5e6-96231b3b80d8
ump.h
3380d5c4aaafc3d78d32f583d685d64a67ae5224 21-Jul-2009 Chris Lattner <sabre@nondot.org> revert r76602, 76603, and r76615, pending design discussions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76646 91177308-0d34-0410-b5e6-96231b3b80d8
ump.h
8523046f097df6e65d188ca942bdb2ad66071453 21-Jul-2009 David Greene <greened@obbligato.org> Add a small utility class to configure IR printers. This will allow
printers to do neat and wonderful things when printing debug
information. The ideas is to allow passes to configer printers to emit
pass-specific information when dumping IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76602 91177308-0d34-0410-b5e6-96231b3b80d8
ump.h
20574a913e76a1f2f2bab1ba5d3973179a7daf77 21-Jul-2009 David Greene <greened@obbligato.org> Add a small utility class to configure IR printers. This will allow
printers to do neat and wonderful things when printing debug
information. The ideas is to allow passes to configer printers to emit
pass-specific information when dumping IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76602 91177308-0d34-0410-b5e6-96231b3b80d8
ump.h
e469911c38df4fa5da32770a3b916ee6af27c1b6 20-Jul-2009 Bill Wendling <isanbard@gmail.com> Rename Mangler linkage enums to something less gross.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76456 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
5c0ba804c02777c53c0842d0be2d16d1d92b9a46 20-Jul-2009 Bill Wendling <isanbard@gmail.com> Rename Mangler linkage enums to something less gross.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76456 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
7c0f5deba0f9ebaef9bf1a7f75cc5c2d3785cb40 20-Jul-2009 Daniel Dunbar <daniel@zuster.org> Fix comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76427 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
d3eb106dfacda206b8651d1c39f5a26fc7be09a8 20-Jul-2009 Daniel Dunbar <daniel@zuster.org> Fix comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76427 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
e628e056c4737e43812fbbef4d9e78508eeb5a5a 20-Jul-2009 David Greene <greened@obbligato.org> Hide the DOUT static variable behind a function interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76425 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
3c9509f82a8ddc04f233587397e6c0d787694fab 20-Jul-2009 David Greene <greened@obbligato.org> Hide the DOUT static variable behind a function interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76425 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
41a0785fdd228e1563e606f650cef9b3617ab29e 20-Jul-2009 Bill Wendling <isanbard@gmail.com> Add plumbing for the `linker_private' linkage type. This type is meant for
"private" symbols which the assember shouldn't strip, but which the linker may
remove after evaluation. This is mostly useful for Objective-C metadata.

This is plumbing, so we don't have a use of it yet. More to come, etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76385 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
3d10a5a75794356a0a568ce283713adc3a963200 20-Jul-2009 Bill Wendling <isanbard@gmail.com> Add plumbing for the `linker_private' linkage type. This type is meant for
"private" symbols which the assember shouldn't strip, but which the linker may
remove after evaluation. This is mostly useful for Objective-C metadata.

This is plumbing, so we don't have a use of it yet. More to come, etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76385 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
50695f139ae372c9949dfddce603c83f49377b99 18-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Replace intersectWith with maximalIntersectWith. The latter guarantees that
all values belonging to the intersection will belong to the resulting range.
The former was inconsistent about that point (either way is fine, just pick
one.) This is part of PR4545.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76289 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
3a4a884c1618d94202ee714ea5c899cd80d1c536 18-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Replace intersectWith with maximalIntersectWith. The latter guarantees that
all values belonging to the intersection will belong to the resulting range.
The former was inconsistent about that point (either way is fine, just pick
one.) This is part of PR4545.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76289 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
fd377bda1d9295c4b54cae8fe38446ba7542c6f7 17-Jul-2009 David Greene <greened@obbligato.org> Make DOUT an lvalue in release mode so that developers may use DOUT in
their code in release mode. This helps to debug release-mode problems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76182 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
502424616751e31079308df9b44fc0180507039d 17-Jul-2009 David Greene <greened@obbligato.org> Make DOUT an lvalue in release mode so that developers may use DOUT in
their code in release mode. This helps to debug release-mode problems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76182 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
aa661bce176475201a61c1e21672fd4d67722965 16-Jul-2009 Daniel Dunbar <daniel@zuster.org> Add raw_null_ostream and llvm::nulls(), a raw_ostream that discards output.
- No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76103 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
34ccf037fea3d83dcb18f72496775ec4c7dcd3d3 16-Jul-2009 Daniel Dunbar <daniel@zuster.org> Add raw_null_ostream and llvm::nulls(), a raw_ostream that discards output.
- No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76103 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
8ad296e39b8b51cd15ea1bfdad0993769762265d 16-Jul-2009 Jeffrey Yasskin <jyasskin@google.com> Add line numbers to OProfile. To do this, I added a processDebugLoc()
call to the MachineCodeEmitter interface and made copying the start
line of a function not conditional on whether we're emitting Dwarf
debug information. I'll propagate the processDebugLoc() calls to the
non-X86 targets in a followup patch.

In the long run, it'll probably be better to gather this information
through the DwarfWriter, but the DwarfWriter currently depends on the
AsmPrinter and TargetAsmInfo, and fixing that would be out of the way
for this patch.

There's a bug in OProfile 0.9.4 that makes it ignore line numbers for
addresses above 4G, and a patch fixing it at
http://thread.gmane.org/gmane.linux.oprofile/7634

Sample output:

$ sudo opcontrol --reset; sudo opcontrol --start-daemon; sudo opcontrol --start; `pwd`/Debug/bin/lli fib.bc; sudo opcontrol --stop
Signalling daemon... done
Profiler running.
fib(40) == 165580141
Stopping profiling.

$ opreport -g -d -l `pwd`/Debug/bin/lli|head -60
Overflow stats not available
CPU: Core 2, speed 1998 MHz (estimated)
Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 100000
vma samples % linenr info image name symbol name
00007f67a30370b0 25489 61.2554 fib.c:24 10946.jo fib_left
00007f67a30370b0 1634 6.4106 fib.c:24
00007f67a30370b1 83 0.3256 fib.c:24
00007f67a30370b9 1997 7.8348 fib.c:24
00007f67a30370c6 2080 8.1604 fib.c:27
00007f67a30370c8 988 3.8762 fib.c:27
00007f67a30370cd 1315 5.1591 fib.c:27
00007f67a30370cf 251 0.9847 fib.c:27
00007f67a30370d3 1191 4.6726 fib.c:27
00007f67a30370d6 975 3.8252 fib.c:27
00007f67a30370db 1010 3.9625 fib.c:27
00007f67a30370dd 242 0.9494 fib.c:27
00007f67a30370e1 2782 10.9145 fib.c:28
00007f67a30370e5 3768 14.7828 fib.c:28
00007f67a30370eb 615 2.4128 (no location information)
00007f67a30370f3 6558 25.7287 (no location information)
00007f67a3037100 15603 37.4973 fib.c:29 10946.jo fib_right
00007f67a3037100 1646 10.5493 fib.c:29
00007f67a3037101 45 0.2884 fib.c:29
00007f67a3037109 2372 15.2022 fib.c:29
00007f67a3037116 2234 14.3178 fib.c:32
00007f67a3037118 612 3.9223 fib.c:32
00007f67a303711d 622 3.9864 fib.c:32
00007f67a303711f 385 2.4675 fib.c:32
00007f67a3037123 404 2.5892 fib.c:32
00007f67a3037126 634 4.0633 fib.c:32
00007f67a303712b 870 5.5759 fib.c:32
00007f67a303712d 62 0.3974 fib.c:32
00007f67a3037131 1848 11.8439 fib.c:33
00007f67a3037135 2840 18.2016 fib.c:33
00007f67a303713a 1 0.0064 fib.c:33
00007f67a303713b 1023 6.5564 (no location information)
00007f67a3037143 5 0.0320 (no location information)
000000000080c1e4 15 0.0360 MachineOperand.h:150 lli llvm::MachineOperand::isReg() const
000000000080c1e4 6 40.0000 MachineOperand.h:150
000000000080c1ec 2 13.3333 MachineOperand.h:150
...



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76102 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
32360a7e21a4454aa7014992213823fb4319905a 16-Jul-2009 Jeffrey Yasskin <jyasskin@google.com> Add line numbers to OProfile. To do this, I added a processDebugLoc()
call to the MachineCodeEmitter interface and made copying the start
line of a function not conditional on whether we're emitting Dwarf
debug information. I'll propagate the processDebugLoc() calls to the
non-X86 targets in a followup patch.

In the long run, it'll probably be better to gather this information
through the DwarfWriter, but the DwarfWriter currently depends on the
AsmPrinter and TargetAsmInfo, and fixing that would be out of the way
for this patch.

There's a bug in OProfile 0.9.4 that makes it ignore line numbers for
addresses above 4G, and a patch fixing it at
http://thread.gmane.org/gmane.linux.oprofile/7634

Sample output:

$ sudo opcontrol --reset; sudo opcontrol --start-daemon; sudo opcontrol --start; `pwd`/Debug/bin/lli fib.bc; sudo opcontrol --stop
Signalling daemon... done
Profiler running.
fib(40) == 165580141
Stopping profiling.

$ opreport -g -d -l `pwd`/Debug/bin/lli|head -60
Overflow stats not available
CPU: Core 2, speed 1998 MHz (estimated)
Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 100000
vma samples % linenr info image name symbol name
00007f67a30370b0 25489 61.2554 fib.c:24 10946.jo fib_left
00007f67a30370b0 1634 6.4106 fib.c:24
00007f67a30370b1 83 0.3256 fib.c:24
00007f67a30370b9 1997 7.8348 fib.c:24
00007f67a30370c6 2080 8.1604 fib.c:27
00007f67a30370c8 988 3.8762 fib.c:27
00007f67a30370cd 1315 5.1591 fib.c:27
00007f67a30370cf 251 0.9847 fib.c:27
00007f67a30370d3 1191 4.6726 fib.c:27
00007f67a30370d6 975 3.8252 fib.c:27
00007f67a30370db 1010 3.9625 fib.c:27
00007f67a30370dd 242 0.9494 fib.c:27
00007f67a30370e1 2782 10.9145 fib.c:28
00007f67a30370e5 3768 14.7828 fib.c:28
00007f67a30370eb 615 2.4128 (no location information)
00007f67a30370f3 6558 25.7287 (no location information)
00007f67a3037100 15603 37.4973 fib.c:29 10946.jo fib_right
00007f67a3037100 1646 10.5493 fib.c:29
00007f67a3037101 45 0.2884 fib.c:29
00007f67a3037109 2372 15.2022 fib.c:29
00007f67a3037116 2234 14.3178 fib.c:32
00007f67a3037118 612 3.9223 fib.c:32
00007f67a303711d 622 3.9864 fib.c:32
00007f67a303711f 385 2.4675 fib.c:32
00007f67a3037123 404 2.5892 fib.c:32
00007f67a3037126 634 4.0633 fib.c:32
00007f67a303712b 870 5.5759 fib.c:32
00007f67a303712d 62 0.3974 fib.c:32
00007f67a3037131 1848 11.8439 fib.c:33
00007f67a3037135 2840 18.2016 fib.c:33
00007f67a303713a 1 0.0064 fib.c:33
00007f67a303713b 1023 6.5564 (no location information)
00007f67a3037143 5 0.0320 (no location information)
000000000080c1e4 15 0.0360 MachineOperand.h:150 lli llvm::MachineOperand::isReg() const
000000000080c1e4 6 40.0000 MachineOperand.h:150
000000000080c1ec 2 13.3333 MachineOperand.h:150
...



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76102 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
4d2b7f46703dbe517a6cd931ed047533ff0af3cd 16-Jul-2009 Dan Gohman <gohman@apple.com> Use setStream infomatted_raw_ostream's constructor, to reduce code
duplication. Also, make setStream honor the old DeleteStream flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76075 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
6d53f55291c8541a508a8c26d847b942196f6f1c 16-Jul-2009 Dan Gohman <gohman@apple.com> Use setStream infomatted_raw_ostream's constructor, to reduce code
duplication. Also, make setStream honor the old DeleteStream flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76075 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
ea87f79e9bc085b97790d850a74cf675c7c18fc5 16-Jul-2009 Dan Gohman <gohman@apple.com> Remove inapplicable comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76074 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
3724b482589af30978f39b50685ef5432863763b 16-Jul-2009 Dan Gohman <gohman@apple.com> Remove inapplicable comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76074 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
8c0df76c681ddcd4995cd8ef3c8f1f565cfdef1b 16-Jul-2009 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76073 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
2a993f2cc44dc1113d67df03562866eb65337ff1 16-Jul-2009 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76073 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
75ffec079e1730e42dc37c9f6fe36f9ef15668dd 16-Jul-2009 Dan Gohman <gohman@apple.com> Use size_t.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76069 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
ad60f660c6fd1999a3e21823128d37aca62e9285 16-Jul-2009 Dan Gohman <gohman@apple.com> Use size_t.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76069 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
7c590a1e7a8eb961182de90555ac5fabe9791576 16-Jul-2009 Chris Lattner <sabre@nondot.org> add a knob to turn off PrettyStackTrace globally. Patch by Zoltan
Varga!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75897 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
90bb3f3706cdf4e26df5e2c977d9232ba7b89c4e 16-Jul-2009 Chris Lattner <sabre@nondot.org> add a knob to turn off PrettyStackTrace globally. Patch by Zoltan
Varga!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75897 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
ecbc438ac0dc7ca54ce1509e6d19bbfd577aaef6 16-Jul-2009 Dan Gohman <gohman@apple.com> formatted_raw_ostream both is-a raw_ostream and has-a raw_ostream. This
means that two separate raw_ostreams are doing buffering before data is
sent to the underlying stream. Besides the inefficiency of redundant
buffering, the second level of buffering doesn't recieve flush()
requests.

Fix this by having formatted_raw_ostream set the underlying raw_ostream
to be unbuffered. This eliminates inefficiency due to redundant buffering,
and it makes the flush() disconnect harmless.

This fixes PR4559.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75883 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
0e0979ecdaabcc78752f8a18f0a092a84f07a057 16-Jul-2009 Dan Gohman <gohman@apple.com> formatted_raw_ostream both is-a raw_ostream and has-a raw_ostream. This
means that two separate raw_ostreams are doing buffering before data is
sent to the underlying stream. Besides the inefficiency of redundant
buffering, the second level of buffering doesn't recieve flush()
requests.

Fix this by having formatted_raw_ostream set the underlying raw_ostream
to be unbuffered. This eliminates inefficiency due to redundant buffering,
and it makes the flush() disconnect harmless.

This fixes PR4559.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75883 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
140166dfcd14dc05ebca646f41d1dfe155718182 16-Jul-2009 Owen Anderson <resistor@mac.com> Revert yesterday's change by removing the LLVMContext parameter to AllocaInst and MallocInst.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75863 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
50dead06ffc107edb7e84857baaeeb09039c631c 16-Jul-2009 Owen Anderson <resistor@mac.com> Revert yesterday's change by removing the LLVMContext parameter to AllocaInst and MallocInst.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75863 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fea4260990ebf14b6bd1ff44e4dc96bdf275d1ca 16-Jul-2009 Dan Gohman <gohman@apple.com> Change raw_ostream so that it doesn't call llvm_report_error
immediately on every output error. Instead, add a flag to
raw_ostream, and set the flag whenever an error is detected.

The flag can be queried and cleared from the public API. This
gives applications more flexibility to handling errors in
application-specific ways.

If the flag is not cleared when the raw_ostream is destructed,
llvm_report_error is called from the destructor. This ensures
that errors are not implicitly silenced, and provides
convenient default behavior for tools like llc and opt.
Clients wishing to avoid llvm_report_error calls from
raw_ostream should check for errors and clear the error flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75857 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e87b2abe91fc44bb9875188d80e3a43a9dfc41eb 16-Jul-2009 Dan Gohman <gohman@apple.com> Change raw_ostream so that it doesn't call llvm_report_error
immediately on every output error. Instead, add a flag to
raw_ostream, and set the flag whenever an error is detected.

The flag can be queried and cleared from the public API. This
gives applications more flexibility to handling errors in
application-specific ways.

If the flag is not cleared when the raw_ostream is destructed,
llvm_report_error is called from the destructor. This ensures
that errors are not implicitly silenced, and provides
convenient default behavior for tools like llc and opt.
Clients wishing to avoid llvm_report_error calls from
raw_ostream should check for errors and clear the error flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75857 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
8cb147af43855eab2509ad7b3562e87d1f742608 16-Jul-2009 Bob Wilson <bob.wilson@apple.com> Clean up some comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75851 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
bb2ead6e5f1f901b25cf79b7a8752dce3cfd5c23 16-Jul-2009 Bob Wilson <bob.wilson@apple.com> Clean up some comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75851 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
d0848ad3f87fda750c81e9b4f2ad6d75e4f710d0 15-Jul-2009 Dan Gohman <gohman@apple.com> Fix a thinko in a comment that Duncan spotted.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75803 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1f5c5b989c20e416fcf26633e342cdfb68dab1bd 15-Jul-2009 Dan Gohman <gohman@apple.com> Fix a thinko in a comment that Duncan spotted.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75803 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
dd7ca8e84383d40fc4f98e7b3fa6608b74225fa3 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a Force option to raw_fd_ostream to specify whether opening
an existing file is considered an error. Convert several tools
to use raw_fd_ostream instead of std::ostream, and to use this
new option instead of doing a manual check.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75801 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
a1bdcedc3879510a874d24c450e07feb170d9cd6 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a Force option to raw_fd_ostream to specify whether opening
an existing file is considered an error. Convert several tools
to use raw_fd_ostream instead of std::ostream, and to use this
new option instead of doing a manual check.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75801 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
81fd8108e89f996caef41df734d5b514af847175 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a raw_ostream version of CheckBitcodeOutputToConsole.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75796 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
d890de10af6a4d01fe0b35f09ccd674d771e4732 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a raw_ostream version of CheckBitcodeOutputToConsole.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75796 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
753e6258b88d2053d21d0c95bd67e0d1ae801d0e 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a comment noting that raw_os_ostream does not check for errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75794 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c232a7e8feb28450f3f542ef5025197ff50ff9fc 15-Jul-2009 Dan Gohman <gohman@apple.com> Add a comment noting that raw_os_ostream does not check for errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75794 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
98a5ca15febce8710e21e75cc7ee417f86fc6e47 15-Jul-2009 Chris Lattner <sabre@nondot.org> eliminate the Mangler::PreserveAsmNames bit, the sole client of this
can do it perfectly well itself.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75743 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
9d5511b7db2c42a2cea0ca00c0e123e64cceadae 15-Jul-2009 Chris Lattner <sabre@nondot.org> eliminate the Mangler::PreserveAsmNames bit, the sole client of this
can do it perfectly well itself.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75743 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
9f5b2aa7fba203469386acc413c23dd41a713bc9 15-Jul-2009 Owen Anderson <resistor@mac.com> Move EVER MORE stuff over to LLVMContext.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75703 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9adc0abad3c3ed40a268ccbcee0c74cb9e1359fe 15-Jul-2009 Owen Anderson <resistor@mac.com> Move EVER MORE stuff over to LLVMContext.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75703 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a338c248ae57d2d46dfdea45e2e6ae47daef72fa 14-Jul-2009 Chris Lattner <sabre@nondot.org> fix a bug in my previous patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75678 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
001c2b433fd7fc30904abb4eafc78ac996430fe6 14-Jul-2009 Chris Lattner <sabre@nondot.org> fix a bug in my previous patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75678 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
4e4439de7a2c3c44c661e2f6f4f2d536ae0113cb 14-Jul-2009 Chris Lattner <sabre@nondot.org> allow default construction of formatted_raw_ostream.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75674 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
4a18d2f1cce981873498d2f0303d84ef3d7ecbf6 14-Jul-2009 Chris Lattner <sabre@nondot.org> allow default construction of formatted_raw_ostream.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75674 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
302008dbeae03364ffffc1bcf77d2eb28897d98a 14-Jul-2009 David Greene <greened@obbligato.org> Have asm printers use formatted_raw_ostream directly to avoid a
dynamic_cast<>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75670 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
71847813bc419f7a0667468136a07429c6d9f164 14-Jul-2009 David Greene <greened@obbligato.org> Have asm printers use formatted_raw_ostream directly to avoid a
dynamic_cast<>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75670 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
b3cdde6d77eadb722aff894b1d90498ce70babc2 14-Jul-2009 Chris Lattner <sabre@nondot.org> Reapply my previous asmprinter changes now with more testing and two
additional bug fixes:

1. The bug that everyone hit was a problem in the asmprinter where it
would remove $stub but keep the L prefix on a name when emitting the
indirect symbol. This is easy to fix by keeping the name of the stub
and the name of the symbol in a StringMap instead of just keeping a
StringSet and trying to reconstruct it late.

2. There was a problem printing the personality function. The current
logic to print out the personality function from the DWARF information
is a bit of a cesspool right now that duplicates a bunch of other
logic in the asm printer. The short version of it is that it depends
on emitting both the L and _ prefix for symbols (at least on darwin)
and until I can untangle it, it is best to switch the mangler back to
emitting both prefixes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75646 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
b8158acc23f5f0bf235fb1c6a8182a38ec9b00b2 14-Jul-2009 Chris Lattner <sabre@nondot.org> Reapply my previous asmprinter changes now with more testing and two
additional bug fixes:

1. The bug that everyone hit was a problem in the asmprinter where it
would remove $stub but keep the L prefix on a name when emitting the
indirect symbol. This is easy to fix by keeping the name of the stub
and the name of the symbol in a StringMap instead of just keeping a
StringSet and trying to reconstruct it late.

2. There was a problem printing the personality function. The current
logic to print out the personality function from the DWARF information
is a bit of a cesspool right now that duplicates a bunch of other
logic in the asm printer. The short version of it is that it depends
on emitting both the L and _ prefix for symbols (at least on darwin)
and until I can untangle it, it is best to switch the mangler back to
emitting both prefixes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75646 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
bd448e3ca993226084d7f53445388fcd8e46b996 14-Jul-2009 Edwin Török <edwintorok@gmail.com> llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.
This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75640 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
nstVisitor.h
assNameParser.h
c23197a26f34f559ea9797de51e187087c039c42 14-Jul-2009 Torok Edwin <edwintorok@gmail.com> llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.
This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75640 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
nstVisitor.h
assNameParser.h
c5c467ce9777ff9ae5e7b486a8ea4942dceef762 14-Jul-2009 Daniel Dunbar <daniel@zuster.org> Revert r75610 (and r75620, which was blocking the revert), in the hopes of
unbreaking llvm-gcc (on Darwin).

--- Reverse-merging r75620 into '.':
U include/llvm/Support/Mangler.h
--- Reverse-merging r75610 into '.':
U test/CodeGen/X86/loop-hoist.ll
G include/llvm/Support/Mangler.h
U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp
U lib/VMCore/Mangler.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75636 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
41ffe6c7afe0ff8ec3d0ae11bd82d165abe5a232 14-Jul-2009 Daniel Dunbar <daniel@zuster.org> Revert r75610 (and r75620, which was blocking the revert), in the hopes of
unbreaking llvm-gcc (on Darwin).

--- Reverse-merging r75620 into '.':
U include/llvm/Support/Mangler.h
--- Reverse-merging r75610 into '.':
U test/CodeGen/X86/loop-hoist.ll
G include/llvm/Support/Mangler.h
U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp
U lib/VMCore/Mangler.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75636 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
220ce03e4eadae17368228cc09c14f01abeda377 14-Jul-2009 Edwin Török <edwintorok@gmail.com> After converting assert(0) to LLVM_UNREACHABLE we lost file/line location.
Fix by making the LLVM_UNREACHABLE pass __FILE__ and __LINE__ to
llvm_unreachable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75631 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
assNameParser.h
93990d775ea4ac13c9c2614e84fc19a7a2161771 14-Jul-2009 Torok Edwin <edwintorok@gmail.com> After converting assert(0) to LLVM_UNREACHABLE we lost file/line location.
Fix by making the LLVM_UNREACHABLE pass __FILE__ and __LINE__ to
llvm_unreachable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75631 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
assNameParser.h
62d27af3c1c0a043eb29405ac90eb8496fbbd6dc 14-Jul-2009 Chris Lattner <sabre@nondot.org> remove renamed method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75620 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
0eac0164c259fb4a9d824361029f175e3eeede5c 14-Jul-2009 Chris Lattner <sabre@nondot.org> remove renamed method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75620 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
4cda8c8bef0ddc37d375069b9fa734cc6c9f2abc 14-Jul-2009 Chris Lattner <sabre@nondot.org> Change the X86 asmprinter to use the mangler to apply suffixes like "$non_lazy_ptr"
to symbols instead of doing it with "printSuffixedName". This gets us to the point
where there is a real separation between computing a symbol name and printing it,
something I need for MC printer stuff.

This patch also fixes a corner case bug where unnamed private globals wouldn't get
the private label prefix.

Next up, rename all uses of getValueName -> getMangledName for better greppability,
and then tackle the ppc/arm backends to eliminate "printSuffixedName".



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75610 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
03e9dd9ffae4370bf53bcdf04504e5ad908a1ec6 14-Jul-2009 Chris Lattner <sabre@nondot.org> Change the X86 asmprinter to use the mangler to apply suffixes like "$non_lazy_ptr"
to symbols instead of doing it with "printSuffixedName". This gets us to the point
where there is a real separation between computing a symbol name and printing it,
something I need for MC printer stuff.

This patch also fixes a corner case bug where unnamed private globals wouldn't get
the private label prefix.

Next up, rename all uses of getValueName -> getMangledName for better greppability,
and then tackle the ppc/arm backends to eliminate "printSuffixedName".



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75610 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
37db402da9462e27c0cd2704a11d8c0f28c52e8d 14-Jul-2009 Chris Lattner <sabre@nondot.org> Change the internal interface to makeNameProper to take a bool that
indicates whether the label is private or not, instead of taking
prefix stuff. One effect of this is that symbols will be generated
with *just* the private prefix, instead of both the private prefix
*and* the user-label-prefix, but this doesn't matter as long as it
is consistent. For example we'll now get "Lfoo" instead of "L_foo".
These are just assembler temporary labels anyway, so they never even
make it into the .o file.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75607 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
1cda87c3a07dc097f27e365f7f3ff4bcb31f5699 14-Jul-2009 Chris Lattner <sabre@nondot.org> Change the internal interface to makeNameProper to take a bool that
indicates whether the label is private or not, instead of taking
prefix stuff. One effect of this is that symbols will be generated
with *just* the private prefix, instead of both the private prefix
*and* the user-label-prefix, but this doesn't matter as long as it
is consistent. For example we'll now get "Lfoo" instead of "L_foo".
These are just assembler temporary labels anyway, so they never even
make it into the .o file.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75607 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
8f5874a96d59783c6393164e3c5b4e4a7b61e064 14-Jul-2009 Eli Friedman <eli.friedman@gmail.com> Fix obvious typo.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75563 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
c4b2d4a786715828e53567a99938e4f54bc89b74 14-Jul-2009 Eli Friedman <eli.friedman@gmail.com> Fix obvious typo.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75563 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f00a42d245ab1e6854c8cf74ef53f0cbb599c54c 14-Jul-2009 Chris Lattner <sabre@nondot.org> rename Memo/Count to AnonGlobalIDs/NextAnonGlobalID to be more
descriptive. Thange them to keep track of the ID of a global that is
assigned, not the first mangled name returned for it. Without doing this,
we are required to always use the same suffix for a global that gets
mangled. This means that we can mangle the same global once with $stub
and another time with $non_lazy_ptr or whatever.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75561 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
59ecdfbee3aaf1ed48e8ddf0a660044fa8a93729 14-Jul-2009 Chris Lattner <sabre@nondot.org> rename Memo/Count to AnonGlobalIDs/NextAnonGlobalID to be more
descriptive. Thange them to keep track of the ID of a global that is
assigned, not the first mangled name returned for it. Without doing this,
we are required to always use the same suffix for a global that gets
mangled. This means that we can mangle the same global once with $stub
and another time with $non_lazy_ptr or whatever.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75561 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
39f8990394e704c80719de78a636d3b2ea1eaa34 14-Jul-2009 Chris Lattner <sabre@nondot.org> remove Mangler::getTypeID and related data, it was only used for mangling
local symbols and we haven't had type planes since llvm 1.9.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75558 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
47728a2819b9d0d57b41898d086a1141e54a4c72 14-Jul-2009 Chris Lattner <sabre@nondot.org> remove Mangler::getTypeID and related data, it was only used for mangling
local symbols and we haven't had type planes since llvm 1.9.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75558 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
0250ddee043e93a3c7203c593ff169b1865cd8d5 14-Jul-2009 Chris Lattner <sabre@nondot.org> remove mangler support for mangling local names. Mangler should only be
used with globals.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75557 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
762717acb165439de535b76ef7ccc83cc798dcaa 14-Jul-2009 Chris Lattner <sabre@nondot.org> remove mangler support for mangling local names. Mangler should only be
used with globals.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75557 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
035d41d6c7abc88fc6be5f7f4eb8fe959fe97323 13-Jul-2009 Owen Anderson <resistor@mac.com> Move more functionality over to LLVMContext.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75497 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
73c6b7127aff4499e4d6a2edb219685aee178ee1 13-Jul-2009 Owen Anderson <resistor@mac.com> Move more functionality over to LLVMContext.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75497 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
61dd4fa312a884c38f51fce77e0aded482740692 13-Jul-2009 David Greene <greened@obbligato.org> Make some more changes suggested by Chris. Manipulators go away.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75472 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
191cf2851b40fea6b7d927d5de8f22c35dd33828 13-Jul-2009 David Greene <greened@obbligato.org> Make some more changes suggested by Chris. Manipulators go away.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75472 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
15b3932454f2777376ac500eae3999139a2c1f2e 13-Jul-2009 Owen Anderson <resistor@mac.com> Begin the painful process of tearing apart the rat'ss nest that is Constants.cpp and ConstantFold.cpp.
This involves temporarily hard wiring some parts to use the global context. This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75445 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0a5372ed3e8cda10d724feda3c1a1c998db05ca0 13-Jul-2009 Owen Anderson <resistor@mac.com> Begin the painful process of tearing apart the rat'ss nest that is Constants.cpp and ConstantFold.cpp.
This involves temporarily hard wiring some parts to use the global context. This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75445 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0a24bfaa2df9fb9ac87648320cdb088be781213a 12-Jul-2009 Edwin Török <edwintorok@gmail.com> Mention that llvm_report_error() does not return.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75428 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
3b30a2bdcaf6a63690309c0df3dae23defb14005 12-Jul-2009 Torok Edwin <edwintorok@gmail.com> Mention that llvm_report_error() does not return.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75428 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
48fe1f2cda2702b9f931c7c1521c410791b99702 12-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Make this clearer for the mathematically inclined. Thanks to Duncan Sands for
going over the text!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75414 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
7ab2eb4a803405e84e96ec00a0010a05b81bb2d7 12-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Make this clearer for the mathematically inclined. Thanks to Duncan Sands for
going over the text!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75414 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
d50427007fce2e08a11025e235ede932493dfa3c 11-Jul-2009 Edwin Török <edwintorok@gmail.com> Fix comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75380 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
97c8c51f075ff49b1f67f6d7d31969212d72512b 11-Jul-2009 Torok Edwin <edwintorok@gmail.com> Fix comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75380 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
675d56222b6b98d2c22a17aaf69a036e57d5426a 11-Jul-2009 Edwin Török <edwintorok@gmail.com> assert(0) -> LLVM_UNREACHABLE.
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75379 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
nstVisitor.h
assNameParser.h
c25e7581b9b8088910da31702d4ca21c4734c6d7 11-Jul-2009 Torok Edwin <edwintorok@gmail.com> assert(0) -> LLVM_UNREACHABLE.
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75379 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
nstVisitor.h
assNameParser.h
c1d9311812b527d0dc535aa1a13d610daf1bc6bc 11-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Clarify and simplify.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75366 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
f067a233562d3cfeb29d0092d1069bb8d25cad31 11-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Clarify and simplify.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75366 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
c21feac46fc4ca1d34b5315954e49b1f29ab630f 11-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Move a method that creates constant ranges relative to another constant range
per icmp predicate out of predsimplify and into ConstantRange.

Add another utility method that determines whether one range is a subset of
another. Combine with the former to determine whether icmp pred range, range
is known to be true or not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75357 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
bf8c7f0adf90c8271c790be9922a2f97d19d4c01 11-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Move a method that creates constant ranges relative to another constant range
per icmp predicate out of predsimplify and into ConstantRange.

Add another utility method that determines whether one range is a subset of
another. Combine with the former to determine whether icmp pred range, range
is known to be true or not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75357 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
4c17de983f586bc85e7ee850dc4b6ad5b6e3420a 10-Jul-2009 David Greene <greened@obbligato.org> Make changes suggested by Chris and eliminate newly-added raw_ostream
hooks as they're no longer needed.

The major change with this patch is to make formatted_raw_ostream usable
by any client of raw_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75283 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
62fe47a33755719ab9c6e8c239e0dd01fc87e6f9 10-Jul-2009 David Greene <greened@obbligato.org> Make changes suggested by Chris and eliminate newly-added raw_ostream
hooks as they're no longer needed.

The major change with this patch is to make formatted_raw_ostream usable
by any client of raw_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75283 91177308-0d34-0410-b5e6-96231b3b80d8
ormattedStream.h
aw_ostream.h
c32bd1a23f25710e02fa57afe613a9b94290ca6e 10-Jul-2009 Owen Anderson <resistor@mac.com> Fix unit tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75262 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
a439ee027bc908cd18e75703370174e053699b8a 10-Jul-2009 Owen Anderson <resistor@mac.com> Fix unit tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75262 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
2beb41f1b744eacf42874f537aef6d70a609a174 10-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext through the TypeBuilder API. There are no users for this in-tree, so I can't really test it.
If you're using this, and it's broken, please send patches.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75257 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
2e4ddf6218d1a7360a3d3836f80056703f149e85 10-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext through the TypeBuilder API. There are no users for this in-tree, so I can't really test it.
If you're using this, and it's broken, please send patches.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75257 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
a21eb58a79fd3156a61ec0818e1d5f0a42ab096c 10-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext through the PatternMatch API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75255 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
atternMatch.h
c7d2ce7047d7cb026c3198e6760415ed673b00f7 10-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext through the PatternMatch API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75255 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
atternMatch.h
6028e5c3ef8a2733f103a04a7d54116e7601b85e 10-Jul-2009 Owen Anderson <resistor@mac.com> Finish pushing LLVMContext through the IRBuilder/ConstantFolder interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75213 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
argetFolder.h
45524c58fd5f77b6a3f6e77d43fba85b36ec0b08 10-Jul-2009 Owen Anderson <resistor@mac.com> Finish pushing LLVMContext through the IRBuilder/ConstantFolder interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75213 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
argetFolder.h
6601fcdc38a21a39ac124f2bd8794846519b6455 10-Jul-2009 Owen Anderson <resistor@mac.com> This started as a small change, I swear. Unfortunately, lots of things call the [I|F]CmpInst constructors. Who knew!?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75200 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
333c40096561218bc3597cf153c0a3895274414c 10-Jul-2009 Owen Anderson <resistor@mac.com> This started as a small change, I swear. Unfortunately, lots of things call the [I|F]CmpInst constructors. Who knew!?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75200 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1e3fe6c538ba7beac73bb4e1a6337da203a6f0f7 10-Jul-2009 David Greene <greened@obbligato.org> Add some hooks that a redesigned AsmStream needs to do its job. These
allow derived classes to examine the stream buffer before it's flushed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75199 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
53674361efd42f9dd7c4d293132106839ab3b893 10-Jul-2009 David Greene <greened@obbligato.org> Add some hooks that a redesigned AsmStream needs to do its job. These
allow derived classes to examine the stream buffer before it's flushed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75199 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
5d0fb0b0bac5589b14fc8f550423c3dabf38f2b2 10-Jul-2009 Dan Gohman <gohman@apple.com> Revert the part of 75177 that split ConstantRange into two classes, and
merge the new functionality and unittests into ConstantRange. Thanks to
Nick Lewycky for pointing out that it isn't necessary to have two separate
classes here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75191 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
38b06447615440f935008a2141bd0a1fe078d437 10-Jul-2009 Dan Gohman <gohman@apple.com> Revert the part of 75177 that split ConstantRange into two classes, and
merge the new functionality and unittests into ConstantRange. Thanks to
Nick Lewycky for pointing out that it isn't necessary to have two separate
classes here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75191 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
73670eb8026ed03e101f1cb3b79ebb5a3e94d9ef 10-Jul-2009 Dan Gohman <gohman@apple.com> Add a ConstantSignedRange class, which does for signed integers
what ConstantRange does for unsigned integers. Factor out a
common base class for common functionality.

Add some new functions for performing arithmetic on constant
ranges. Some of these are currently just stubbed out with
conservative implementations.

Add unittests for ConstantRange and ConstantSignedRange.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75177 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
a3755d8d366fdd7a2415b93ac0253f8e677c9dfd 10-Jul-2009 Dan Gohman <gohman@apple.com> Add a ConstantSignedRange class, which does for signed integers
what ConstantRange does for unsigned integers. Factor out a
common base class for common functionality.

Add some new functions for performing arithmetic on constant
ranges. Some of these are currently just stubbed out with
conservative implementations.

Add unittests for ConstantRange and ConstantSignedRange.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75177 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
ab86c57972c5b3c19d3da737c05b0fa6f5c1b11a 09-Jul-2009 Alisdair Meredith <public@alisdairm.net> Resolve undefined behaviour when ManagedStatic is instantiated with a fixed-length array type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75149 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
80c8c3178276d0988c0129fb235f5b08a2e4f66d 09-Jul-2009 Alisdair Meredith <public@alisdairm.net> Resolve undefined behaviour when ManagedStatic is instantiated with a fixed-length array type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75149 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
33ef34caa7fdbdd7f09ec109f11d91194dcb7df3 09-Jul-2009 David Greene <greened@obbligato.org> Add support for other GraphViz display tools. This can help
with very large graphs, where dot isn't necessarily the
most visually pleasing way of looking at the graph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75144 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
00ad26ff5760ff2d1b24acb18718e63541088923 09-Jul-2009 David Greene <greened@obbligato.org> Add support for other GraphViz display tools. This can help
with very large graphs, where dot isn't necessarily the
most visually pleasing way of looking at the graph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75144 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
fcd8dafd8e5d580d44033bef5c52bdc8f8609d4d 09-Jul-2009 Jeffrey Yasskin <jyasskin@google.com> Work around an ICE in gcc-4.2.4.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75084 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0a249a8ae519ba30e869c66e96b2d2c79d49809f 09-Jul-2009 Jeffrey Yasskin <jyasskin@google.com> Work around an ICE in gcc-4.2.4.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75084 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
bd915cfa165280f9130651fcb6647fcbc7dcbd8c 08-Jul-2009 David Greene <greened@obbligato.org> Allow users of GraphWriter to display graphs asynchronously. This
provides a way to quickly dump a bunch of graph information to dot files
and display them. It's a timesaver when working on large systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75056 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
229509a8bc2390c4c9c1bd20f777acf29911d452 08-Jul-2009 David Greene <greened@obbligato.org> Allow users of GraphWriter to display graphs asynchronously. This
provides a way to quickly dump a bunch of graph information to dot files
and display them. It's a timesaver when working on large systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75056 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
4d9756a9843862edb9daddfaa0d8c78ac1c52b32 08-Jul-2009 Edwin Török <edwintorok@gmail.com> Implement changes from Chris's feedback.
Finish converting lib/Target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75043 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
dac237e18209b697a8ba122d0ddd9cad4dfba1f8 08-Jul-2009 Torok Edwin <edwintorok@gmail.com> Implement changes from Chris's feedback.
Finish converting lib/Target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75043 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
baf982b5cb66e22f492741ca30ea4e2d34399674 08-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext _back_ through IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75040 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
d1fbd142945f5ef0c273c3d756431f8cb9d25ded 08-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext _back_ through IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75040 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
2b33134f9cb27c5fe67aad09f101aa01150fe762 08-Jul-2009 Edwin Török <edwintorok@gmail.com> Convert more abort() calls to llvm_report_error().
Also remove trailing semicolon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75027 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
804e0fea4033e3b91dbc8198cef30de30f141bb5 08-Jul-2009 Torok Edwin <edwintorok@gmail.com> Convert more abort() calls to llvm_report_error().
Also remove trailing semicolon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75027 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
e17fc1d7a2bcc05efc0ebe943254b273c99d77fd 08-Jul-2009 Owen Anderson <resistor@mac.com> Switch GlobalVariable ctors to a sane API, where *either* a context or a module is required.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75025 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e9b11b431308f4766b73cda93e38ec930c912122 08-Jul-2009 Owen Anderson <resistor@mac.com> Switch GlobalVariable ctors to a sane API, where *either* a context or a module is required.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75025 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3cb884811f68c27210391441d631146faa74f55e 08-Jul-2009 Edwin Török <edwintorok@gmail.com> Start converting to new error handling API.
cerr+abort -> llvm_report_error
assert(0)+abort -> LLVM_UNREACHABLE (assert(0)+llvm_unreachable-> abort() included)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75018 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
ab7c09b6b6f4516a631fd6788918c237c83939af 08-Jul-2009 Torok Edwin <edwintorok@gmail.com> Start converting to new error handling API.
cerr+abort -> llvm_report_error
assert(0)+abort -> LLVM_UNREACHABLE (assert(0)+llvm_unreachable-> abort() included)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75018 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
f52303b1462ae01348489b783fa3357a1c7951fe 08-Jul-2009 Chris Lattner <sabre@nondot.org> convert comments to doxygen style


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75015 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
b6017b03dab80e1e7bfeec4e7debff0fefa9563e 08-Jul-2009 Chris Lattner <sabre@nondot.org> convert comments to doxygen style


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75015 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
cc6221a31fc2e01f9b5c06f30bd5f693062cafe6 08-Jul-2009 Alisdair Meredith <public@alisdairm.net> Trial first commit
Fixed build, requires std header before using std::string

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74995 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
13223c98f2fa63c7d718287313c328a813509839 08-Jul-2009 Alisdair Meredith <public@alisdairm.net> Trial first commit
Fixed build, requires std header before using std::string

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74995 91177308-0d34-0410-b5e6-96231b3b80d8
rrorHandling.h
8f5253baafe027bb8939498d9eb1083febc7339a 08-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Remove the vicmp and vfcmp instructions. Because we never had a release with
these instructions, no autoupgrade or backwards compatibility support is
provided.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74991 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
nstVisitor.h
oFolder.h
argetFolder.h
7f6aa2b162e5daaf7b9ccf05d749597d3d7cf460 08-Jul-2009 Nick Lewycky <nicholas@mxc.ca> Remove the vicmp and vfcmp instructions. Because we never had a release with
these instructions, no autoupgrade or backwards compatibility support is
provided.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74991 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
nstVisitor.h
oFolder.h
argetFolder.h
e0f136d9637981bbc5096ca396e4df383c59eafe 08-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext through GlobalVariables and IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74985 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3d29df3e8a203b167d8071ea6f805b21db18a5af 08-Jul-2009 Owen Anderson <resistor@mac.com> Push LLVMContext through GlobalVariables and IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74985 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
247e7e93c14cc48bf3b52f6c1340f52646912b3e 08-Jul-2009 Devang Patel <dpatel@apple.com> Disable loop index split for now and let nightly tester verify its usefulness.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74955 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
120505d5e7cfac352d44d84b50626e169a0ba404 08-Jul-2009 Devang Patel <dpatel@apple.com> Disable loop index split for now and let nightly tester verify its usefulness.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74955 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
f7cbfea6ad05c37faa3449be206c7d60f8252f5d 07-Jul-2009 Edwin Török <edwintorok@gmail.com> Introduce new error handling API.
This will replace exit()/abort() style error handling with an API
that allows clients to register custom error handling hooks.
The default is to call exit(1) when no error handler is provided.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74922 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
31e2466f159a887fed9139067a676f65adf2a8c3 07-Jul-2009 Torok Edwin <edwintorok@gmail.com> Introduce new error handling API.
This will replace exit()/abort() style error handling with an API
that allows clients to register custom error handling hooks.
The default is to call exit(1) when no error handler is provided.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74922 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
rrorHandling.h
5349f05e4c7c8a54751db96006d811752644011b 07-Jul-2009 Owen Anderson <resistor@mac.com> "LLVMContext* " --> "LLVMContext *"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74878 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
07cf79ef537caff6d39145f190a28a336e629b6f 07-Jul-2009 Owen Anderson <resistor@mac.com> "LLVMContext* " --> "LLVMContext *"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74878 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
d4d90a0e0d307a0ecd4ed48564b71d9bf90ae023 06-Jul-2009 Owen Anderson <resistor@mac.com> Thread LLVMContext through the constant folding APIs, which touches a lot of files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74844 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
508955156a25a9abc470a29e1760aa176d341cf9 06-Jul-2009 Owen Anderson <resistor@mac.com> Thread LLVMContext through the constant folding APIs, which touches a lot of files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74844 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
0ffa08fce95227126afe577963ddbd3dc15bf727 03-Jul-2009 Chris Lattner <sabre@nondot.org> switch the .ll parser to use SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74735 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
eeb4a84ac8d91fb1d5a7c484a1c7047409faee30 03-Jul-2009 Chris Lattner <sabre@nondot.org> switch the .ll parser to use SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74735 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
5699210537324cd5c12b6a90240df2a168d947c6 03-Jul-2009 Chris Lattner <sabre@nondot.org> add an explicit class for holding llvm::SourceMgr diagnostics and use
it to print them. This gives us column numbers in the diag line. Before:

t.s:4: error: unexpected token in argument list
mov %eax %edx
^

now:
t.s:4:11: error: unexpected token in argument list
mov %eax %edx
^



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74732 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
2f510aed9cbd24dca1fdc5aabe27325e5ade9e1a 03-Jul-2009 Chris Lattner <sabre@nondot.org> add an explicit class for holding llvm::SourceMgr diagnostics and use
it to print them. This gives us column numbers in the diag line. Before:

t.s:4: error: unexpected token in argument list
mov %eax %edx
^

now:
t.s:4:11: error: unexpected token in argument list
mov %eax %edx
^



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74732 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
3fd51c08231f27cb280cab51d72e8b5f6f096e32 01-Jul-2009 Chris Lattner <sabre@nondot.org> improve the APIs for creating struct and function types with no arguments/elements
to not have to create a temporary vector (in the API at least). Patch by Jay Foad!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74584 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
0fd38069cb6699ce21eb159f22d3f23c012c9e81 01-Jul-2009 Chris Lattner <sabre@nondot.org> improve the APIs for creating struct and function types with no arguments/elements
to not have to create a temporary vector (in the API at least). Patch by Jay Foad!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74584 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
b5aec99136975e4f4434a983f8dc9ca06b12e93a 30-Jun-2009 Daniel Dunbar <daniel@zuster.org> Normalize SourceMgr messages.
- Don't print "Parsing" in front of every message.

- Take additional "type" argument which is prepended to the message (with ": ")
if given.

- Update clients to print errors (warnings) as:
<filename>:<line number>: error(warning): ...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74489 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
3fb7683bec8c8edb24e80c95f3b0668c6ecc0ae6 30-Jun-2009 Daniel Dunbar <daniel@zuster.org> Normalize SourceMgr messages.
- Don't print "Parsing" in front of every message.

- Take additional "type" argument which is prepended to the message (with ": ")
if given.

- Update clients to print errors (warnings) as:
<filename>:<line number>: error(warning): ...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74489 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
2acdff09235b71d3aeccff83fa04ea1d8de27b1b 30-Jun-2009 Daniel Dunbar <daniel@zuster.org> Add SMLoc::isValid method.
- To support using SMLoc as a sentinel.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74474 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
9146d0e89c051ea7accf185d97317306c2532c27 30-Jun-2009 Daniel Dunbar <daniel@zuster.org> Add SMLoc::isValid method.
- To support using SMLoc as a sentinel.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74474 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
f4a1546148d94d9dd8f7561ab4b9516398281476 24-Jun-2009 Owen Anderson <resistor@mac.com> Get rid of the global CFGOnly flag by threading a ShortNames parameters through the GraphViz rendering code.
Update other uses in the codebase for this change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74084 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
8cbc94afb71fd2da72d8f1284f7f53e39019fdec 24-Jun-2009 Owen Anderson <resistor@mac.com> Get rid of the global CFGOnly flag by threading a ShortNames parameters through the GraphViz rendering code.
Update other uses in the codebase for this change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74084 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
184631077c11e171aae2ff0947e854d6f1eb34cf 23-Jun-2009 Owen Anderson <resistor@mac.com> Make timers threadsafe again. This isn't quite as nice as I'd hoped (it uses locking rather than atomic arithmetic),
but should work on all the platforms we care about.

I might revisit this if a totally awesome way to do it occurs to me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74002 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
46d9a6494496d215e850f337b5a723c484212f80 23-Jun-2009 Owen Anderson <resistor@mac.com> Make timers threadsafe again. This isn't quite as nice as I'd hoped (it uses locking rather than atomic arithmetic),
but should work on all the platforms we care about.

I might revisit this if a totally awesome way to do it occurs to me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74002 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
ac637c60998dded7d0051f17b27db78d99510f5b 23-Jun-2009 Owen Anderson <resistor@mac.com> Revert my last series of commits related to Timer and 64-bit atomics. Not all the targets
we care about are capable of supporting it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73993 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
6f2c64d70aad5328a843a6f6a6547ada69ead33b 23-Jun-2009 Owen Anderson <resistor@mac.com> Revert my last series of commits related to Timer and 64-bit atomics. Not all the targets
we care about are capable of supporting it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73993 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
625b2744333cd2ecde1041782bc2a23042f318fd 23-Jun-2009 Owen Anderson <resistor@mac.com> Actually, these need to be signed integers, not unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73978 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
14112e51697e56788fcb32f4255833499c2738b5 23-Jun-2009 Owen Anderson <resistor@mac.com> Actually, these need to be signed integers, not unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73978 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
eb279e1a3ed50006a688c3e49f2db48c661d11f1 23-Jun-2009 Owen Anderson <resistor@mac.com> Use 64-bit integer counters for tracking time, rather than doubles. This will be more atomic op friendly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73974 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
cd92c1000eeceb195daaab47ca4a2161ab2da410 23-Jun-2009 Owen Anderson <resistor@mac.com> Use 64-bit integer counters for tracking time, rather than doubles. This will be more atomic op friendly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73974 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
56ddb833664e1ab30ee293c3bb210f13408ede71 23-Jun-2009 Owen Anderson <resistor@mac.com> Revert r73923, which broke clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73957 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
200aa6d89b75d2a4f630b85a4a785ae7d18d16bb 23-Jun-2009 Owen Anderson <resistor@mac.com> Revert r73923, which broke clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73957 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
9d332920c1cd0b572b355610ff0514d127844e21 23-Jun-2009 Owen Anderson <resistor@mac.com> Add guards around timer groups, which can be shared.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73923 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
af2e2b54b6b69613a3f0705aa892b9ffb7d8ae64 23-Jun-2009 Owen Anderson <resistor@mac.com> Add guards around timer groups, which can be shared.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73923 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
f6611855489bb3cee46233780b55005ddd399471 21-Jun-2009 Chris Lattner <sabre@nondot.org> rename SourceMgr::PrintError to PrintMessage.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73861 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
14ee48a5bae352780b767a14bd97e8e91800a95b 21-Jun-2009 Chris Lattner <sabre@nondot.org> rename SourceMgr::PrintError to PrintMessage.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73861 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
0e88373de3ffba42da494f6a34361d395572d88e 21-Jun-2009 Chris Lattner <sabre@nondot.org> move include searching logic from TGLexer to SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73845 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
7ee5d5f97b3fa709038ff7fd640dc775efaadc26 21-Jun-2009 Chris Lattner <sabre@nondot.org> move include searching logic from TGLexer to SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73845 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
cfc6b15daa9b864f6d664bc9c91cbb4c80389bdb 21-Jun-2009 Chris Lattner <sabre@nondot.org> Rename TGSourceMgr -> SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73844 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
8070ea3f068980d08cc10381f4c9369d19a91353 21-Jun-2009 Chris Lattner <sabre@nondot.org> Rename TGSourceMgr -> SourceMgr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73844 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
37b49f306541bebc1ce0d16204d3392219ec3e45 21-Jun-2009 Chris Lattner <sabre@nondot.org> rename TGLoc -> SMLoc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73843 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
1e3a8a492471f5dc3f50452af9eb9a2dfb1aeb39 21-Jun-2009 Chris Lattner <sabre@nondot.org> rename TGLoc -> SMLoc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73843 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
a444ddfff53d7baa81af2d8b6248020a372a8558 21-Jun-2009 Chris Lattner <sabre@nondot.org> move TGSourceMgr class out of TableGen into libsupport.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73842 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
099e198ae84c1a6cfe2a7c79ee9f47fa67caac8f 21-Jun-2009 Chris Lattner <sabre@nondot.org> move TGSourceMgr class out of TableGen into libsupport.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73842 91177308-0d34-0410-b5e6-96231b3b80d8
ourceMgr.h
4f25cfbf68a546010da73707896a2b799056fe65 20-Jun-2009 Devang Patel <dpatel@apple.com> mv CodeGen/DebugLoc.h Support/DebugLoc.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73786 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
1e86a66b00b94adc4ad6977ef6b47c516ac62cec 20-Jun-2009 Devang Patel <dpatel@apple.com> mv CodeGen/DebugLoc.h Support/DebugLoc.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73786 91177308-0d34-0410-b5e6-96231b3b80d8
ebugLoc.h
5b156f77e6bad0abdab7ca17b0494d3450607aca 19-Jun-2009 Owen Anderson <resistor@mac.com> Fences are expensive. Avoid doing them when we're not in multithreaded mode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73777 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
94fefe27f574ed98ad2522f8a7d1515e698ff036 19-Jun-2009 Owen Anderson <resistor@mac.com> Fences are expensive. Avoid doing them when we're not in multithreaded mode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73777 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
82c7820deb56dc314953bd89f55de076b0f7a113 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Revert IRBuilder CC propagation. Fix SimplifyLibCalls instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73715 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9547cdfa35a466ef16a72306531465f63b212888 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Revert IRBuilder CC propagation. Fix SimplifyLibCalls instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73715 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
7af7e860a51756595c34d8639a6b2f6c85a6200f 18-Jun-2009 Owen Anderson <resistor@mac.com> Move Threading.[h|cpp] from Support to System.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73707 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
hreading.h
e3cd5ca7e79f4359e8a101c211fc9c117eb62347 18-Jun-2009 Owen Anderson <resistor@mac.com> Move Threading.[h|cpp] from Support to System.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73707 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
hreading.h
e0f832988a079487586a8e087fa0ee3bccdb8fd7 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Forgot to commit this hunk

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73693 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fd0cfe4bb4782d2b525495dae5096d3709d888c6 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Forgot to commit this hunk

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73693 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
41a6996ae24f30a5d6ecad5bc12d7dbb00b44c3d 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Propagate calling conv for invokes too

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73692 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
df9d0f0ed2dca81033d8c7c1f632b01dc1d96c44 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Propagate calling conv for invokes too

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73692 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1dc3bc0978813f6402e37023b6d0d279b81f8b37 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Honour calling convention and attributes of Callee by default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73646 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
bf823e75907c81d0ba74b7aff9d34131587c1d8b 18-Jun-2009 Anton Korobeynikov <asl@math.spbu.ru> Honour calling convention and attributes of Callee by default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73646 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
95c497086991846e55c007ed8f2d6bc6c897c8ab 17-Jun-2009 Chris Lattner <sabre@nondot.org> make CreateFMul forward to CreateFMul, not CreateMul.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73603 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
08826a50e18524decc7f725153fbab49bcbaadd3 17-Jun-2009 Chris Lattner <sabre@nondot.org> make CreateFMul forward to CreateFMul, not CreateMul.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73603 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ca17e1ffe59f6792bb2dfa6f935c5311d265c9d6 17-Jun-2009 Mikhail Glushenkov <foldr@codedgers.com> Fix comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73601 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
71c767b4e30ad9fb3286664528cb2d6abccf2676 17-Jun-2009 Mikhail Glushenkov <foldr@codedgers.com> Fix comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73601 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
c0aa418a6a26da5e8fc16899b25c7a9026373165 16-Jun-2009 Owen Anderson <resistor@mac.com> Fix/cleanup trailing newlines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73546 91177308-0d34-0410-b5e6-96231b3b80d8
hreading.h
ff30b7d173f87ec76970d6f03e863a7b9d450405 16-Jun-2009 Owen Anderson <resistor@mac.com> Fix/cleanup trailing newlines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73546 91177308-0d34-0410-b5e6-96231b3b80d8
hreading.h
f7e361fb0f799ac28ac15b107520ebdcf8f6de6c 16-Jun-2009 Owen Anderson <resistor@mac.com> Split the thread-related APIs out into their own file, and add a few more
calls for convenience.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73512 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
hreading.h
4c7ac18fc9e9af51ea6362871589c13263526d7a 16-Jun-2009 Owen Anderson <resistor@mac.com> Split the thread-related APIs out into their own file, and add a few more
calls for convenience.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73512 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
hreading.h
483736a53df18fee3ebec9a1e41af3e7433bb887 16-Jun-2009 Dan Gohman <gohman@apple.com> Add a CreateFNeg function to IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73437 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a7a8af0c586032479527fbde647333c1ce277033 16-Jun-2009 Dan Gohman <gohman@apple.com> Add a CreateFNeg function to IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73437 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
6b5788edb17bad161bbe7a21f38a45f92bba892f 07-Jun-2009 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Simple ELF32/64 binary files can now be emitted for x86 and x86_64 without
relocation sections.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73038 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
a029a27fae25628fa7805aba6d7ae3216a4e026b 07-Jun-2009 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Simple ELF32/64 binary files can now be emitted for x86 and x86_64 without
relocation sections.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73038 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
7ce405e7aa026ef683da9eb8cc39cce87fcfa1d6 05-Jun-2009 Dan Gohman <gohman@apple.com> Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
atternMatch.h
argetFolder.h
ae3a0be92e33bc716722aa600983fc1535acb122 05-Jun-2009 Dan Gohman <gohman@apple.com> Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
oFolder.h
atternMatch.h
argetFolder.h
8a06a5bdc1eb7375bddbe3ed5c377c72842dc75c 04-Jun-2009 Edwin Török <edwintorok@gmail.com> Add support for outputting ANSI colors to raw_fd_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72854 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e8ebb0fe1bba0fdff7475d98e1f8a04804b0b056 04-Jun-2009 Torok Edwin <edwintorok@gmail.com> Add support for outputting ANSI colors to raw_fd_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72854 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
f4a9bb177c7a8d6f32bf0c7aa5b3e0a58c40ca06 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Change LTO to run the global opt pass twice.
- This matches llvm-ld.

It took a bit of archeology to figure out what the right thing to do was
(whether this was intentionally added or intentionally removed). My final
conclusion is that Chris added this intentionally here:
http://llvm.org/viewvc/llvm-project?view=rev&revision=16913
but the changes weren't propogated to llvm-ld until here:
http://llvm.org/viewvc/llvm-project?view=rev&revision=34058
which was after lto.cpp had been cloned off (of llvm-ld), here:
http://llvm.org/viewvc/llvm-project?view=rev&revision=29494

From the commit message, it looks like the motivation for running global opt
again is because we ran it prior to inlining. Based on that I updated the
comment and also only run the pass if we actually ran the inliner.

Chris, please review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72811 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
e0f0e0be1c5f6f80cd866d84643509ef399eec96 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Change LTO to run the global opt pass twice.
- This matches llvm-ld.

It took a bit of archeology to figure out what the right thing to do was
(whether this was intentionally added or intentionally removed). My final
conclusion is that Chris added this intentionally here:
http://llvm.org/viewvc/llvm-project?view=rev&revision=16913
but the changes weren't propogated to llvm-ld until here:
http://llvm.org/viewvc/llvm-project?view=rev&revision=34058
which was after lto.cpp had been cloned off (of llvm-ld), here:
http://llvm.org/viewvc/llvm-project?view=rev&revision=29494

From the commit message, it looks like the motivation for running global opt
again is because we ran it prior to inlining. Based on that I updated the
comment and also only run the pass if we actually ran the inliner.

Chris, please review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72811 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
9068de51b4bf4b7c46f1ce8b2a4cd00baf1dd16b 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Add createStandardLTOPasses to StandardPasses.h, and move lto and llvm-ld over.
- I know it sounds crazy, but I think all the pass lists are now coalesced into
StandardPasses.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72805 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
006a03482880a5b614dfbb8601e0ae92593a595c 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Add createStandardLTOPasses to StandardPasses.h, and move lto and llvm-ld over.
- I know it sounds crazy, but I think all the pass lists are now coalesced into
StandardPasses.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72805 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
12d220a41078b25ca3abf9bce19b7a08d638d6af 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Remove some silly code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72788 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
e98c4d0b10047f311d5bcb67bf12bfdaf484fb3b 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Remove some silly code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72788 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
aaa4574e70151899dc0f5df1c772844b4c837cd4 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Add StandardPasses.h which embeds the standard compilation passes shared by
clang/llvm-gcc.
- Implemented as inline functions for linking simplicity.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72786 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
04d5f44882b29e41a29aa59be14d69a69d0ddb23 03-Jun-2009 Daniel Dunbar <daniel@zuster.org> Add StandardPasses.h which embeds the standard compilation passes shared by
clang/llvm-gcc.
- Implemented as inline functions for linking simplicity.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72786 91177308-0d34-0410-b5e6-96231b3b80d8
tandardPasses.h
a300261c326a90bc01e22e6af1baeabf22188672 03-Jun-2009 Dan Gohman <gohman@apple.com> Change TargetFolder's TD member from a reference to a
pointer, now that ConstantFoldConstantExpression can
accept a null TargetData pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72744 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
b3ae97cffe089ff84ea336e2bc062955eda1ff07 03-Jun-2009 Dan Gohman <gohman@apple.com> Change TargetFolder's TD member from a reference to a
pointer, now that ConstantFoldConstantExpression can
accept a null TargetData pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72744 91177308-0d34-0410-b5e6-96231b3b80d8
argetFolder.h
a8741eb2353dc9bd9b84415ae360b6f471fc29b0 31-May-2009 Dan Gohman <gohman@apple.com> Fix the name of the function in this comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72666 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
55b42513e1548554bfacc72d48ec3483c73fddf9 31-May-2009 Dan Gohman <gohman@apple.com> Fix the name of the function in this comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72666 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
5d41f793d0fc43b4c2cb4648cd0c9a15bcb44dc3 30-May-2009 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Add AMD64 elf machine type


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72635 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
cc5fc60468a1915049ef19a549fe4a6ae8708a00 30-May-2009 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Add AMD64 elf machine type


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72635 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
6787a7c255d2a7c99406f26833e329a1ce1fe3f8 20-May-2009 Dan Gohman <gohman@apple.com> Add an accessor method to return the insertion point.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72184 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b60182f1b0218e0196c78f1cfeda2cf223a47146 20-May-2009 Dan Gohman <gohman@apple.com> Add an accessor method to return the insertion point.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72184 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
c7ccf81f8718f7d520c9d170929d851ce3f9ed2f 20-May-2009 Owen Anderson <resistor@mac.com> Have llvm_start_multithreaded return a bool indicating whether multithreaded
initialization succeeded or not, rather than just asserting.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72182 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
6afe2fa28816b5b208a0140372900325709271c4 20-May-2009 Owen Anderson <resistor@mac.com> Have llvm_start_multithreaded return a bool indicating whether multithreaded
initialization succeeded or not, rather than just asserting.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72182 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
607c4d42ed4edca89f3ef86e81e18352498d3150 20-May-2009 Owen Anderson <resistor@mac.com> Add llvm_start_multithreaded(), which starts up the LLVM internals in thread-safe mode. Provide double-check locking
initialization of ManagedStatic's when running in thread-safe mode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72151 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
b4d97b78dfd0d14a788fa3cb876f67a9e666b99b 20-May-2009 Owen Anderson <resistor@mac.com> Add llvm_start_multithreaded(), which starts up the LLVM internals in thread-safe mode. Provide double-check locking
initialization of ManagedStatic's when running in thread-safe mode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72151 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
facee4c232d3b11c59cf5d94be191617dbd04cde 16-May-2009 Owen Anderson <resistor@mac.com> Back out the thread-safe ManagedStatic for now. Too many people have too many problems with it for the moment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71931 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
18ad4cb95dd4092eeb29d9c5233d18d9f918b040 16-May-2009 Owen Anderson <resistor@mac.com> Back out the thread-safe ManagedStatic for now. Too many people have too many problems with it for the moment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71931 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
cdc943532d8f81843e18995f317f1e906c55e370 15-May-2009 Owen Anderson <resistor@mac.com> Factor out some common code, fix more typoes, and add a memory fence that might be needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71853 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
ca37b511fa1e542c936402c0023455fd9a444e76 15-May-2009 Owen Anderson <resistor@mac.com> Factor out some common code, fix more typoes, and add a memory fence that might be needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71853 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
31456024dada134c5ef96a7a17e7cc5e8e73955a 15-May-2009 Owen Anderson <resistor@mac.com> Fix an unfortunate typo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71852 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
d300a28c40808833c63713c2a69543db20ce7c5d 15-May-2009 Owen Anderson <resistor@mac.com> Fix an unfortunate typo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71852 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
b56c996483900ea8ce0313b21f98ce1dbb762191 15-May-2009 Owen Anderson <resistor@mac.com> Now with working on Leopard!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71819 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
5f00b0c5b63c30c7ad6134543318551902de5c93 15-May-2009 Owen Anderson <resistor@mac.com> Now with working on Leopard!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71819 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
f57e6faeb01e0fcdc15128c274273e85590dd095 14-May-2009 Owen Anderson <resistor@mac.com> Make ManagedStatic threadsafe by using atomic operations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71796 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
87ba22dc672a117d6ec99fa0b4d5ad82d0019508 14-May-2009 Owen Anderson <resistor@mac.com> Make ManagedStatic threadsafe by using atomic operations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71796 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
8634ce3bb4fd73a5096d1fc3ed6ffa20996e214e 13-May-2009 Dale Johannesen <dalej@apple.com> Add an int64_t variant of abs, for host environments
without one. Use it where we were using abs on
int64_t objects.
(I strongly suspect the casts to unsigned in the
fragments in LoopStrengthReduce are not doing whatever
the original intent was, but the obvious change to
uint64_t doesn't work. Maybe later.)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71612 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
7b9486ad4355a010d22e0737cee9cd7c7b747ece 13-May-2009 Dale Johannesen <dalej@apple.com> Add an int64_t variant of abs, for host environments
without one. Use it where we were using abs on
int64_t objects.
(I strongly suspect the casts to unsigned in the
fragments in LoopStrengthReduce are not doing whatever
the original intent was, but the obvious change to
uint64_t doesn't work. Maybe later.)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71612 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
4e32b79171e2ff19f2061ce7ae5fe9f3693ebbb3 11-May-2009 Mike Stump <mrs@apple.com> Add DW_AT_APPLE_isa and DW_AT_APPLE_block. Radar 6867696


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71479 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
6dc4ade59505fd8a01370ff8da5b18110f7a2f41 11-May-2009 Mike Stump <mrs@apple.com> Add DW_AT_APPLE_isa and DW_AT_APPLE_block. Radar 6867696


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71479 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
a51b284651add5bb0e3b2f10980e4d61e1eb10fb 06-May-2009 Dan Gohman <gohman@apple.com> Add simplify_type specializations to allow WeakVH, AssertingVH, and
CallbackVH to participate in dyn_cast, isa, etc. without needing
an explicit conversion.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71087 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
0ec4146db70916c31281e091bb3b447aab497246 06-May-2009 Dan Gohman <gohman@apple.com> Add simplify_type specializations to allow WeakVH, AssertingVH, and
CallbackVH to participate in dyn_cast, isa, etc. without needing
an explicit conversion.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71087 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
0bd2a9c01db7399970c297d4016ae6bd7bf160bd 06-May-2009 Evan Cheng <evan.cheng@apple.com> Quotes should be printed before private prefix; some code clean up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71032 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
8f18edd8b6fe00209314f4c56f33d7c3c18bbbff 06-May-2009 Evan Cheng <evan.cheng@apple.com> Quotes should be printed before private prefix; some code clean up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71032 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
45f899f2d0542caeef5d0c8f08d449eed3086466 05-May-2009 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71022 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
ff9977f8cdd5275448ca19736cd14a6e20c0dac4 05-May-2009 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71022 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
c09b12c62208f09de9d107b320f5420ae6e4fc38 02-May-2009 Dan Gohman <gohman@apple.com> Apply Jeffrey Yasskin's CallbackVH patch, with minor tweaks from me
to make the copy constructor and destructor protected, and corresponding
adjustments to the unittests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70644 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
29bcef8a7ac2f910540003a0edcdc037a56d7ba3 02-May-2009 Dan Gohman <gohman@apple.com> Apply Jeffrey Yasskin's CallbackVH patch, with minor tweaks from me
to make the copy constructor and destructor protected, and corresponding
adjustments to the unittests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70644 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
42da7f754235a85d2334760212cf69400c439dd2 02-May-2009 Dan Gohman <gohman@apple.com> Include <limits.h> to get the definition of CHAR_BIT.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70643 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
d12141b1feec631057a68343a01c66dab9b9c640 02-May-2009 Dan Gohman <gohman@apple.com> Include <limits.h> to get the definition of CHAR_BIT.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70643 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
837e59e2e8a0fc3133aa25cea26b9ee3c7e72c8f 02-May-2009 Chris Lattner <sabre@nondot.org> Drop the default assumption about alignment down to 2 bits from 3. This apparently
helps some problems on win32 platforms (PR4119)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70603 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
ae19684bd150c729c7f6adec53a70f269d1161ef 02-May-2009 Chris Lattner <sabre@nondot.org> Drop the default assumption about alignment down to 2 bits from 3. This apparently
helps some problems on win32 platforms (PR4119)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70603 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
714257f5deec6049a4170bdd77ca1c3df989d67e 01-May-2009 Jeffrey Yasskin <jyasskin@google.com> Add a mention of TypeBuilder to the programmer's manual, and clean up the class
comment a bit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70515 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
7ebb6ac102ed5ced799bf7b42b517ab48c896622 01-May-2009 Jeffrey Yasskin <jyasskin@google.com> Add a mention of TypeBuilder to the programmer's manual, and clean up the class
comment a bit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70515 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
7f09dd2f63f502731fd61171c59504187dd74592 30-Apr-2009 Torok Edwin <edwintorok@gmail.com> Make dataflow iteration possible on Value*, not only on User*: df_ext_iterator<Value*, SmallPtrSet<const Value*, 16> >


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70496 91177308-0d34-0410-b5e6-96231b3b80d8
ataFlow.h
0d833b7e3166bdbc89cef7d8d5ad37faa50df355 30-Apr-2009 Edwin Török <edwintorok@gmail.com> Make dataflow iteration possible on Value*, not only on User*: df_ext_iterator<Value*, SmallPtrSet<const Value*, 16> >


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70496 91177308-0d34-0410-b5e6-96231b3b80d8
ataFlow.h
b587f9662a7b6f00f9ce48ddf2dea1a4fb18a6db 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Add support for a character after a command line option. Like '-Os'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70437 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
f0d2d9593dbeca56c962391c18ddb059e2ee9bef 30-Apr-2009 Bill Wendling <isanbard@gmail.com> Add support for a character after a command line option. Like '-Os'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70437 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
487fa01673a1d13331b7173e9e6812e72dd4361e 27-Apr-2009 Jeffrey Yasskin <jyasskin@google.com> Add tests for WeakVH and AssertingVH. These pointed out that the overloads for
the comparison operators were not only unnecessary in the presence of the
implicit conversion; they caused ambiguous overload errors. So I deleted them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70243 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
c6c47d263dc0c132ada1155b20eb832cd0bdb0e8 27-Apr-2009 Jeffrey Yasskin <jyasskin@google.com> Add tests for WeakVH and AssertingVH. These pointed out that the overloads for
the comparison operators were not only unnecessary in the presence of the
implicit conversion; they caused ambiguous overload errors. So I deleted them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70243 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
096fd7b5a7b19912bfedeaef870a0c655f16e325 26-Apr-2009 Chris Lattner <sabre@nondot.org> Add a new TypeBuilder helper class, which eases making LLVM IR types.
Patch by Jeffrey Yasskin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70084 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
61afacb3a48a5a60eddef72fbd873f4d553551e2 26-Apr-2009 Chris Lattner <sabre@nondot.org> Add a new TypeBuilder helper class, which eases making LLVM IR types.
Patch by Jeffrey Yasskin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70084 91177308-0d34-0410-b5e6-96231b3b80d8
ypeBuilder.h
ddcb3415cb83a8df3cad5241cbfe46d261946a7b 22-Apr-2009 Owen Anderson <resistor@mac.com> Add caching of predecessor counts as well as predecessors themselves.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69791 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
d28f07229a037a79406179cbdb81d35ea6096cb0 22-Apr-2009 Owen Anderson <resistor@mac.com> Add caching of predecessor counts as well as predecessors themselves.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69791 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
8f7be4731e979255c54eb8951b7a06ed4fd6ce45 20-Apr-2009 Douglas Gregor <dgregor@apple.com> Make all raw_ostreams support the tell() function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69583 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
fb5fc12c05fdfc89e335ad416500afc7930c928c 20-Apr-2009 Douglas Gregor <doug.gregor@gmail.com> Make all raw_ostreams support the tell() function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69583 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7c533169226213a6089a887b4f80f41004e10128 19-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Fix missing text in doxygen documentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69529 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
721210a6b0304e1bfbf05049e9acad96cceb720f 19-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Fix missing text in doxygen documentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69529 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
cb8c4778d3b86d47475a3ba3dea86dc0c887e5af 10-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Cleanup. Remove redundant llvm:: , we don't need them since we're inside
namespace llvm already.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68774 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1c49e6b2f14b1688d2b832c37c2df7fd9e4b99e2 10-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Cleanup. Remove redundant llvm:: , we don't need them since we're inside
namespace llvm already.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68774 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b9fc36085706c131296e5a7eb91a68f7c8572c31 10-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Add utility function to IRBuilder that takes the difference between two
pointers, taking into account the size of the pointed-to object.
Patch by Jeffrey Yasskin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68768 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b99625fcc7be7b5fed836ab34d7dd579f5a2ab4f 10-Apr-2009 Nick Lewycky <nicholas@mxc.ca> Add utility function to IRBuilder that takes the difference between two
pointers, taking into account the size of the pointed-to object.
Patch by Jeffrey Yasskin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68768 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
00a7b52385a25ab8cd412ce4c0f0ce11176b6793 08-Apr-2009 Chris Lattner <sabre@nondot.org> Remove AllowInverse: it leaks memory and is not the right
abstraction for CommandLine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68588 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
250dbdce57e2d050a44eb344ea74e70d54925d9c 08-Apr-2009 Chris Lattner <sabre@nondot.org> Remove AllowInverse: it leaks memory and is not the right
abstraction for CommandLine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68588 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
4e9ca339b56f082c6b2d7dd7d91f704801c0d4fd 05-Apr-2009 Mikhail Glushenkov <foldr@codedgers.com> Add segment flag bits to ELF.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68438 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
5e0819ba7c11e0938a74c9671782df9a1191680c 05-Apr-2009 Mikhail Glushenkov <foldr@codedgers.com> Add segment flag bits to ELF.h.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68438 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
38f4dd7b5e333aee8f89cee85d1c79378fee0ffc 03-Apr-2009 Daniel Dunbar <daniel@zuster.org> Add fast path for raw_ostream output of strings.
- Particularly nice for small constant strings, which get optimized
down nicely. On a synthetic benchmark writing out "hello" in a
loop, this is about 2x faster with gcc and 3x faster with
llvm-gcc. llc on insn-attrtab.bc from 403.gcc is about .5% faster.

- I tried for a fancier solution which wouldn't increase code size as
much (by trying to match constant arrays), but can't quite make it
fly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68396 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
4d1512635e6bf2eb3c23e36ea5339a0a63eba0c3 03-Apr-2009 Daniel Dunbar <daniel@zuster.org> Add fast path for raw_ostream output of strings.
- Particularly nice for small constant strings, which get optimized
down nicely. On a synthetic benchmark writing out "hello" in a
loop, this is about 2x faster with gcc and 3x faster with
llvm-gcc. llc on insn-attrtab.bc from 403.gcc is about .5% faster.

- I tried for a fancier solution which wouldn't increase code size as
much (by trying to match constant arrays), but can't quite make it
fly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68396 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
b7a00daa1165576dd2bb9d17970c249d536f4a82 03-Apr-2009 Chris Lattner <sabre@nondot.org> Work around an apparent GCC miscompilation by specializing different,
this fixes a regression on some compilers from r68147.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68356 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
alueHandle.h
ad646f06c2d59e72bdc13bdfe5ed655088b04f75 03-Apr-2009 Chris Lattner <sabre@nondot.org> Work around an apparent GCC miscompilation by specializing different,
this fixes a regression on some compilers from r68147.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68356 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
alueHandle.h
6caced956460ec360c79dc7d20e872fba1b73583 03-Apr-2009 Chris Lattner <sabre@nondot.org> add missing *


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68350 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
48eb31ce661effc90e272c08d71afc33920b5504 03-Apr-2009 Chris Lattner <sabre@nondot.org> add missing *


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68350 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
de551f91d8816632a76a065084caab9fab6aacff 01-Apr-2009 Dan Gohman <gohman@apple.com> Use CHAR_BIT instead of hard-coding 8 in several places where it
is appropriate. This helps visually differentiate host-oriented
calculations from target-oriented calculations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68227 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
d06cad6dacf2217ce7a88eebf5b0c164b3fbdd41 01-Apr-2009 Dan Gohman <gohman@apple.com> Use CHAR_BIT instead of hard-coding 8 in several places where it
is appropriate. This helps visually differentiate host-oriented
calculations from target-oriented calculations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68227 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
d485e885f04eaaafc9c0ce2555c6bd853b7c18a3 01-Apr-2009 Misha Brukman <brukman+llvm@gmail.com> * Fixed spelling of `invertible'
* Simplified if statement


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68163 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
cdd50fc38598d75364c0f8ae2680a86c094c6659 01-Apr-2009 Misha Brukman <brukman+llvm@gmail.com> * Fixed spelling of `invertible'
* Simplified if statement


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68163 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b160f5d36d9d0ed0305e98096f4df430d07ee44f 01-Apr-2009 Chris Lattner <sabre@nondot.org> add a converting operator


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68158 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
bf67bc6a3d5a6aa8cf22f4389900e2e82120f990 01-Apr-2009 Chris Lattner <sabre@nondot.org> add a converting operator


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68158 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
722272df41d8de9c7683811b7bd8e901ee2f2785 01-Apr-2009 Chris Lattner <sabre@nondot.org> Add two new classes: WeakVH and AssertingVH. These are both "ValueHandles",
which are effectively smart pointers to Value*'s. They are both very light
weight and simple, and react to values being destroyed or being RAUW'd.

WeakVN does a best effort to follow a value around, including through RAUW
operations and will get nulled out of the value is destroyed. This is useful
for the eventual "metadata that references a value" work, because it is a
reference to a value that does not show up on its use_* list.

AssertingVH is a pointer that compiles down to a dumb raw pointer when
assertions are disabled. When enabled, it emits an assertion if the
pointed-to value is destroyed while it is still being referenced. This
is very useful for Maps and other things, and should have caught the recent
bugs in CallGraph and Reassociate, for example.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68149 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
f2cc39ad2aef14756aca61641e8db9db3ae89fbe 01-Apr-2009 Chris Lattner <sabre@nondot.org> Add two new classes: WeakVH and AssertingVH. These are both "ValueHandles",
which are effectively smart pointers to Value*'s. They are both very light
weight and simple, and react to values being destroyed or being RAUW'd.

WeakVN does a best effort to follow a value around, including through RAUW
operations and will get nulled out of the value is destroyed. This is useful
for the eventual "metadata that references a value" work, because it is a
reference to a value that does not show up on its use_* list.

AssertingVH is a pointer that compiles down to a dumb raw pointer when
assertions are disabled. When enabled, it emits an assertion if the
pointed-to value is destroyed while it is still being referenced. This
is very useful for Maps and other things, and should have caught the recent
bugs in CallGraph and Reassociate, for example.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68149 91177308-0d34-0410-b5e6-96231b3b80d8
alueHandle.h
f385167b85abf9cb63a0bec94732d7185ee74e36 31-Mar-2009 Chris Lattner <sabre@nondot.org> teach PointerLikeTypeTraits that all pointers to pointers may only be 4-byte aligned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68147 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
f45fb4e8e33bd11408d815a28c97baa7ce21c17e 31-Mar-2009 Chris Lattner <sabre@nondot.org> teach PointerLikeTypeTraits that all pointers to pointers may only be 4-byte aligned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68147 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
31fd5a571eb8048a1084dd8e20a49dd0785de11a 29-Mar-2009 Bill Wendling <isanbard@gmail.com> Constify check. This fixes PR3900.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68013 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b6f89d8eb440c64a8e6663fa9bcd8ee989fe1782 29-Mar-2009 Bill Wendling <isanbard@gmail.com> Constify check. This fixes PR3900.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68013 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
911c8b21dac9678e458798b150cebff196a6fc7a 29-Mar-2009 Chris Lattner <sabre@nondot.org> Add a PointerLikeTypeTraits specialization for uintptr_t


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67985 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
d848e07c4585f2e70a6f3d188be593919a7a9c8e 29-Mar-2009 Chris Lattner <sabre@nondot.org> Add a PointerLikeTypeTraits specialization for uintptr_t


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67985 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
e30173ac3396510bd0bb26a66fd615ff9083436d 29-Mar-2009 Chris Lattner <sabre@nondot.org> Replace the PointerLikeTypeTraits::getNumLowBitsAvailable
function with a new NumLowBitsAvailable enum, which makes the
value available as an integer constant expression.

Add PointerLikeTypeTraits specializations for Instruction* and
Use** since they are only guaranteed 4-byte aligned.

Enhance PointerIntPair to know about (and enforce) the alignment
specified by PointerLikeTypeTraits. This should allow things
like PointerIntPair<PointerIntPair<void*, 1,bool>, 1, bool>
because the inner one knows that 2 low bits are free.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67979 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
3e4bb2e99451a351848e66d40023fa65d8b9ee59 29-Mar-2009 Chris Lattner <sabre@nondot.org> Replace the PointerLikeTypeTraits::getNumLowBitsAvailable
function with a new NumLowBitsAvailable enum, which makes the
value available as an integer constant expression.

Add PointerLikeTypeTraits specializations for Instruction* and
Use** since they are only guaranteed 4-byte aligned.

Enhance PointerIntPair to know about (and enforce) the alignment
specified by PointerLikeTypeTraits. This should allow things
like PointerIntPair<PointerIntPair<void*, 1,bool>, 1, bool>
because the inner one knows that 2 low bits are free.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67979 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
8ee1b5e916249d1a64ad8cf99b08a0e160f9d052 29-Mar-2009 Chris Lattner <sabre@nondot.org> rename PointerLikeTypeInto to PointerLikeTypeTraits, add trait for
# low bits free, and move to its own header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67973 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
dbe22fa66c34817332e7335029ddbc71487359ea 29-Mar-2009 Chris Lattner <sabre@nondot.org> rename PointerLikeTypeInto to PointerLikeTypeTraits, add trait for
# low bits free, and move to its own header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67973 91177308-0d34-0410-b5e6-96231b3b80d8
ointerLikeTypeTraits.h
e8b64106ecf1057c7506d44ec8f64b5c83ee51c7 28-Mar-2009 Chris Lattner <sabre@nondot.org> move a large method out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67892 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
5ea5ba853015513f2b619a58a1aee3ab65726998 28-Mar-2009 Chris Lattner <sabre@nondot.org> move a large method out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67892 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
5c1f715d4b68d4adb54fd0bf37c099039d6849d3 27-Mar-2009 Mike Stump <mrs@apple.com> Allow invertable -xno- style optins as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67862 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a1582f3e6f48e752b04075ce16bf052ba2ca169f 27-Mar-2009 Mike Stump <mrs@apple.com> Allow invertable -xno- style optins as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67862 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
4cc2b85861f362e49205710c19266a8ffed1a0d9 22-Mar-2009 Chris Lattner <sabre@nondot.org> add method to access a template argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67458 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a00279854afe509de84b8035587f62e221bd99f8 22-Mar-2009 Chris Lattner <sabre@nondot.org> add method to access a template argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67458 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
48fe63526e35ddaee7e98879596a569911f41319 20-Mar-2009 Sebastian Redl <sebastian.redl@getdesigned.at> Fix the Win32 VS2008 build:
- Make type declarations match the struct/class keyword of the definition.
- Move AddSignalHandler into the namespace where it belongs.
- Correctly call functions from template base.
- Some other small changes.
With this patch, LLVM and Clang should build properly and with far less noise under VS2008.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67347 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2aa4c4e0b21990367ef15cd6d42ab9f9dd9ff29f 20-Mar-2009 Sebastian Redl <sebastian.redl@getdesigned.at> Fix the Win32 VS2008 build:
- Make type declarations match the struct/class keyword of the definition.
- Move AddSignalHandler into the namespace where it belongs.
- Correctly call functions from template base.
- Some other small changes.
With this patch, LLVM and Clang should build properly and with far less noise under VS2008.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67347 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b372c1114c1eeffbd1a3f6ddc5d33e77564bfee2 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add BUILTIN_EXPECT Support/Compiler macro.
- Use for exceptional buffer conditions in raw_ostream:write to shave
off a cycle or two.

- Please rename if you have a better one.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67103 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
d697633b8cb82addebb6596c2469efc11497069f 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add BUILTIN_EXPECT Support/Compiler macro.
- Use for exceptional buffer conditions in raw_ostream:write to shave
off a cycle or two.

- Please rename if you have a better one.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67103 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
c39b80fdfc606f5df118288f4fc6b5e9c0b5ee41 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Return '*this' explicitly (instead of implicitly via
write) to expose more alias information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67070 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7ae595d67dc3a5d832d29edc28a13fb80e3d38cd 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Return '*this' explicitly (instead of implicitly via
write) to expose more alias information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67070 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
d17d74bb80d9da1712a066df40122e8584dad227 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Rework implementation of unbuffered streams so outputting
a single character requires only one branch to follow slow path.
- Never use a buffer when writing on an unbuffered stream.

- Move default buffer size to header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67066 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c1730c28cd14924c5c46867dc5edb20932b2937b 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Rework implementation of unbuffered streams so outputting
a single character requires only one branch to follow slow path.
- Never use a buffer when writing on an unbuffered stream.

- Move default buffer size to header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67066 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
89a66a96fed75796bc5e079217130b62105cb438 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Replace flush_impl with write_impl, which takes data to
write as arguments.
- Add raw_ostream::GetNumBytesInBuffer.
- Privatize buffer pointers.
- Get rid of slow and unnecessary code for writing out large strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67060 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
308eff302a9daf5bb5b21dcd81149df1bcdf8f19 17-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Replace flush_impl with write_impl, which takes data to
write as arguments.
- Add raw_ostream::GetNumBytesInBuffer.
- Privatize buffer pointers.
- Get rid of slow and unnecessary code for writing out large strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67060 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
cf2a2c6a26427733f31dd539c6ee6486ea191da2 16-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Lift out flush_nonempty.
- Flush a known non-empty buffers; enforces the interface to
flush_impl and kills off HandleFlush (which I saw no reason to be
an inline method, Chris?).

- Clarify invariant that flush_impl is only called with OutBufCur >
OutBufStart.

- This also cleary collects all places where we have to deal with the
buffer possibly not existing.

- A few more comments and fixing the unbuffered behavior remain in
this commit sequence.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67057 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
0a98b5f4ea2dbba38f70529d3ebbe5ca2f5f4a42 16-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: Lift out flush_nonempty.
- Flush a known non-empty buffers; enforces the interface to
flush_impl and kills off HandleFlush (which I saw no reason to be
an inline method, Chris?).

- Clarify invariant that flush_impl is only called with OutBufCur >
OutBufStart.

- This also cleary collects all places where we have to deal with the
buffer possibly not existing.

- A few more comments and fixing the unbuffered behavior remain in
this commit sequence.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67057 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
de75d7ffcd5ed315240cfe0c52a821cf66411eda 16-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add slow path for single character write, and use exclusively for
single characters writes outside of the fast path in raw_ostream.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67053 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
5cd6d45107f85b8e4a8a603e00b731ec126c22c9 16-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add slow path for single character write, and use exclusively for
single characters writes outside of the fast path in raw_ostream.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67053 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
9a507cd915e6460bc7dadee2185c53df326274c1 13-Mar-2009 Bill Wendling <isanbard@gmail.com> Revert r66920. It was causing failures in the self-hosting buildbot (in release
mode).

Running /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/dg.exp ...
FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/crash-narrowfunctiontest.ll
Failed with signal(SIGBUS) at line 1
while running: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/crash-narrowfunctiontest.ll -bugpoint-crashcalls -silence-passes > /dev/null
0 bugpoint 0x0035dd25 llvm::sys::SetInterruptFunction(void (*)()) + 85
1 bugpoint 0x0035e382 llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string*) + 706
2 libSystem.B.dylib 0x92f112bb _sigtramp + 43
3 libSystem.B.dylib 0xffffffff _sigtramp + 1829694831
4 bugpoint 0x00021d1c main + 92
5 bugpoint 0x00002106 start + 54
6 bugpoint 0x00000004 start + 18446744073709543220
Stack dump:
0. Program arguments: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/crash-narrowfunctiontest.ll -bugpoint-crashcalls -silence-passes

FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/misopt-basictest.ll
Failed with signal(SIGBUS) at line 1
while running: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/misopt-basictest.ll -dce -bugpoint-deletecalls -simplifycfg -silence-passes
0 bugpoint 0x0035dd25 llvm::sys::SetInterruptFunction(void (*)()) + 85
1 bugpoint 0x0035e382 llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string*) + 706
2 libSystem.B.dylib 0x92f112bb _sigtramp + 43
3 libSystem.B.dylib 0xffffffff _sigtramp + 1829694831
4 bugpoint 0x00021d1c main + 92
5 bugpoint 0x00002106 start + 54
6 bugpoint 0x00000006 start + 18446744073709543222
Stack dump:
0. Program arguments: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/misopt-basictest.ll -dce -bugpoint-deletecalls -simplifycfg -silence-passes

FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/remove_arguments_test.ll
Failed with signal(SIGBUS) at line 1
while running: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/remove_arguments_test.ll -bugpoint-crashcalls -silence-passes
0 bugpoint 0x0035dd25 llvm::sys::SetInterruptFunction(void (*)()) + 85
1 bugpoint 0x0035e382 llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string*) + 706
2 libSystem.B.dylib 0x92f112bb _sigtramp + 43
3 libSystem.B.dylib 0xffffffff _sigtramp + 1829694831
4 bugpoint 0x00021d1c main + 92
5 bugpoint 0x00002106 start + 54
Stack dump:
0. Program arguments: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/remove_arguments_test.ll -bugpoint-crashcalls -silence-passes

--- Reverse-merging (from foreign repository) r66920 into '.':
U include/llvm/Support/CallSite.h
U include/llvm/Instructions.h
U lib/Analysis/IPA/GlobalsModRef.cpp
U lib/Analysis/IPA/Andersens.cpp
U lib/Bitcode/Writer/BitcodeWriter.cpp
U lib/VMCore/Instructions.cpp
U lib/VMCore/Verifier.cpp
U lib/VMCore/AsmWriter.cpp
U lib/Transforms/Utils/LowerInvoke.cpp
U lib/Transforms/Scalar/SimplifyCFGPass.cpp
U lib/Transforms/IPO/PruneEH.cpp
U lib/Transforms/IPO/DeadArgumentElimination.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66953 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
69b4a53e15d23fa5e3d5b7d189d8eced4f97ffc5 13-Mar-2009 Bill Wendling <isanbard@gmail.com> Revert r66920. It was causing failures in the self-hosting buildbot (in release
mode).

Running /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/dg.exp ...
FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/crash-narrowfunctiontest.ll
Failed with signal(SIGBUS) at line 1
while running: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/crash-narrowfunctiontest.ll -bugpoint-crashcalls -silence-passes > /dev/null
0 bugpoint 0x0035dd25 llvm::sys::SetInterruptFunction(void (*)()) + 85
1 bugpoint 0x0035e382 llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string*) + 706
2 libSystem.B.dylib 0x92f112bb _sigtramp + 43
3 libSystem.B.dylib 0xffffffff _sigtramp + 1829694831
4 bugpoint 0x00021d1c main + 92
5 bugpoint 0x00002106 start + 54
6 bugpoint 0x00000004 start + 18446744073709543220
Stack dump:
0. Program arguments: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/crash-narrowfunctiontest.ll -bugpoint-crashcalls -silence-passes

FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/misopt-basictest.ll
Failed with signal(SIGBUS) at line 1
while running: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/misopt-basictest.ll -dce -bugpoint-deletecalls -simplifycfg -silence-passes
0 bugpoint 0x0035dd25 llvm::sys::SetInterruptFunction(void (*)()) + 85
1 bugpoint 0x0035e382 llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string*) + 706
2 libSystem.B.dylib 0x92f112bb _sigtramp + 43
3 libSystem.B.dylib 0xffffffff _sigtramp + 1829694831
4 bugpoint 0x00021d1c main + 92
5 bugpoint 0x00002106 start + 54
6 bugpoint 0x00000006 start + 18446744073709543222
Stack dump:
0. Program arguments: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/misopt-basictest.ll -dce -bugpoint-deletecalls -simplifycfg -silence-passes

FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/remove_arguments_test.ll
Failed with signal(SIGBUS) at line 1
while running: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/remove_arguments_test.ll -bugpoint-crashcalls -silence-passes
0 bugpoint 0x0035dd25 llvm::sys::SetInterruptFunction(void (*)()) + 85
1 bugpoint 0x0035e382 llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string*) + 706
2 libSystem.B.dylib 0x92f112bb _sigtramp + 43
3 libSystem.B.dylib 0xffffffff _sigtramp + 1829694831
4 bugpoint 0x00021d1c main + 92
5 bugpoint 0x00002106 start + 54
Stack dump:
0. Program arguments: bugpoint /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/test/BugPoint/remove_arguments_test.ll -bugpoint-crashcalls -silence-passes

--- Reverse-merging (from foreign repository) r66920 into '.':
U include/llvm/Support/CallSite.h
U include/llvm/Instructions.h
U lib/Analysis/IPA/GlobalsModRef.cpp
U lib/Analysis/IPA/Andersens.cpp
U lib/Bitcode/Writer/BitcodeWriter.cpp
U lib/VMCore/Instructions.cpp
U lib/VMCore/Verifier.cpp
U lib/VMCore/AsmWriter.cpp
U lib/Transforms/Utils/LowerInvoke.cpp
U lib/Transforms/Scalar/SimplifyCFGPass.cpp
U lib/Transforms/IPO/PruneEH.cpp
U lib/Transforms/IPO/DeadArgumentElimination.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66953 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b14cda3c0dea98bdd44c2f209afaf4fb36d42a8a 13-Mar-2009 Gabor Greif <ggreif@gmail.com> Second installment of "BasicBlock operands to the back"
changes.

For InvokeInst now all arguments begin at op_begin().
The Callee, Cont and Fail are now faster to get by
access relative to op_end().

This patch introduces some temporary uglyness in CallSite.
Next I'll bring CallInst up to a similar scheme and then
the uglyness will magically vanish.

This patch also exposes all the reliance of the libraries
on InvokeInst's operand ordering. I am thinking of taking
care of that too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66920 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7c751027906e033b3dd3860c114945c9019328bc 13-Mar-2009 Gabor Greif <ggreif@gmail.com> Second installment of "BasicBlock operands to the back"
changes.

For InvokeInst now all arguments begin at op_begin().
The Callee, Cont and Fail are now faster to get by
access relative to op_end().

This patch introduces some temporary uglyness in CallSite.
Next I'll bring CallInst up to a similar scheme and then
the uglyness will magically vanish.

This patch also exposes all the reliance of the libraries
on InvokeInst's operand ordering. I am thinking of taking
care of that too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66920 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
bcf8ea9554bbed7590b1e13f93de22ba57b4b853 12-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: unbuffered streams weren't being immediately flushed on
single character writes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66827 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c1c88919eee9d02fa7e39004c131492c23419c15 12-Mar-2009 Daniel Dunbar <daniel@zuster.org> raw_ostream: unbuffered streams weren't being immediately flushed on
single character writes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66827 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
535f390bc30973fdcf29f616896bd96dd49e1737 11-Mar-2009 Mon P Wang <wangmp@apple.com> Changed Allocate to use size_t instead of unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66602 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
ea01d6c540a57f57e3c7adfa444a6a1db2763bb0 11-Mar-2009 Mon P Wang <wangmp@apple.com> Changed Allocate to use size_t instead of unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66602 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
7f3030c471d32d56c1429c8d3c331306e39a2570 11-Mar-2009 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66595 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
653e289e4a1d77feeddd9748eccc42a3375bb650 11-Mar-2009 Dan Gohman <gohman@apple.com> Add an explicit keyword.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66595 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
cabb383aba8a4ce3691cbcd9a42fc7b136b7feed 11-Mar-2009 Mon P Wang <wangmp@apple.com> Fixed rounding up EltSize


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66594 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
85b0ea5f3cf581036e37fc610567281af2d65038 11-Mar-2009 Mon P Wang <wangmp@apple.com> Fixed rounding up EltSize


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66594 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
e77e434bc96f2935dcf337909c4009324fe24eaf 10-Mar-2009 Daniel Dunbar <daniel@zuster.org> PR3478: raw_ostream should not buffer stderr
- Add unbuffered flag to raw_ostream, forwarded by raw_fd_ostream and
used by raw_stderr_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66545 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
c9731c8cc385a3772503618bfbafbae214b6e452 10-Mar-2009 Daniel Dunbar <daniel@zuster.org> PR3478: raw_ostream should not buffer stderr
- Add unbuffered flag to raw_ostream, forwarded by raw_fd_ostream and
used by raw_stderr_ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66545 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7af924839140d185e4da9fa5f86a01163b0691c0 10-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add C++ marker.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66543 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
35f4c4ac458f79984950a7f06a0204e41bb668af 10-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add C++ marker.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66543 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
1779f2213f108bc688f9fe32c1fa58b95a0a4aa9 06-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add IRBuilder::CreateConstGEP{1, 2}_{32, 64}.
- Names are lame, but it seems better to be explicit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66295 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fc861d1498d377e96e21568c1dccd227df34d229 06-Mar-2009 Daniel Dunbar <daniel@zuster.org> Add IRBuilder::CreateConstGEP{1, 2}_{32, 64}.
- Names are lame, but it seems better to be explicit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66295 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f3841fcbd587c31aa9842b3f33bd57de40c9f443 04-Mar-2009 Gabor Greif <ggreif@gmail.com> ooops, forgot to include the pointless-write eliminator in my previous checkin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66081 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
5b1ea3eb232254940051f5b9a16e47fc184e2668 04-Mar-2009 Gabor Greif <ggreif@gmail.com> ooops, forgot to include the pointless-write eliminator in my previous checkin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66081 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
e97c73354101507af0bc804c5c049a084c0c0c86 04-Mar-2009 Chris Lattner <sabre@nondot.org> add some helper classes for building light-weight symbolic stack traces
that get printed when a program crashes. This is the first step of many.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66076 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
59d53057154c19389be233b17e2bbfe9962438cf 04-Mar-2009 Chris Lattner <sabre@nondot.org> add some helper classes for building light-weight symbolic stack traces
that get printed when a program crashes. This is the first step of many.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66076 91177308-0d34-0410-b5e6-96231b3b80d8
rettyStackTrace.h
c23b8719ef9d6b1220e854b37d40e9e1c48a82bc 04-Mar-2009 Gabor Greif <ggreif@gmail.com> Give sentinel traits the right to determine the policy where the sentinel is kept.
This should result in less indirect memory accesses, less dead writes and tighter code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66061 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
4087bf1df242f618107cff77b13c5a5483bb574f 04-Mar-2009 Gabor Greif <ggreif@gmail.com> Give sentinel traits the right to determine the policy where the sentinel is kept.
This should result in less indirect memory accesses, less dead writes and tighter code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66061 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
fe2cce63aa26d0916fa7be32c6bf7fa8fb059ee7 20-Feb-2009 Misha Brukman <brukman+llvm@gmail.com> Removed trailing whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65196 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
llocator.h
onstantRange.h
OTGraphTraits.h
ataFlow.h
ebug.h
warf.h
ileUtilities.h
ormat.h
raphWriter.h
RBuilder.h
nstVisitor.h
anagedStatic.h
angler.h
athExtras.h
emoryBuffer.h
utputBuffer.h
atternMatch.h
redIteratorCache.h
treams.h
tringPool.h
aw_ostream.h
bc3135e12a3fcd2f7d4bd00b05f591f2a02f1a6a 20-Feb-2009 Misha Brukman <brukman+llvm@gmail.com> Removed trailing whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65196 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
llocator.h
onstantRange.h
OTGraphTraits.h
ataFlow.h
ebug.h
warf.h
ileUtilities.h
ormat.h
raphWriter.h
RBuilder.h
nstVisitor.h
anagedStatic.h
angler.h
athExtras.h
emoryBuffer.h
utputBuffer.h
atternMatch.h
redIteratorCache.h
treams.h
tringPool.h
aw_ostream.h
ccd846b73ffce9296e392e550712926845098fab 18-Feb-2009 Chris Lattner <sabre@nondot.org> allow TimeRegion to take a potentially-null pointer to a
timer for clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64874 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
d0e5c8f75b04eb8a7ae56c21b33c0aad73b307ff 18-Feb-2009 Chris Lattner <sabre@nondot.org> allow TimeRegion to take a potentially-null pointer to a
timer for clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64874 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
13319ceffdd99d153e62011c5dda08b95e3279e3 17-Feb-2009 Devang Patel <dpatel@apple.com> The debugger sometimes lookup dynamically in the runtime to find ivar info of any Objective-C classes. It would be very helpful to debugger if the compiler encodes runtime version number in DWARF.

Add support for two additional DWARF attributes to encode Objective-C runtime version number.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64834 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
74193d7985574276506f66644ae06ab2f8db1484 17-Feb-2009 Devang Patel <dpatel@apple.com> The debugger sometimes lookup dynamically in the runtime to find ivar info of any Objective-C classes. It would be very helpful to debugger if the compiler encodes runtime version number in DWARF.

Add support for two additional DWARF attributes to encode Objective-C runtime version number.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64834 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
e2a8dfefe5740377dbc323a84337c45d37410ea8 16-Feb-2009 Daniel Dunbar <daniel@zuster.org> Add llvm::RoundUpToAlignment.
- No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64691 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
305a1bf30995859188bf274d442b3a756c6e65ca 16-Feb-2009 Daniel Dunbar <daniel@zuster.org> Add llvm::RoundUpToAlignment.
- No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64691 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
3f4c81de0ac7ff75e538dd68ef4ecfa204760bc9 06-Feb-2009 Ted Kremenek <kremenek@apple.com> Deallocate() methods now take a 'const void*' instead of a 'void *', matching observed behavior with how 'delete[]' can be used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63956 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
551b5a0ab788f3cec12a5897aef6077e78fd88a8 06-Feb-2009 Ted Kremenek <kremenek@apple.com> Deallocate() methods now take a 'const void*' instead of a 'void *', matching observed behavior with how 'delete[]' can be used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63956 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
603884021010e227db6cc3fcc4c7f5e555e4a8dc 03-Feb-2009 Chris Lattner <sabre@nondot.org> add a method to BumpPtrAllocator that allows allocating elements
with a specified alignment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63629 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
c0bf73d42000d695bb1a2a57ef4b84080be14c44 03-Feb-2009 Chris Lattner <sabre@nondot.org> add a method to BumpPtrAllocator that allows allocating elements
with a specified alignment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63629 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
d64e0eb094a108bdcdf51328425904042aa6122b 02-Feb-2009 Mike Stump <mrs@apple.com> Improve -fno-opt style option processing to not require an extra
option to make the -fno- form on the option. We also document the new
form in the CommandLine documentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63559 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
3567d38441bcedf4050b94f8d8331ba84559da81 02-Feb-2009 Mike Stump <mrs@apple.com> Improve -fno-opt style option processing to not require an extra
option to make the -fno- form on the option. We also document the new
form in the CommandLine documentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63559 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
d6f175b3ec8d40e33ab8110020ca8feb98295834 30-Jan-2009 Mike Stump <mrs@apple.com> Add opposite_of and inverse_opt to support -fno- style options. This
is necessary for eventual gcc commmand line compatibility.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63384 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
66fcfa45c5f793f72d6b37a8343ab82d2139905b 30-Jan-2009 Mike Stump <mrs@apple.com> Add opposite_of and inverse_opt to support -fno- style options. This
is necessary for eventual gcc commmand line compatibility.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63384 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9c27886dd5d504f2b03c6fcb57aba23e5e44c4fa 26-Jan-2009 Ted Kremenek <kremenek@apple.com> Add method raw_fd_ostream::seek() for random access within a file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63044 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
dbb64b0cf3e02658733e3e227fb704ee5a0bff91 26-Jan-2009 Ted Kremenek <kremenek@apple.com> Add method raw_fd_ostream::seek() for random access within a file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63044 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
3b64c6bc2916bc62a99ef8a2995a426d994e1a04 23-Jan-2009 Devang Patel <dpatel@apple.com> Introduce two DWARF attribute extentions DW_AT_APPLE_optimized, DW_AT_APPLE_flags.

DW_AT_APPLE_optimized flag is set when a compile_unit is optimized. The debugger takes advantage of this information some way.

DW_AT_APPLE_flags encodes command line options when certain env. variable is set. This is used by build engineers to track various gcc command lines used by by a project, irrespective of whether the project used makefile, Xcode or something else.

llvm-gcc patch is next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62888 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
a880b1e4f308b64f45997f6eb5f8cd64a88d7a96 23-Jan-2009 Devang Patel <dpatel@apple.com> Introduce two DWARF attribute extentions DW_AT_APPLE_optimized, DW_AT_APPLE_flags.

DW_AT_APPLE_optimized flag is set when a compile_unit is optimized. The debugger takes advantage of this information some way.

DW_AT_APPLE_flags encodes command line options when certain env. variable is set. This is used by build engineers to track various gcc command lines used by by a project, irrespective of whether the project used makefile, Xcode or something else.

llvm-gcc patch is next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62888 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
edc4d69917df7dc34543adf719d5c93249fd5e27 22-Jan-2009 Gabor Greif <ggreif@gmail.com> introduce a useful abstraction to find out if a Use is in the call position of an instruction

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62788 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6be9a1b0acfb99378d1b4027d13949b46a09392e 22-Jan-2009 Gabor Greif <ggreif@gmail.com> introduce a useful abstraction to find out if a Use is in the call position of an instruction

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62788 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
541ed9fd02ea48d2739f4a9dd681ba2d5da26886 21-Jan-2009 Dale Johannesen <dalej@apple.com> Do not use host floating point types when emitting
ASCII IR; loading and storing these can change the
bits of NaNs on some hosts. Remove or add warnings
at a few other places using host floating point;
this is a bad thing to do in general.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62712 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c6858814e070857f406f20d3fd92240c1326948d 21-Jan-2009 Dale Johannesen <dalej@apple.com> Do not use host floating point types when emitting
ASCII IR; loading and storing these can change the
bits of NaNs on some hosts. Remove or add warnings
at a few other places using host floating point;
this is a bad thing to do in general.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62712 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
018ec84b32cfe87941e496faa410a0aaa445d0cd 20-Jan-2009 Devang Patel <dpatel@apple.com> indentation...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62603 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
c804eb0983da5c591dead149ec383bd7773fae9b 20-Jan-2009 Devang Patel <dpatel@apple.com> indentation...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62603 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
6906ba52f050a6608502987e754a622f5c5111a6 20-Jan-2009 Devang Patel <dpatel@apple.com> Need only one set of debug info versions enum.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62602 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
b49710a37d1ac49ede305158ac5e1a2b094d8218 20-Jan-2009 Devang Patel <dpatel@apple.com> Need only one set of debug info versions enum.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62602 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
7543f7fae3cbd95df084d4da8c545531e7b93163 17-Jan-2009 Gabor Greif <ggreif@gmail.com> make comparisons a bist faster

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62428 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
75c4be746eb404d012c2c272c1bbfc0315a21693 17-Jan-2009 Gabor Greif <ggreif@gmail.com> make comparisons a bist faster

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62428 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7059d47a6e1a378232dce3e47b51434dec0ea608 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Support for multi-valued options in CommandLine

Makes possible to specify options that take multiple arguments (a-la
-sectalign on Darwin). See documentation for details.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62372 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ad6fc7f5ae104cd3a200599bbb9c6a410f1bf038 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Support for multi-valued options in CommandLine

Makes possible to specify options that take multiple arguments (a-la
-sectalign on Darwin). See documentation for details.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62372 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2388a588bdf32610e18a66c0c6ef248087fd1cdc 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Registry.h should not depend on CommandLine.h.

Split Support/Registry.h into two files so that we have less to
recompile every time CommandLine.h is changed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62312 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
egistryParser.h
61fc6c80cf9d50c19fe46decedc592251918d78d 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Registry.h should not depend on CommandLine.h.

Split Support/Registry.h into two files so that we have less to
recompile every time CommandLine.h is changed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62312 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
egistryParser.h
5c1799b29375fcd899f67a31fb4dda4ef3e2127f 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Delete trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62307 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
26e9aed70cc520d39e32813513217163ff254e72 16-Jan-2009 Mikhail Glushenkov <foldr@codedgers.com> Delete trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62307 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
bb46f52027416598a662dc1c58f48d9d56b1a65b 15-Jan-2009 Rafael Espindola <rafael.espindola@gmail.com> Add the private linkage.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62279 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
a168fc98dedfc8cac01c34f84b699fe5f48ad76d 15-Jan-2009 Rafael Espindola <rafael.espindola@gmail.com> Add the private linkage.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62279 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
07c2a78c2b9bf2500ece856c2df2dc043db9acb6 14-Jan-2009 Ted Kremenek <kremenek@apple.com> Add member template MallocAllocator::Allocate(Num) (to match the same function in BumpPtrAllocator).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62202 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
28b0379d48ac43c33abbc698ff43423066fc23f6 14-Jan-2009 Ted Kremenek <kremenek@apple.com> Add member template MallocAllocator::Allocate(Num) (to match the same function in BumpPtrAllocator).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62202 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
c775ea13762224301e8242b9d3eaacd974fa6524 12-Jan-2009 Rafael Espindola <rafael.espindola@gmail.com> Remove some dead code from the days llvm had type planes.

There might be more dead code, but with llvm-gcc bootstrap broken on linux x86-64 it is had to test :-(



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62088 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
7de44b174b815e6b8bf59e77daa50222ea59d8d3 12-Jan-2009 Rafael Espindola <rafael.espindola@gmail.com> Remove some dead code from the days llvm had type planes.

There might be more dead code, but with llvm-gcc bootstrap broken on linux x86-64 it is had to test :-(



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62088 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
0e182c39623a23dae76f075f8e6e5cf5629a19ac 11-Jan-2009 Gabor Greif <ggreif@gmail.com> drats! remove tabs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62056 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
1ccab77bc185f79eb845df99910a430ebf927e72 11-Jan-2009 Gabor Greif <ggreif@gmail.com> drats! remove tabs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62056 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
255b26ea3529ca096313c85dcf006565c7e916f9 11-Jan-2009 Gabor Greif <ggreif@gmail.com> simplify CallSite helper class to not consult the Instruction's
opcode on each delegation.
Instead the information is cached on construction and the cached flag used thereafter.
Introduced two predicates: isCall and isInvoke.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62055 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
c7c50933095918ff3f05ec5e279e4c0e2c7679e8 11-Jan-2009 Gabor Greif <ggreif@gmail.com> simplify CallSite helper class to not consult the Instruction's
opcode on each delegation.
Instead the information is cached on construction and the cached flag used thereafter.
Introduced two predicates: isCall and isInvoke.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62055 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
71c3f459905097a54b9bd354b1e18d74bee87721 08-Jan-2009 Chris Lattner <sabre@nondot.org> remove DebugInfoBuilder, it has been subsumed by Analysis/DebugInfo.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61898 91177308-0d34-0410-b5e6-96231b3b80d8
ebugInfoBuilder.h
ed94023eb3a5ea003b8c2d6ab617ba159723154a 08-Jan-2009 Chris Lattner <sabre@nondot.org> remove DebugInfoBuilder, it has been subsumed by Analysis/DebugInfo.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61898 91177308-0d34-0410-b5e6-96231b3b80d8
ebugInfoBuilder.h
b9f08a00af689eb54d25f4cec9a71899d1984f56 06-Jan-2009 Chris Lattner <sabre@nondot.org> no need to negate the APInt for 0.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61777 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
123706b94e73869f155e1edc7557da09821fa24b 06-Jan-2009 Chris Lattner <sabre@nondot.org> no need to negate the APInt for 0.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61777 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
159c35b3ee500b521d682cf585e61dea2858d0dc 06-Jan-2009 Chris Lattner <sabre@nondot.org> Change m_ConstantInt and m_SelectCst to take their constant integers
as template arguments instead of as instance variables, exposing more
optimization opportunities to the compiler earlier.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61776 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
73c1ddb6e84c868ef3568039a7ff3ccfed79ce8c 06-Jan-2009 Chris Lattner <sabre@nondot.org> Change m_ConstantInt and m_SelectCst to take their constant integers
as template arguments instead of as instance variables, exposing more
optimization opportunities to the compiler earlier.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61776 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
06ebbcc71de34fdbf6e652b2b48a2d50b6331ddc 06-Jan-2009 Chris Lattner <sabre@nondot.org> make m_ConstantInt(int64_t) safely match ConstantInt's that are larger than i64.
This fixes an instcombine crash on PR3235.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61775 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
e9c72651984309c9d31ef5d1d2dd4410a2662be5 06-Jan-2009 Chris Lattner <sabre@nondot.org> make m_ConstantInt(int64_t) safely match ConstantInt's that are larger than i64.
This fixes an instcombine crash on PR3235.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61775 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
d68a07650cdb2e18f18f362ba533459aa10e01b6 05-Jan-2009 Dan Gohman <gohman@apple.com> Tidy up #includes, deleting a bunch of unnecessary #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61715 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ataFlow.h
ebugInfoBuilder.h
LF.h
RBuilder.h
nstVisitor.h
utexGuard.h
assNameParser.h
redIteratorCache.h
c24a3f87f866e96b2a9ad691c78113651eaa77d1 05-Jan-2009 Dan Gohman <gohman@apple.com> Tidy up #includes, deleting a bunch of unnecessary #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61715 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ataFlow.h
ebugInfoBuilder.h
LF.h
RBuilder.h
nstVisitor.h
utexGuard.h
assNameParser.h
redIteratorCache.h
723a59c17eecad082f0c734d29553a5d392c24b2 04-Jan-2009 Chris Lattner <sabre@nondot.org> add #include guards, thanks Dan.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61619 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
704cb8b1f8ad502730ce1d6d9e37f3287ca28676 04-Jan-2009 Chris Lattner <sabre@nondot.org> add #include guards, thanks Dan.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61619 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
630fcb86785f96501126e52009619b475403dc62 02-Jan-2009 Misha Brukman <brukman+llvm@gmail.com> * Alphabetized system headers per the style guide
* Minor spacing and comment cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61590 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
atternMatch.h
ebed46a84af0bbb0de5843548e27a0a966988841 02-Jan-2009 Misha Brukman <brukman+llvm@gmail.com> * Alphabetized system headers per the style guide
* Minor spacing and comment cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61590 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
atternMatch.h
0401245ab3c0da232322a0cca7edaeff93dd6ff3 09-Dec-2008 Chris Lattner <sabre@nondot.org> newline at end of phile


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60744 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
6211f82408c4108f637f86aa5a4ed23f4aa23344 09-Dec-2008 Chris Lattner <sabre@nondot.org> newline at end of phile


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60744 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
312b9a17e6e2af826f95722cbb4e31afaa9f2933 09-Dec-2008 Chris Lattner <sabre@nondot.org> pred_iterator got a lot slower since use-diet landed. This is a
really simple cache class for these queries. Hopefully this can
be removed if pred_iterator speeds back up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60742 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
16b5e8e3eca00d341fd5ec8c6267a4dd45146820 09-Dec-2008 Chris Lattner <sabre@nondot.org> pred_iterator got a lot slower since use-diet landed. This is a
really simple cache class for these queries. Hopefully this can
be removed if pred_iterator speeds back up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60742 91177308-0d34-0410-b5e6-96231b3b80d8
redIteratorCache.h
d75ba1c3573d3d5146d0abe8cb376dca94be94d5 04-Dec-2008 Ted Kremenek <kremenek@apple.com> Have raw_fd_ostream keep track of the position in the file to make tell() go faster by not requiring a flush().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60560 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e6d26895fcc91e461c16fdce0b4641e132a4b768 04-Dec-2008 Ted Kremenek <kremenek@apple.com> Have raw_fd_ostream keep track of the position in the file to make tell() go faster by not requiring a flush().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60560 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
5984680c1fe7ad98381154c26f9c009e4c91b08c 26-Nov-2008 Ted Kremenek <kremenek@apple.com> Add 'tell' method to raw_fd_ostream that clients can use to query the current location in the file the stream is writing to.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60085 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
28aadbcab47e37983a54872564f3ad5bffe41df9 26-Nov-2008 Ted Kremenek <kremenek@apple.com> Add 'tell' method to raw_fd_ostream that clients can use to query the current location in the file the stream is writing to.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60085 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
08d67c77633c781afda691a1bea41e25015ed634 26-Nov-2008 Nuno Lopes <nunoplopes@sapo.pt> change AnnotationManager to use 'const char*' instead of std::string. this fixes the leakage of those strings and avoids the creation of such strings in static cosntructors (should result in a little improvement of startup time)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60064 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
e53fc63c540057b92ae56315ae834774f4eecde5 26-Nov-2008 Nuno Lopes <nunoplopes@sapo.pt> change AnnotationManager to use 'const char*' instead of std::string. this fixes the leakage of those strings and avoids the creation of such strings in static cosntructors (should result in a little improvement of startup time)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60064 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
2cd91804ec4d631cc432dac2828d8ee0b1a3390f 23-Nov-2008 Scott Michel <scottm@aero.org> Roll back rev 59890, since Chris says this can never happen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59914 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
cbd6abcf07687ef75d1ef6d4c0ce8e5c59113a34 23-Nov-2008 Scott Michel <scottm@aero.org> Roll back rev 59890, since Chris says this can never happen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59914 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
bab6436b1726a2db21ab1e024540e98c02a5a009 23-Nov-2008 Scott Michel <scottm@aero.org> Check for NULL before traversing the isa<> type hierarchy checking with a
NULL-based reference.

Note: Encountered this a few times on Tiger + gcc 4.0.1. Might just be a
platform-specific compiler issue, but it's good defensive programming in any
case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59890 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
bff8abac78f04cdce70a5fc1fdcca0a1a0f67cef 23-Nov-2008 Scott Michel <scottm@aero.org> Check for NULL before traversing the isa<> type hierarchy checking with a
NULL-based reference.

Note: Encountered this a few times on Tiger + gcc 4.0.1. Might just be a
platform-specific compiler issue, but it's good defensive programming in any
case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59890 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
16062ca93add4d13b80d0ad78fa35b4bc9ecae53 19-Nov-2008 Chris Lattner <sabre@nondot.org> add a write method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59595 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
e97b669d9953385c5c7d9b3585d3de3a602e128b 19-Nov-2008 Chris Lattner <sabre@nondot.org> add a write method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59595 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
a236c89ee3b920751a0abca593b1603515a5a43a 16-Nov-2008 Chris Lattner <sabre@nondot.org> add a new m_Specific pattern that matches only if we have a specific Value*.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59393 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
b2466573422fd877d3d44a7294e3d9b085e080fc 16-Nov-2008 Chris Lattner <sabre@nondot.org> add a new m_Specific pattern that matches only if we have a specific Value*.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59393 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
67abc10616618b7b7f3ebd873d4903893bf90544 16-Nov-2008 Chris Lattner <sabre@nondot.org> add a new template for matching a select between two constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59391 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
e10a5cbf72ae7f2e85b0bf8358f5727c0256371a 16-Nov-2008 Chris Lattner <sabre@nondot.org> add a new template for matching a select between two constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59391 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
ac44d25bdd28c923756e2603560c132c0ea2eb91 15-Nov-2008 Nick Lewycky <nicholas@mxc.ca> Clean up some strange whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59373 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b4c6716dc6677861e90293d41aa5a4399ba8a629 15-Nov-2008 Nick Lewycky <nicholas@mxc.ca> Clean up some strange whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59373 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0d9eb9b4917340acbfc831890655b8e9724959f6 13-Nov-2008 Daniel Dunbar <daniel@zuster.org> Add Binary flag to raw_fd_ostream constructor.

Document raw_fd_ostream's treatment of "-".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59219 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
8c009a31e74cd2d6f42a21a031e3a14c7882e833 13-Nov-2008 Daniel Dunbar <daniel@zuster.org> Add Binary flag to raw_fd_ostream constructor.

Document raw_fd_ostream's treatment of "-".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59219 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
476527a19daada771579d7099eb53125d814edc1 31-Oct-2008 Anton Korobeynikov <asl@math.spbu.ru> Symbol visibility is unsupported on cygwin too.
Patch by Jay Foad!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58520 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
ee7f73b009784b73074eeb80a284afe30cf2a77a 31-Oct-2008 asl <asl@91177308-0d34-0410-b5e6-96231b3b80d8> Symbol visibility is unsupported on cygwin too.
Patch by Jay Foad!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58520 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
1975d03183966698650042e7a2bbd7198d276cfb 30-Oct-2008 Dan Gohman <gohman@apple.com> Canonicalize sext(i1) to i1?-1:0, and update various instcombine
optimizations accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58457 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
35b76161bc300b02acfab19af615cfea03e929ac 30-Oct-2008 Dan Gohman <gohman@apple.com> Canonicalize sext(i1) to i1?-1:0, and update various instcombine
optimizations accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58457 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
a872aae731a5e88de1a61df5855645887ea07e66 30-Oct-2008 Bill Wendling <isanbard@gmail.com> Revert r58411. The user needs to #define this when using the JITMemoryManager.h header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58414 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
26e2359d047390ae916adda2cafdae2eac797da3 30-Oct-2008 Bill Wendling <isanbard@gmail.com> Revert r58411. The user needs to #define this when using the JITMemoryManager.h header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58414 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
fb309cb2d65d9fcf1289aa636c1b9860dc190cac 30-Oct-2008 Bill Wendling <isanbard@gmail.com> Revert part of r58048. It was breaking on SnowLeopard claiming that
"__STDC_CONSTANT_MACROS" needs to be #defined first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58411 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
adbbc299aaaa6f48c40de73471b882d18467f0cc 30-Oct-2008 Bill Wendling <isanbard@gmail.com> Revert part of r58048. It was breaking on SnowLeopard claiming that
"__STDC_CONSTANT_MACROS" needs to be #defined first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58411 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
5a9a4bf7f27d86df83544387b34543f0a8112c1d 28-Oct-2008 Dan Gohman <gohman@apple.com> Fix the name of the include guard to match the filename.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58310 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
085666d3e8339db5605e0afc9db38aa96f8064c6 28-Oct-2008 Dan Gohman <gohman@apple.com> Fix the name of the include guard to match the filename.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58310 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
cd6213233ea584531cf4c137db838551a3c454ff 25-Oct-2008 Oscar Fuentes <ofv@wanadoo.es> CMake: Sync'ed DataTypes.h.cmake with DataTypes.h.in.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58131 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
2cfb83f18582a44729c5f0958b241859e20d23cd 25-Oct-2008 Oscar Fuentes <ofv@wanadoo.es> CMake: Sync'ed DataTypes.h.cmake with DataTypes.h.in.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58131 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
43d1f02b547b146d81abeb0ed0f88628f0fdc7dc 24-Oct-2008 Ted Kremenek <kremenek@apple.com> Added raw_fd_ostream::close().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58052 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e02443dccb48b9ff5f374e96ba3f32590374ec30 24-Oct-2008 Ted Kremenek <kremenek@apple.com> Added raw_fd_ostream::close().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58052 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
93fbe75a9431e49929c23847880ba61324013ee6 24-Oct-2008 Steve Naroff <snaroff@apple.com> Changes to make the Windows build work...
- Add a file to the VC++ project.
- Make sure the clang driver links against the Transforms library.
- Incorporate changes from patch by Dan Gohman.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58048 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
1d54d173e5af9c8314e00ac42bcd79df4781f786 24-Oct-2008 Steve Naroff <snaroff@apple.com> Changes to make the Windows build work...
- Add a file to the VC++ project.
- Make sure the clang driver links against the Transforms library.
- Incorporate changes from patch by Dan Gohman.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58048 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
39ac2cbcd8b74db4f86ea4a995a07d810e56af92 23-Oct-2008 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce INT64_C macro and unbreak LLVM on MSVC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58039 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
5a6d653fde09479bdd91213f5442a7c81e3efb30 23-Oct-2008 Argiris Kirtzidis <akyrtzi@gmail.com> Introduce INT64_C macro and unbreak LLVM on MSVC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58039 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
48534b31d8bc5a68ba152fcdb905bf266def5268 21-Oct-2008 Daniel Dunbar <daniel@zuster.org> Clear raw_fd_ostream error string on success and explain behavior in
documentation.

Add C++ header marker.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57923 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
aa6fdf94d6c7764319c267712850bc05a4be1e7d 21-Oct-2008 Daniel Dunbar <daniel@zuster.org> Clear raw_fd_ostream error string on success and explain behavior in
documentation.

Add C++ header marker.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57923 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
76dba94dfa02acd3787876d1d463b46a6251acd5 02-Oct-2008 Daniel Dunbar <daniel@zuster.org> Rename IRBuilder::IsNonNull -> IsNotNull in response to feedback.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56953 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b1127bd9ee7b4e7c26a341f735771b75193df196 02-Oct-2008 Daniel Dunbar <daniel@zuster.org> Rename IRBuilder::IsNonNull -> IsNotNull in response to feedback.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56953 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
7a3ec1e148c4985775588949d03d9d4d108dec6d 28-Sep-2008 Daniel Dunbar <daniel@zuster.org> Add IRBuilder::{CreateIsNull, CreateIsNonNull} helper methods.
- I'm open to the idea that these could have better names. I think
these read better than CreateEQNull and CreateNENull.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56757 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
675bb55b023f0449f8b7c5f4c5d1fe21a34e240d 28-Sep-2008 Daniel Dunbar <daniel@zuster.org> Add IRBuilder::{CreateIsNull, CreateIsNonNull} helper methods.
- I'm open to the idea that these could have better names. I think
these read better than CreateEQNull and CreateNENull.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56757 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
0598866c052147c31b808391f58434ce3dbfb838 25-Sep-2008 Devang Patel <dpatel@apple.com> Large mechanical patch.

s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g

This sets the stage
- to implement function notes as function attributes and
- to distinguish between function attributes and return value attributes.

This requires corresponding changes in llvm-gcc and clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56622 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
d222f86d9d51a2d6299d43fb876099869430bf0f 25-Sep-2008 Devang Patel <dpatel@apple.com> Large mechanical patch.

s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g

This sets the stage
- to implement function notes as function attributes and
- to distinguish between function attributes and return value attributes.

This requires corresponding changes in llvm-gcc and clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56622 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
eaf42abab6d465c38891345d999255871cf03943 24-Sep-2008 Devang Patel <dpatel@apple.com> s/ParameterAttributes/Attributes/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e480dfa79c90cf5a85680bc1ff503f21e6439a72 24-Sep-2008 Devang Patel <dpatel@apple.com> s/ParameterAttributes/Attributes/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3d01fc7de86c75926e4e5ac7cc49f0116018893d 22-Sep-2008 Oscar Fuentes <ofv@wanadoo.es> Initial support for the CMake build system.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
00905d5339fd277781c7393112f80febe86b2945 22-Sep-2008 Oscar Fuentes <ofv@wanadoo.es> Initial support for the CMake build system.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.cmake
5b8dbf839ba8f586e2823744dc695acf57480c5f 02-Sep-2008 Nuno Lopes <nunoplopes@sapo.pt> plug memleak: destroy internal buffer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55632 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
183f31553d17331a8dc9eef8fd1c75dbcd573e81 02-Sep-2008 Nuno Lopes <nunoplopes@sapo.pt> plug memleak: destroy internal buffer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55632 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1505cdbcea1e59b6b72fcacd9103e23adbce68f1 27-Aug-2008 Evan Cheng <evan.cheng@apple.com> Add DebugInfoBuilder. Patch by Talin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55409 91177308-0d34-0410-b5e6-96231b3b80d8
ebugInfoBuilder.h
253691baba20c13a8ea55ec0a27eb235fd57f265 27-Aug-2008 Evan Cheng <evan.cheng@apple.com> Add DebugInfoBuilder. Patch by Talin!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55409 91177308-0d34-0410-b5e6-96231b3b80d8
ebugInfoBuilder.h
4ac67ef47ada2160d2a6f2340743b624c6e16424 26-Aug-2008 Ted Kremenek <kremenek@apple.com> Grammar fix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55371 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
6fbdabda0de8e53f01ca3f6f8cb34afc0392dc31 26-Aug-2008 Ted Kremenek <kremenek@apple.com> Grammar fix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55371 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
3d4866e68338c5c5d7b9a3130a3db5b12658776c 26-Aug-2008 Ted Kremenek <kremenek@apple.com> Added "str()" method to raw_string_ostream.
str() mirrors the same method in std::ostringstream.
str() flushes the buffered stream contents to string and returns a reference to the string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55370 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
798ae51fba207acd39b11a24ab3e417cdc759d98 26-Aug-2008 Ted Kremenek <kremenek@apple.com> Added "str()" method to raw_string_ostream.
str() mirrors the same method in std::ostringstream.
str() flushes the buffered stream contents to string and returns a reference to the string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55370 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
78a2812538d871a62d90f53ed66d26198876d011 24-Aug-2008 Chris Lattner <sabre@nondot.org> Add raw_stream adaptors that write into an std::string and SmallVector/SmallString.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55265 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
a37b761c060c30b8e4c8183e4f4e535891aebf49 24-Aug-2008 Chris Lattner <sabre@nondot.org> Add raw_stream adaptors that write into an std::string and SmallVector/SmallString.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55265 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
944fac71e082cc2664cc71b4d3f6c72bab7143fb 24-Aug-2008 Chris Lattner <sabre@nondot.org> Switch the asmprinter (.ll) and all the stuff it requires over to
use raw_ostream instead of std::ostream. Among other goodness,
this speeds up llvm-dis of kc++ with a release build from 0.85s
to 0.49s (88% faster).

Other interesting changes:
1) This makes Value::print be non-virtual.
2) AP[S]Int and ConstantRange can no longer print to ostream directly,
use raw_ostream instead.
3) This fixes a bug in raw_os_ostream where it didn't flush itself
when destroyed.
4) This adds a new SDNode::print method, instead of only allowing "dump".


A lot of APIs have both std::ostream and raw_ostream versions, it would
be useful to go through and systematically anihilate the std::ostream
versions.

This passes dejagnu, but there may be minor fallout, plz let me know if
so and I'll fix it.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
aw_ostream.h
1fefaacfde9c8c1e88d97758b0b3a6aa587698c8 24-Aug-2008 Chris Lattner <sabre@nondot.org> Switch the asmprinter (.ll) and all the stuff it requires over to
use raw_ostream instead of std::ostream. Among other goodness,
this speeds up llvm-dis of kc++ with a release build from 0.85s
to 0.49s (88% faster).

Other interesting changes:
1) This makes Value::print be non-virtual.
2) AP[S]Int and ConstantRange can no longer print to ostream directly,
use raw_ostream instead.
3) This fixes a bug in raw_os_ostream where it didn't flush itself
when destroyed.
4) This adds a new SDNode::print method, instead of only allowing "dump".


A lot of APIs have both std::ostream and raw_ostream versions, it would
be useful to go through and systematically anihilate the std::ostream
versions.

This passes dejagnu, but there may be minor fallout, plz let me know if
so and I'll fix it.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
aw_ostream.h
b2560526d5f6d2f9cc3698244dbb1f4861dc8efc 23-Aug-2008 Chris Lattner <sabre@nondot.org> Split format() out to its own file, add support for formatting
up to three values in one call.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55251 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
aw_ostream.h
1d482273a77184434fa5cc34b2dd6911704e757b 23-Aug-2008 Chris Lattner <sabre@nondot.org> Split format() out to its own file, add support for formatting
up to three values in one call.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55251 91177308-0d34-0410-b5e6-96231b3b80d8
ormat.h
aw_ostream.h
0958ab0fd1fe8606f15ce38a7b893c6b74dc2aad 23-Aug-2008 Chris Lattner <sabre@nondot.org> conditionalize this to work on windows, untested but it should work
according to the intarnetz


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55248 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
023f06cae09dec84e18d9ed701eaab8984f6cbf3 23-Aug-2008 Chris Lattner <sabre@nondot.org> conditionalize this to work on windows, untested but it should work
according to the intarnetz


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55248 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
097af7fc8f8688cc21453a5561347f14ca7c5771 23-Aug-2008 Chris Lattner <sabre@nondot.org> add a simple mechanism for formatted output. This gives raw_ostream's
all the power and risk of fprintf format strings. Use them like this:

OS << format("%10.4f", 42.0) << "\n" << format("%x", 42) << '\n';



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55246 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
f9402fe3bc2eead3f6c62eec05854498b46e68b0 23-Aug-2008 Chris Lattner <sabre@nondot.org> add a simple mechanism for formatted output. This gives raw_ostream's
all the power and risk of fprintf format strings. Use them like this:

OS << format("%10.4f", 42.0) << "\n" << format("%x", 42) << '\n';



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55246 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
f46dc79ac502f6ed06dea3ba558bcfcc49061114 22-Aug-2008 Nicolas Geoffray <nicolas.geoffray@lip6.fr> Also overload for char, since the "char" type depends on the host.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55173 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
9754964a4c015e07f73f9fbe0853e12e4581203f 22-Aug-2008 Nicolas Geoffray <nicolas.geoffray@lip6.fr> Also overload for char, since the "char" type depends on the host.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55173 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1f83b02c62380f5ac5502eccc45d7b6203a7ea93 22-Aug-2008 Owen Anderson <resistor@mac.com> Overload for both signed and unsigned char.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55171 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7921fd6770ecca5b4c488218d5d4ba65d51ab7e2 22-Aug-2008 Owen Anderson <resistor@mac.com> Overload for both signed and unsigned char.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55171 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
66b17ba0d263442b8b4e82aaa08acc0df85e1787 21-Aug-2008 Owen Anderson <resistor@mac.com> Move non-trivial methods out of line to avoid code-size bloat.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55138 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1046f62410b39acfe520af2e6b561831c8c2d4f5 21-Aug-2008 Owen Anderson <resistor@mac.com> Move non-trivial methods out of line to avoid code-size bloat.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55138 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
89a1a85913fb559c7e0266570738fd9cdf616fa3 21-Aug-2008 Owen Anderson <resistor@mac.com> Implement operator<< in terms of basic types rather than [u]int*_t, which is better for portability. There might be some way to factor this all with metaprogramming magic, but I'm not sure how offhand.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55114 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e1814c40c5fa57dd3f03e1eab9ebc5ef2533750e 21-Aug-2008 Owen Anderson <resistor@mac.com> Implement operator<< in terms of basic types rather than [u]int*_t, which is better for portability. There might be some way to factor this all with metaprogramming magic, but I'm not sure how offhand.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55114 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
afc802dc7d963a2cb46f1b0c1f1b0faa5e1dca2a 21-Aug-2008 Eli Friedman <eli.friedman@gmail.com> Remove size_t operator; this unbreaks the build on Linux. Committing on
the suggestion of resistor.

If this breaks some other platform, please go ahead and back this out.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55106 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
e2bf6a471b40099b6cbf3176687e93faaddede2c 21-Aug-2008 Eli Friedman <eli.friedman@gmail.com> Remove size_t operator; this unbreaks the build on Linux. Committing on
the suggestion of resistor.

If this breaks some other platform, please go ahead and back this out.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55106 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
cb3718832375a581c5ea23f15918f3ea447a446c 21-Aug-2008 Owen Anderson <resistor@mac.com> Use raw_ostream throughout the AsmPrinter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55092 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
847b99b2df4534498b514c439324e7c60de5c3b7 21-Aug-2008 Owen Anderson <resistor@mac.com> Use raw_ostream throughout the AsmPrinter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55092 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
071acf4279abb72e0accc6b76212ec8959c6b637 19-Aug-2008 Chris Lattner <sabre@nondot.org> add raw_ostream method for emitting an unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54972 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
7549d88872b49c5cb143c8c6654d573552ba58fc 19-Aug-2008 Chris Lattner <sabre@nondot.org> add raw_ostream method for emitting an unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54972 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
8715367182244e784b9f5688baf1ed607768e687 17-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> Don't require Registry specializations to define random static variables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54902 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
f1bbd1f3e1067c0494af9527f06dc3da265930ae 17-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> Don't require Registry specializations to define random static variables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54902 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
94fb5f2a7066c427a9d3dac10a33ccbd02aac467 17-Aug-2008 Cedric Venet <cedric.venet@laposte.net> Make it compile on VC2005:
- update VC projects.
- Add an overload to llvm::Stream for <<, since std::hex and std::dec have type std::ios_base& (*)(std::ios_base&) in VC++. (templating the function don't work, due to ambiguities)
- add ../ on several include in X86/AsmPrinter/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54898 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
9612506854ed28726adf97e849d06964ad2ff99d 17-Aug-2008 Cédric Venet <cedric.venet@laposte.net> Make it compile on VC2005:
- update VC projects.
- Add an overload to llvm::Stream for <<, since std::hex and std::dec have type std::ios_base& (*)(std::ios_base&) in VC++. (templating the function don't work, due to ambiguities)
- add ../ on several include in X86/AsmPrinter/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54898 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
b6c8a4098fd23c21d6cda33b09b99b5a0ac1e13f 17-Aug-2008 Nick Lewycky <nicholas@mxc.ca> Fix build on GCC 4.3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54870 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
3ff533b461c08af6447cae678797ae7973c78730 17-Aug-2008 Nick Lewycky <nicholas@mxc.ca> Fix build on GCC 4.3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54870 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
07f51f788e1dff2982ff0aae7c2ea3d00e48cc61 17-Aug-2008 Chris Lattner <sabre@nondot.org> add support for a cout/cerr analog (outs()/errs()) as well as
a simple adaptor class to give raw output capabilities to
something that wants to write to an ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54865 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
050c961c067bb454d704641603db9fac097592ae 17-Aug-2008 Chris Lattner <sabre@nondot.org> add support for a cout/cerr analog (outs()/errs()) as well as
a simple adaptor class to give raw output capabilities to
something that wants to write to an ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54865 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
d497df5cf5d977522814acef72b8b65f1774408e 17-Aug-2008 Chris Lattner <sabre@nondot.org> rename OutputData to 'write' to match ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54857 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
812212cdbd7e50e12ccec5e96ee91aa4d19aa867 17-Aug-2008 Chris Lattner <sabre@nondot.org> rename OutputData to 'write' to match ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54857 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
66a6b8be97a5d014a0cb710ed8e36c1fe9f735f5 17-Aug-2008 Chris Lattner <sabre@nondot.org> remove accidental comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54856 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
737eac708d26ecbfa230bbe9f7d00a64c7fb8faa 17-Aug-2008 Chris Lattner <sabre@nondot.org> remove accidental comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54856 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
60d396262460f0613175e52c00be5e8bfb89d8fb 17-Aug-2008 Chris Lattner <sabre@nondot.org> add a new raw_ostream class which is an extremely high performance ostream that
can *only* output data (no seeking, reading, etc). This is adapted from the
clang "-E outputter", and is roughly 10% faster than stdio on darwin and 30%
(or more) faster than std::ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54855 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
1828340e68c5aa06287a77c1a235224acf3eeeb2 17-Aug-2008 Chris Lattner <sabre@nondot.org> add a new raw_ostream class which is an extremely high performance ostream that
can *only* output data (no seeking, reading, etc). This is adapted from the
clang "-E outputter", and is roughly 10% faster than stdio on darwin and 30%
(or more) faster than std::ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54855 91177308-0d34-0410-b5e6-96231b3b80d8
aw_ostream.h
9d8658a1292c1674f4968700b91e5a3b5ee3bf4e 13-Aug-2008 Duncan Sands <baldrick@free.fr> Rename this, in case people think that NullFolder
has something to do with folding null values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54725 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
ullFolder.h
09535ab4ae3314be3dd6bcec43a9d42b6c15835c 13-Aug-2008 Duncan Sands <baldrick@free.fr> Rename this, in case people think that NullFolder
has something to do with folding null values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54725 91177308-0d34-0410-b5e6-96231b3b80d8
oFolder.h
ullFolder.h
fe24bd3a89c44f9a16e3cbcf60c119dac88fad40 12-Aug-2008 Duncan Sands <baldrick@free.fr> Add a NullFolder class that doesn't fold constants.
This may be used as the second IRBuilder template
parameter, the idea being that people learning LLVM
may find it helpful (several people asked on IRC
if it was possible to turn off constant folding
because it made it hard for them to see what was
going on). Compiles, but otherwise completely
untested.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54698 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
ullFolder.h
argetFolder.h
f25952bf1145eccd87a6acb048271451dfe7abcc 12-Aug-2008 Duncan Sands <baldrick@free.fr> Add a NullFolder class that doesn't fold constants.
This may be used as the second IRBuilder template
parameter, the idea being that people learning LLVM
may find it helpful (several people asked on IRC
if it was possible to turn off constant folding
because it made it hard for them to see what was
going on). Compiles, but otherwise completely
untested.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54698 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
ullFolder.h
argetFolder.h
20df07ba22c0b7e907c1a7912b5d3d1d2fb948db 12-Aug-2008 Duncan Sands <baldrick@free.fr> Point people to ConstantExpr and ConstantFolding,
in case they get the wrong idea. Fit in 80 columns.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54676 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
321454f695656a526c572df39f14cb9efb9e175e 12-Aug-2008 Duncan Sands <baldrick@free.fr> Point people to ConstantExpr and ConstantFolding,
in case they get the wrong idea. Fit in 80 columns.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54676 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
argetFolder.h
1e7f7865ebd3b47c93dc8867abe5baae0df0ebce 11-Aug-2008 Duncan Sands <baldrick@free.fr> Make it possible to use different constant
folding policies with IRBuilder. The default,
provided by ConstantFolder, is to do minimal
folding like now: what ConstantExpr provides.
An alternative is to use TargetFolder, which
uses target information to fold constants more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54640 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
argetFolder.h
9eb0ecd435bed00b533e0617107c14534cda1433 11-Aug-2008 Duncan Sands <baldrick@free.fr> Make it possible to use different constant
folding policies with IRBuilder. The default,
provided by ConstantFolder, is to do minimal
folding like now: what ConstantExpr provides.
An alternative is to use TargetFolder, which
uses target information to fold constants more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54640 91177308-0d34-0410-b5e6-96231b3b80d8
onstantFolder.h
RBuilder.h
argetFolder.h
1d85163ec22e4413abc79ddd5d57e184095eaca0 09-Aug-2008 Duncan Sands <baldrick@free.fr> Unbreak the llvm-gcc build: recent changes to
IRBuilder are not expecting null names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54581 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
825478f0a2870073d4be8be8bbe69648c91c6d15 09-Aug-2008 Duncan Sands <baldrick@free.fr> Unbreak the llvm-gcc build: recent changes to
IRBuilder are not expecting null names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54581 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1378c1dd22842d59ef6dd4c6c1e84cd05f63948c 09-Aug-2008 Chris Lattner <sabre@nondot.org> Make 'Insert' set the name for Loads, instead of passing the name into the
LoadInst ctor, which causes std::string thrashing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54577 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
56a8bd864017ff621fc35a5b088dbf0bfb9e2994 09-Aug-2008 Chris Lattner <sabre@nondot.org> Make 'Insert' set the name for Loads, instead of passing the name into the
LoadInst ctor, which causes std::string thrashing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54577 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
7a61d701c0870642e075e90b6a1ad03a8ac9bc67 08-Aug-2008 Eric Christopher <echristo@apple.com> Have IRBuilder take a template argument on whether or not to preserve
names. This can save a lot of allocations if you aren't going to be
looking at the output.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54546 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
730102bf69237ff12d61019d65cd860656adf3fa 08-Aug-2008 Eric Christopher <echristo@apple.com> Have IRBuilder take a template argument on whether or not to preserve
names. This can save a lot of allocations if you aren't going to be
looking at the output.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54546 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fed90b6d097d50881afb45e4d79f430db66dd741 28-Jul-2008 Dan Gohman <gohman@apple.com> Fold the useful features of alist and alist_node into ilist, and
a new ilist_node class, and remove them. Unlike alist_node,
ilist_node doesn't attempt to manage storage itself, so it avoids
the associated problems, including being opaque in gdb.

Adjust the Recycler class so that it doesn't depend on alist_node.
Also, change it to use explicit Size and Align parameters, allowing
it to work when the largest-sized node doesn't have the greatest
alignment requirement.

Change MachineInstr's MachineMemOperand list from a pool-backed
alist to a std::list for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54146 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
ecyclingAllocator.h
2fcbc7e8303dfee61147d76bbf16ed0297133c77 28-Jul-2008 Dan Gohman <gohman@apple.com> Fold the useful features of alist and alist_node into ilist, and
a new ilist_node class, and remove them. Unlike alist_node,
ilist_node doesn't attempt to manage storage itself, so it avoids
the associated problems, including being opaque in gdb.

Adjust the Recycler class so that it doesn't depend on alist_node.
Also, change it to use explicit Size and Align parameters, allowing
it to work when the largest-sized node doesn't have the greatest
alignment requirement.

Change MachineInstr's MachineMemOperand list from a pool-backed
alist to a std::list for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54146 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
ecyclingAllocator.h
7953f3781077b6feaba3708fb96ef917f8e8fc89 28-Jul-2008 Dan Gohman <gohman@apple.com> Don't use reinterpret_cast when it isn't needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54130 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
56c2d937feb0ad8577b265a163339cf48c0f81c1 28-Jul-2008 Dan Gohman <gohman@apple.com> Don't use reinterpret_cast when it isn't needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54130 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
d6851816690847d0fd9384aa4cdde36d78462918 25-Jul-2008 Dan Gohman <gohman@apple.com> Rename the version of CreateRet that's a convenience method for creating
multiple-valued return values, so that the name CreateRet is just for
creating plain ret statements.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54053 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a5bf78bc28e7cbd30a284e546cd4b4bbecbc113a 25-Jul-2008 Dan Gohman <gohman@apple.com> Rename the version of CreateRet that's a convenience method for creating
multiple-valued return values, so that the name CreateRet is just for
creating plain ret statements.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54053 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fcf0e86bf2ea9ddf104bea9a0764f78623a11889 23-Jul-2008 Chris Lattner <sabre@nondot.org> Make CreateBinOp/CreateNeg/CreateNot do constant folding.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53950 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
f0e9ffa64bc2d7d108a2196602a5e7ca05199e49 23-Jul-2008 Chris Lattner <sabre@nondot.org> Make CreateBinOp/CreateNeg/CreateNot do constant folding.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53950 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
fc74abfba5128544a750fce22fdf13eb0403e3ce 23-Jul-2008 Dan Gohman <gohman@apple.com> Enable first-class aggregates support.

Remove the GetResultInst instruction. It is still accepted in LLVM assembly
and bitcode, where it is now auto-upgraded to ExtractValueInst. Also, remove
support for return instructions with multiple values. These are auto-upgraded
to use InsertValueInst instructions.

The IRBuilder still accepts multiple-value returns, and auto-upgrades them
to InsertValueInst instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53941 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
29474e9327b30f3f79a5ce3d4264cc23e1e6dcdb 23-Jul-2008 Dan Gohman <gohman@apple.com> Enable first-class aggregates support.

Remove the GetResultInst instruction. It is still accepted in LLVM assembly
and bitcode, where it is now auto-upgraded to ExtractValueInst. Also, remove
support for return instructions with multiple values. These are auto-upgraded
to use InsertValueInst instructions.

The IRBuilder still accepts multiple-value returns, and auto-upgrades them
to InsertValueInst instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53941 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
nstVisitor.h
a3da83270505fea08f0a4650aa082fa608db54fd 22-Jul-2008 Dan Gohman <gohman@apple.com> Add insertvalue and extractvalue folding support in IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53931 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
b13e8aef91f0b3e6397f6a89cdb4816511dc6915 22-Jul-2008 Dan Gohman <gohman@apple.com> Add insertvalue and extractvalue folding support in IRBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53931 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
4e00987f09474f4e1a3bf850ec5d7a9020bf1aef 22-Jul-2008 Dan Gohman <gohman@apple.com> IRBuilder support for insertvalue and extractvalue.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53926 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
75453cdcd0b55acb8f3b0470255ecebed1d9b7b1 22-Jul-2008 Dan Gohman <gohman@apple.com> IRBuilder support for insertvalue and extractvalue.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53926 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
358033102ffaef4d1afb1c0b7e96440906f0b48f 21-Jul-2008 Dan Gohman <gohman@apple.com> Enhance the GraphWriter support for edge destinations, and teach the
SelectionDAG graph writer to make use of them. Now, nodes with multiple
values are displayed as such, with incoming edges pointing to the
specific value they use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53875 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
b38a0053b72ab70719e3b280ed90949c5e79598d 21-Jul-2008 Dan Gohman <gohman@apple.com> Enhance the GraphWriter support for edge destinations, and teach the
SelectionDAG graph writer to make use of them. Now, nodes with multiple
values are displayed as such, with incoming edges pointing to the
specific value they use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53875 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
2d3ff5a7aee24024765629d17ebff351ea11c9bb 21-Jul-2008 Dan Gohman <gohman@apple.com> Make the GraphWriter be more consistent about the string
used for the graph "title" and the graph "label", as there
are differences in interpretation of these strings
between viewers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53871 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
09a430162dd43425e02b3e329a0da568bbc1544b 21-Jul-2008 Dan Gohman <gohman@apple.com> Make the GraphWriter be more consistent about the string
used for the graph "title" and the graph "label", as there
are differences in interpretation of these strings
between viewers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53871 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
e8be6c63915e0389f1eef6b53c64300d13b2ce99 17-Jul-2008 Dan Gohman <gohman@apple.com> Add a new function, ReplaceAllUsesOfValuesWith, which handles bulk
replacement of multiple values. This is slightly more efficient
than doing multiple ReplaceAllUsesOfValueWith calls, and theoretically
could be optimized even further. However, an important property of this
new function is that it handles the case where the source value set and
destination value set overlap. This makes it feasible for isel to use
SelectNodeTo in many very common cases, which is advantageous because
SelectNodeTo avoids a temporary node and it doesn't require CSEMap
updates for users of values that don't change position.

Revamp MorphNodeTo, which is what does all the work of SelectNodeTo, to
handle operand lists more efficiently, and to correctly handle a number
of corner cases to which its new wider use exposes it.

This commit also includes a change to the encoding of post-isel opcodes
in SDNodes; now instead of being sandwiched between the target-independent
pre-isel opcodes and the target-dependent pre-isel opcodes, post-isel
opcodes are now represented as negative values. This makes it possible
to test if an opcode is pre-isel or post-isel without having to know
the size of the current target's post-isel instruction set.

These changes speed up llc overall by 3% and reduce memory usage by 10%
on the InstructionCombining.cpp testcase with -fast and -regalloc=local.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53728 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
bd68c79fb898ebb9b42140fb39bab3baf3cb8f4e 17-Jul-2008 Dan Gohman <gohman@apple.com> Add a new function, ReplaceAllUsesOfValuesWith, which handles bulk
replacement of multiple values. This is slightly more efficient
than doing multiple ReplaceAllUsesOfValueWith calls, and theoretically
could be optimized even further. However, an important property of this
new function is that it handles the case where the source value set and
destination value set overlap. This makes it feasible for isel to use
SelectNodeTo in many very common cases, which is advantageous because
SelectNodeTo avoids a temporary node and it doesn't require CSEMap
updates for users of values that don't change position.

Revamp MorphNodeTo, which is what does all the work of SelectNodeTo, to
handle operand lists more efficiently, and to correctly handle a number
of corner cases to which its new wider use exposes it.

This commit also includes a change to the encoding of post-isel opcodes
in SDNodes; now instead of being sandwiched between the target-independent
pre-isel opcodes and the target-dependent pre-isel opcodes, post-isel
opcodes are now represented as negative values. This makes it possible
to test if an opcode is pre-isel or post-isel without having to know
the size of the current target's post-isel instruction set.

These changes speed up llc overall by 3% and reduce memory usage by 10%
on the InstructionCombining.cpp testcase with -fast and -regalloc=local.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53728 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
0d885d1661f87bd2dc25bfdacb29413f0be81bd4 16-Jul-2008 Devang Patel <dpatel@apple.com> Mark function used by asm block as used, otherwise optimizer may not see the use and may delete the function.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53692 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
b52fd903466aa969ba65e1863455e435b175e49c 16-Jul-2008 Devang Patel <dpatel@apple.com> Mark function used by asm block as used, otherwise optimizer may not see the use and may delete the function.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53692 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
5e84368b26415b3bb7f3f8d9cff3e05938dd82d0 14-Jul-2008 Dan Gohman <gohman@apple.com> Reapply 53476 and 53480, with a fix so that it properly updates
the BB member to the current basic block after emitting
instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53567 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
368a08b238a4d0a938b7639930f149dbdeb71259 14-Jul-2008 Dan Gohman <gohman@apple.com> Reapply 53476 and 53480, with a fix so that it properly updates
the BB member to the current basic block after emitting
instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53567 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
b5eec33dcde63bee6048d54bee2a376737028e5c 12-Jul-2008 Evan Cheng <evan.cheng@apple.com> Back out 53476 and 53480 for now. Somehow they cause llc to miscompile 179.art.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53502 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
58a6a6b201041761b7ae929694542c4580ee3fe3 12-Jul-2008 Evan Cheng <evan.cheng@apple.com> Back out 53476 and 53480 for now. Somehow they cause llc to miscompile 179.art.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53502 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
dbe2a5a26925cd3ed8a4c2cf02c8273fcf9919d7 11-Jul-2008 Dan Gohman <gohman@apple.com> Add support for putting NamedRegionTimers in TimerGroups, and
use a timer group for the timers in SelectionDAGISel. Also,
Split scheduling out from emitting, to give each their own
timer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53476 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
5e29bafdd4026d91dfcc021dab82e21975b98911 11-Jul-2008 Dan Gohman <gohman@apple.com> Add support for putting NamedRegionTimers in TimerGroups, and
use a timer group for the timers in SelectionDAGISel. Also,
Split scheduling out from emitting, to give each their own
timer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53476 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
98fd7f6b2f109e16abf3e4279c971f8d3703b8a6 11-Jul-2008 Bill Wendling <isanbard@gmail.com> Pull r53428 from Gaz into mainline:

Remove warnings about unused/shadowed variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53430 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
c764d6fe0ef064717d83b0378a04556a31d877bf 11-Jul-2008 Bill Wendling <isanbard@gmail.com> Pull r53428 from Gaz into mainline:

Remove warnings about unused/shadowed variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53430 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
4f4b348437ff607b53c66ec7da8a011b637ebc99 11-Jul-2008 Dan Gohman <gohman@apple.com> Tidy up #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53426 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
ecyclingAllocator.h
8be7156a5acb218c05d0f8881ea0bbe26ec21ab3 11-Jul-2008 Dan Gohman <gohman@apple.com> Tidy up #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53426 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
ecyclingAllocator.h
358f5ac9721f02eec68145bba012322ebc78d58c 10-Jul-2008 Dan Gohman <gohman@apple.com> Escape the graph name. This unbreaks -view-cfg.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53417 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
e0c27592264fca5e499bbbb27dd03b1957b00022 10-Jul-2008 Dan Gohman <gohman@apple.com> Escape the graph name. This unbreaks -view-cfg.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53417 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
250c1d8734ae29b8e408e16dc575b21a31fcb0d7 10-Jul-2008 Evan Cheng <evan.cheng@apple.com> - Replace use of std::map<std::string, ..> with StringMap. Replace use of std::map with DenseMap, std::set with SmallPtrSet. This results in minor speed up.
- Some code clean up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53379 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
e32cb992b4b572d32cf8673f8d25536961651bcf 10-Jul-2008 Evan Cheng <evan.cheng@apple.com> - Replace use of std::map<std::string, ..> with StringMap. Replace use of std::map with DenseMap, std::set with SmallPtrSet. This results in minor speed up.
- Some code clean up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53379 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
afbd0737e7593f1b79ed5060e506749558e82ab9 09-Jul-2008 Dan Gohman <gohman@apple.com> The graph name really does matter for configurations that use gv.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53259 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
9743fbbf1e6139d805a15881757648edba83bbb2 09-Jul-2008 Dan Gohman <gohman@apple.com> The graph name really does matter for configurations that use gv.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53259 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
b3739424dadf3b12579c4b838326a657a92815fa 08-Jul-2008 Matthijs Kooijman <matthijs@stdin.nl> Add CallSite::getArgumentNo() to be able to translate an operand number into a
argument number.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53225 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e030ab91e5e3aab255c02bce9d73bb1b0604a092 08-Jul-2008 Matthijs Kooijman <matthijs@stdin.nl> Add CallSite::getArgumentNo() to be able to translate an operand number into a
argument number.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53225 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
8c174a9b5a3c5580aa6110336bb6a7f990dcb3b2 08-Jul-2008 Matthijs Kooijman <matthijs@stdin.nl> Add CallSite::getArgumentOffset() to hide the differences in operands betwen
Call and Invoke in a single method instead of having it hardcoded in multiple
places.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53224 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
9b742e3be3289e4a1538ebe18ae30c77893c1f55 08-Jul-2008 Matthijs Kooijman <matthijs@stdin.nl> Add CallSite::getArgumentOffset() to hide the differences in operands betwen
Call and Invoke in a single method instead of having it hardcoded in multiple
places.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53224 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2e033f31dc229db8d5c84f19530b7d2ddc175f44 08-Jul-2008 Duncan Sands <baldrick@free.fr> Add some convenience methods for manipulating
call attributes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53223 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
dd8cc241e07fcbb3774733acb328eafe29b18b8a 08-Jul-2008 Duncan Sands <baldrick@free.fr> Add some convenience methods for manipulating
call attributes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53223 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e14d81deeb6bb3404ffee5e59ecb88304f112f4a 08-Jul-2008 Dan Gohman <gohman@apple.com> Add some basic Pool-allocation infrastructure. This adds a Recycler class,
for handling bookkeeping for deleted objects, as well as the alist class
template, for keeping lists of objects allocated from Recyclers, and some
related utilities.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53210 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
ecyclingAllocator.h
7db38737bcdd37612fd43f786e3d52bd080dfb9c 08-Jul-2008 Dan Gohman <gohman@apple.com> Add some basic Pool-allocation infrastructure. This adds a Recycler class,
for handling bookkeeping for deleted objects, as well as the alist class
template, for keeping lists of objects allocated from Recyclers, and some
related utilities.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53210 91177308-0d34-0410-b5e6-96231b3b80d8
ecycler.h
ecyclingAllocator.h
7698252750b29bbd8de20f5404241953221470f4 07-Jul-2008 Dan Gohman <gohman@apple.com> Make BumpPtrAllocator noncopyable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53188 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
42160765554666a1669d238d691748e38bca7120 07-Jul-2008 Dan Gohman <gohman@apple.com> Make BumpPtrAllocator noncopyable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53188 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
dae6f4cf7604d2f11a18e430f925f0925ce0fadd 07-Jul-2008 Dan Gohman <gohman@apple.com> Add a space between * and /* to help simple-minded lexers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53187 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
9c0a5056b6356df5ef24901a46170c962f32d24a 07-Jul-2008 Dan Gohman <gohman@apple.com> Add a space between * and /* to help simple-minded lexers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53187 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
e4706a0b51cbb6ba74844dd70a51a5fea0d2c336 07-Jul-2008 Dan Gohman <gohman@apple.com> Remove uses of "llvm/Support/Debug.h" from LLVM include files, which
all happened be unnecessary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53182 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
raphWriter.h
66d19462466d5f9c8f8c9d8c1789a86a9937ce73 07-Jul-2008 Dan Gohman <gohman@apple.com> Remove uses of "llvm/Support/Debug.h" from LLVM include files, which
all happened be unnecessary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53182 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
raphWriter.h
1002c0203450620594a85454c6a095ca94b87cb2 07-Jul-2008 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53179 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
e887fdff72486ad0e83f402c8c105fa91fff1036 07-Jul-2008 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53179 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
9bd64ea1d935c54d0cd51953b5ce94e22c0aa538 03-Jul-2008 Eric Christopher <echristo@apple.com> Add a couple more helper functions to deal with
creating global constant strings and pointers
to global constant strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53051 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
3cfc1963b2724b3a3171132edad357a1ebb4955a 03-Jul-2008 Eric Christopher <echristo@apple.com> Add a couple more helper functions to deal with
creating global constant strings and pointers
to global constant strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53051 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
94f9c7dc97bc586e01c101e9fcfeb93c2fb4bd87 01-Jul-2008 Dan Gohman <gohman@apple.com> Fix apostrophes in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52972 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
5bd0e786213a82be5de6f1453c2a4043f0c847a3 01-Jul-2008 Dan Gohman <gohman@apple.com> Fix apostrophes in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52972 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
d98a45d29a6047bd47d3a3cd83c13ac0dac851fb 27-Jun-2008 Owen Anderson <resistor@mac.com> Add a NextPowerOf2 function to calculate the next power of two greater than a given integer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52839 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
0215fced396e0e7f8861d9f4448cc504d9091f78 27-Jun-2008 Owen Anderson <resistor@mac.com> Add a NextPowerOf2 function to calculate the next power of two greater than a given integer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52839 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
25b825b3b848eeb25d49a51f0c78a16db7677465 27-Jun-2008 Chris Lattner <sabre@nondot.org> Tweak IRBuilder to explicitly call the setName(const char*) method on Value
instead of passing the name into the instruction ctors. Since most
instruction ctors take their name as an std::string, this avoids copying the
string to the heap and a malloc and free.

Patch by Pratik Solanki!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52832 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
979273d4c7604c25d48ec4a20247c86208592ccd 27-Jun-2008 Chris Lattner <sabre@nondot.org> Tweak IRBuilder to explicitly call the setName(const char*) method on Value
instead of passing the name into the instruction ctors. Since most
instruction ctors take their name as an std::string, this avoids copying the
string to the heap and a malloc and free.

Patch by Pratik Solanki!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52832 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
8032020cf209721bc104648f28b1c4b45fb88691 26-Jun-2008 Bill Wendling <isanbard@gmail.com> Remove warnings about shadowed and unused variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52791 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
fca8c15d64a301d3bcc5ff91c849bb0821583a36 26-Jun-2008 Bill Wendling <isanbard@gmail.com> Remove warnings about shadowed and unused variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52791 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
8001524f43c0d04b7576efceefeac9be27f7dc0c 26-Jun-2008 Owen Anderson <resistor@mac.com> Use a DenseMap instead of an std::map for mangled name lookup. This is
improves AsmPrinter runtime on instcombine from 0.3920s to 0.3836s.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52787 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
f0ab0969369f88210bdc12d2d8f1215d119baff7 26-Jun-2008 Owen Anderson <resistor@mac.com> Use a DenseMap instead of an std::map for mangled name lookup. This is
improves AsmPrinter runtime on instcombine from 0.3920s to 0.3836s.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52787 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
f4dc289cea5dbfa272b54a8436a6bda6b226cee2 24-Jun-2008 Dan Gohman <gohman@apple.com> Make Allocate<T>() return a T* instead of a void*. And use
static_cast instead of reinterpret_cast.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52686 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
c51652d1fa198c48cc6f323c7d55587b1eeecd97 24-Jun-2008 Dan Gohman <gohman@apple.com> Make Allocate<T>() return a T* instead of a void*. And use
static_cast instead of reinterpret_cast.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52686 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
045b3f7bf1f136f609d64e50b3737b6eccae1ed8 05-Jun-2008 Matthijs Kooijman <matthijs@stdin.nl> * Make CallSite::hasArgument const and let it take a const parameter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51989 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
cb969e21599cc60afc16ca3a8a7d20c35117e1d7 05-Jun-2008 Matthijs Kooijman <matthijs@stdin.nl> * Make CallSite::hasArgument const and let it take a const parameter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51989 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
9515a8f88a597e78c32c797e4946ebf7648512c0 04-Jun-2008 Matthijs Kooijman <matthijs@stdin.nl> Add CallSite::hasArgument to allow for seeing if a call passes a certain value as an argument quickly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51946 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6df01501b102dca2ceceabedbb644ba51e09cc5a 04-Jun-2008 Matthijs Kooijman <matthijs@stdin.nl> Add CallSite::hasArgument to allow for seeing if a call passes a certain value as an argument quickly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51946 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
652f7ea955bb433d6b7a4d33685dca9485fd7b8b 31-May-2008 Evan Cheng <evan.cheng@apple.com> Revert 51775.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51795 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
0001dc290b29c489709e53e8800ad79701f31b0f 31-May-2008 Evan Cheng <evan.cheng@apple.com> Revert 51775.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51795 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
babf11f249c7c6399c66f2567d4e7efa9c37a9c3 30-May-2008 Evan Cheng <evan.cheng@apple.com> Patches for building llvm on Solaris x86. Contributed by Nathan Keynes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51775 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
81b28cb865b94e71e708dea869eccb69c3f80030 30-May-2008 Evan Cheng <evan.cheng@apple.com> Patches for building llvm on Solaris x86. Contributed by Nathan Keynes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51775 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
eecfa369eb91838fbd833183717b2579a0127acb 29-May-2008 Bill Wendling <isanbard@gmail.com> Remove more iostream header includes. Needed to implement a "FlushStream"
function to flush a specified std::ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51705 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
90450481cd8ed4984772606b6f5e05aeffc9e5c7 29-May-2008 Bill Wendling <isanbard@gmail.com> Remove more iostream header includes. Needed to implement a "FlushStream"
function to flush a specified std::ostream.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51705 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
43d1fd449f1a0ac9d9dafa0b9569bb6b2e976198 29-May-2008 Anton Korobeynikov <asl@math.spbu.ru> For PR1338: rename include/llvm/ADT/ilist and friends to end with ".h"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51687 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
a9db7a2164055f59c1623434dac6ea7e23e1eb32 29-May-2008 Anton Korobeynikov <asl@math.spbu.ru> For PR1338: rename include/llvm/ADT/ilist and friends to end with ".h"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51687 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
0008f654bf08dc631a1abaa175dd08f1fd1be75e 20-May-2008 Steve Naroff <snaroff@apple.com> Silence a warning about "*/" outside a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51287 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b67b5ab5798eef497721acb4a932e82e5d0d6b60 20-May-2008 Steve Naroff <snaroff@apple.com> Silence a warning about "*/" outside a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51287 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
13d57320bd212483463d4f8992d5787b29eda5df 19-May-2008 Bill Wendling <isanbard@gmail.com> Remove warnings about unused parameters and shadowed variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51266 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
51bacec4ab578759494012a85cf536ba3f526828 19-May-2008 Bill Wendling <isanbard@gmail.com> Remove warnings about unused parameters and shadowed variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51266 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7cbd8a3e92221437048b484d5ef9c0a22d0f8c58 16-May-2008 Gabor Greif <ggreif@gmail.com> API change for {BinaryOperator|CmpInst|CastInst}::create*() --> Create. Legacy interfaces will be in place for some time. (Merge from use-diet branch.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51200 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
a645dd3694fe06586679809ad2ded420666b4665 16-May-2008 Gabor Greif <ggreif@gmail.com> API change for {BinaryOperator|CmpInst|CastInst}::create*() --> Create. Legacy interfaces will be in place for some time. (Merge from use-diet branch.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51200 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
041e2eb51721bcfecee5d9c9fc409ff185526e47 15-May-2008 Dan Gohman <gohman@apple.com> IR support for extractvalue and insertvalue instructions. Also, begin
moving toward making structs and arrays first-class types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51157 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
8055f7781b0430973392a8ddf54142afb9bcdd3d 15-May-2008 Dan Gohman <gohman@apple.com> IR support for extractvalue and insertvalue instructions. Also, begin
moving toward making structs and arrays first-class types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51157 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
0342049cd8bb77d76e3c76f441f986360e6637cf 14-May-2008 Nate Begeman <natebegeman@mac.com> Add support to IR builder for new vicmp, vfcmp routines


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51127 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
1726c6a84396469ba56b6608236b3a090f9edb63 14-May-2008 Nate Begeman <natebegeman@mac.com> Add support to IR builder for new vicmp, vfcmp routines


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51127 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
ac80ade1580378e484e24c9f66d2fa5b058e5891 12-May-2008 Nate Begeman <natebegeman@mac.com> Add two new instructions to the llvm IR, vicmp and vfcmp. see updated LangRef
for details. CodeGen support coming in a follow up patch


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50985 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
646fa48be42cd43490b14c443d0f6dc387a6d020 12-May-2008 Nate Begeman <natebegeman@mac.com> Add two new instructions to the llvm IR, vicmp and vfcmp. see updated LangRef
for details. CodeGen support coming in a follow up patch


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50985 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
4ca7913072a60b11eda9da8aa8a82c7cec18bd85 09-May-2008 Chris Lattner <sabre@nondot.org> add support for pattern matching 'neg'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50883 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
ae53d800bcca3d00c46e0a7198106afea94915f1 09-May-2008 Chris Lattner <sabre@nondot.org> add support for pattern matching 'neg'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50883 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
84b7df43fb098268f6ce37a3e32bcc2f455ecf96 06-May-2008 Dan Gohman <gohman@apple.com> Remove uses of llvm/System/IncludeFile.h that are no longer needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50695 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
angler.h
bc8fb445b0410e05248fb1dc6131e9cc293557fe 06-May-2008 Dan Gohman <gohman@apple.com> Remove uses of llvm/System/IncludeFile.h that are no longer needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50695 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
angler.h
521e245288e5f9c88c24b28855676ea8034dfa75 05-May-2008 Bill Wendling <isanbard@gmail.com> Using "unsigned" was masking the "size_t" version of this method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50668 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
5fb79208352fa2f29bbd5f9b9c46deb77170a04e 05-May-2008 Bill Wendling <isanbard@gmail.com> Using "unsigned" was masking the "size_t" version of this method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50668 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
34cd4a484e532cc463fd5a4bf59b88d13c5467c1 05-May-2008 Evan Cheng <evan.cheng@apple.com> Fix more -Wshorten-64-to-32 warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50659 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
llocator.h
ommandLine.h
raphWriter.h
emoryBuffer.h
utputBuffer.h
591bfc8aa66d4d415be0d947e2764bcc9f5e25b7 05-May-2008 Evan Cheng <evan.cheng@apple.com> Fix more -Wshorten-64-to-32 warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50659 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
llocator.h
ommandLine.h
raphWriter.h
emoryBuffer.h
utputBuffer.h
70100131d1c368d0902ddb7604d750d6131bba8a 01-May-2008 Chris Lattner <sabre@nondot.org> Add CreateCall3/CreateCall4 at Eric's request.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50515 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
7d0d0af0dcbbc0f9e805490b6f5dbf940e7188de 01-May-2008 Chris Lattner <sabre@nondot.org> Add CreateCall3/CreateCall4 at Eric's request.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50515 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
4b9f046869073ab37e376d9314ca1685f103ab19 01-May-2008 Chris Lattner <sabre@nondot.org> Add a spiffy little "CreateCall2" method, which can be used to make
a function call that takes two Value*'s as arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50514 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
e87b362919025b3f83ae77634507378d7e8f1c37 01-May-2008 Chris Lattner <sabre@nondot.org> Add a spiffy little "CreateCall2" method, which can be used to make
a function call that takes two Value*'s as arguments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50514 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
9d695d5f7d31e912a2be74229b3e2baab2564820 28-Apr-2008 Ted Kremenek <kremenek@apple.com> Add more alignment enums.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50363 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
6fcfe9f4fbeb141be3ea785a2876fba1a29ce326 28-Apr-2008 Ted Kremenek <kremenek@apple.com> Add more alignment enums.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50363 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
beb4d8293d5311c4581fd3d914f865e358af53a5 28-Apr-2008 Mikhail Glushenkov <foldr@codedgers.com> Add support for response files to the CommandLine library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50355 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7015ef8395c2588c76a59467b295558b9de7c62d 28-Apr-2008 Mikhail Glushenkov <foldr@codedgers.com> Add support for response files to the CommandLine library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50355 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
280a6e607d8eb7401749a92db624a82de47da777 25-Apr-2008 Nick Lewycky <nicholas@mxc.ca> Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989
r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50265 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
d8aa33a63bd7f82bce7f6a00038cbad42c17b5ce 25-Apr-2008 Nick Lewycky <nicholas@mxc.ca> Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989
r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50265 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
75712b8b3f5fa9c2a27058b97a984aeb693b8f3e 22-Apr-2008 Nick Lewycky <nicholas@mxc.ca> Whoops! Undo r50087, unbreak the build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50088 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
d9fd3e4011e9502f983379afc34d93d6542a1483 22-Apr-2008 Nick Lewycky <nicholas@mxc.ca> Whoops! Undo r50087, unbreak the build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50088 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
59091c46300c8b82e859426d6f58208ebe0d211f 22-Apr-2008 Nick Lewycky <nicholas@mxc.ca> Reverse r47989. Part of removing 'unwinds to' support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50087 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
a6580e50ab0213f240da172423b2aece5eeea7ef 22-Apr-2008 Nick Lewycky <nicholas@mxc.ca> Reverse r47989. Part of removing 'unwinds to' support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50087 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
4bf393a13e779d7a8eac3647df1781068a6dc732 17-Apr-2008 Scott Michel <scottm@aero.org> Workaround for PR2207, in which pred_iterator assert gets triggered due to a
wee problem in Xcode 2.[45]/gcc 4.0.1.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49831 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
aad62ccbaaab7fde4c14115de8f591b826034954 17-Apr-2008 Scott Michel <scottm@aero.org> Workaround for PR2207, in which pred_iterator assert gets triggered due to a
wee problem in Xcode 2.[45]/gcc 4.0.1.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49831 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
917365bef1cfb8493558b76f8e6ceb1e76eba2c5 16-Apr-2008 Gabor Greif <ggreif@gmail.com> merge of r49785 (from branches/ggreif/use-diet): pass V to dyn_cast by const reference, this avoids copy-constructing and destructing all the time. especially important if these constructors are not accessible

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49787 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
071a621f035a7fed5f866260794cfd6a4776233d 16-Apr-2008 Gabor Greif <ggreif@gmail.com> merge of r49785 (from branches/ggreif/use-diet): pass V to dyn_cast by const reference, this avoids copy-constructing and destructing all the time. especially important if these constructors are not accessible

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49787 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
f99b28615408408286dbaec742606fd1e89c82e4 13-Apr-2008 Chris Lattner <sabre@nondot.org> Add support for equality comparison of CallSite's.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49616 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7f2017de06c4cf480a3136ccda5866a82b180c4b 13-Apr-2008 Chris Lattner <sabre@nondot.org> Add support for equality comparison of CallSite's.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49616 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
89f6d88db334ba088672ae0753deb7d7b7509bac 13-Apr-2008 Duncan Sands <baldrick@free.fr> Merge LLVMBuilder and FoldingBuilder, calling
the result IRBuilder. Patch by Dominic Hamon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49604 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
LVMBuilder.h
a989c7e045dcad58bb58b9fb0cb75ee901f7879e 13-Apr-2008 Duncan Sands <baldrick@free.fr> Merge LLVMBuilder and FoldingBuilder, calling
the result IRBuilder. Patch by Dominic Hamon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49604 91177308-0d34-0410-b5e6-96231b3b80d8
RBuilder.h
LVMBuilder.h
cba931f6010e56f061ed04fe75f6b70906edfdc9 08-Apr-2008 Devang Patel <dpatel@apple.com> Add CreateGetResult()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49398 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
61177c26dffbcaeac19f562fb4a46874bbd5f485 08-Apr-2008 Devang Patel <dpatel@apple.com> Add CreateGetResult()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49398 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
751858304488f40ea4632c0b217799df159b15cd 08-Apr-2008 Devang Patel <dpatel@apple.com> Add multiple value return instruction constructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49374 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
e3c97a517ba3f31673ad4a50124ec80d10676d46 08-Apr-2008 Devang Patel <dpatel@apple.com> Add multiple value return instruction constructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49374 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
051a950000e21935165db56695e35bade668193b 06-Apr-2008 Gabor Greif <ggreif@gmail.com> API changes for class Use size reduction, wave 1.
Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49277 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
d6da1d0d17e2605363504f044664696f4d85b30f 06-Apr-2008 Gabor Greif <ggreif@gmail.com> API changes for class Use size reduction, wave 1.
Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49277 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
b51a0d87ac4c3f9c651b2ff7cdf663dff18f995b 04-Apr-2008 Duncan Sands <baldrick@free.fr> If a value is cast to its own type, then the cast
is not needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49210 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
9f7caaf493ec0761951764f919e657ea04349f50 04-Apr-2008 Duncan Sands <baldrick@free.fr> If a value is cast to its own type, then the cast
is not needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49210 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
56c2f99f00567ebd0969bbf12050f9ce2c8105ef 02-Apr-2008 Torok Edwin <edwintorok@gmail.com> Add new file Support/DataFlow.h.
It allows Use-Def and Def-Use relations to be treated as graphs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49088 91177308-0d34-0410-b5e6-96231b3b80d8
ataFlow.h
9501882eb02b3802dea9a3ac6e1e04be34289a3f 02-Apr-2008 Edwin Török <edwintorok@gmail.com> Add new file Support/DataFlow.h.
It allows Use-Def and Def-Use relations to be treated as graphs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49088 91177308-0d34-0410-b5e6-96231b3b80d8
ataFlow.h
038112a4e0a9afd656f415ab397a230ae5921627 01-Apr-2008 Chris Lattner <sabre@nondot.org> Change the MemoryBuffer::getFile* methods to take just a pointer to the
start of a filename, not a filename+length. All clients can produce a
null terminated name, and the system api's require null terminated
strings anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49041 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
fc0036120cbfae4edfa372c36fb05f2756f5f0ee 01-Apr-2008 Chris Lattner <sabre@nondot.org> Change the MemoryBuffer::getFile* methods to take just a pointer to the
start of a filename, not a filename+length. All clients can produce a
null terminated name, and the system api's require null terminated
strings anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49041 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
3ee3267fc2c4d1d630d9a918ba1453e4fe47c429 25-Mar-2008 Bill Wendling <isanbard@gmail.com> De-constify the input to the "operator >>" method as it is modified.
Patch by dekruijf@cs.wisc.edu!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48782 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
1de8c3d189b1dba1266b8295d36649d403d7d177 25-Mar-2008 Bill Wendling <isanbard@gmail.com> De-constify the input to the "operator >>" method as it is modified.
Patch by dekruijf@cs.wisc.edu!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48782 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
d8ff3caaa0d5dd4a7cbbe25c42d70af2e3caca7f 19-Mar-2008 Chris Lattner <sabre@nondot.org> add some convenience methods for creating GEP instructions and
struct types. Patch by David Chisnall, with some tweaks.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48531 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
3b10b4dc8d408c6f4c73d4821cf7d8778b509402 19-Mar-2008 Chris Lattner <sabre@nondot.org> add some convenience methods for creating GEP instructions and
struct types. Patch by David Chisnall, with some tweaks.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48531 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
58d74910c6b82e622ecbb57d6644d48fec5a5c0f 12-Mar-2008 Chris Lattner <sabre@nondot.org> Reimplement the parameter attributes support, phase #1. hilights:

1. There is now a "PAListPtr" class, which is a smart pointer around
the underlying uniqued parameter attribute list object, and manages
its refcount. It is now impossible to mess up the refcount.
2. PAListPtr is now the main interface to the underlying object, and
the underlying object is now completely opaque.
3. Implementation details like SmallVector and FoldingSet are now no
longer part of the interface.
4. You can create a PAListPtr with an arbitrary sequence of
ParamAttrsWithIndex's, no need to make a SmallVector of a specific
size (you can just use an array or scalar or vector if you wish).
5. All the client code that had to check for a null pointer before
dereferencing the pointer is simplified to just access the
PAListPtr directly.
6. The interfaces for adding attrs to a list and removing them is a
bit simpler.

Phase #2 will rename some stuff (e.g. PAListPtr) and do other less
invasive changes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48289 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
1c8733e1fd69e634daaa7fefd0d1436b846a8eb3 12-Mar-2008 Chris Lattner <sabre@nondot.org> Reimplement the parameter attributes support, phase #1. hilights:

1. There is now a "PAListPtr" class, which is a smart pointer around
the underlying uniqued parameter attribute list object, and manages
its refcount. It is now impossible to mess up the refcount.
2. PAListPtr is now the main interface to the underlying object, and
the underlying object is now completely opaque.
3. Implementation details like SmallVector and FoldingSet are now no
longer part of the interface.
4. You can create a PAListPtr with an arbitrary sequence of
ParamAttrsWithIndex's, no need to make a SmallVector of a specific
size (you can just use an array or scalar or vector if you wish).
5. All the client code that had to check for a null pointer before
dereferencing the pointer is simplified to just access the
PAListPtr directly.
6. The interfaces for adding attrs to a list and removing them is a
bit simpler.

Phase #2 will rename some stuff (e.g. PAListPtr) and do other less
invasive changes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48289 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
cd943e431732ebf4d4dda462e02397f101746274 06-Mar-2008 Nick Lewycky <nicholas@mxc.ca> Treat BBs that use BBs as proper predecessors and successors in the CFG.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47989 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
ebb169d03345d41fc559b22511520b0d51c21c41 06-Mar-2008 Nick Lewycky <nicholas@mxc.ca> Treat BBs that use BBs as proper predecessors and successors in the CFG.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47989 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
08e78b18b8ef2c939ee95469662c98e23846d860 22-Feb-2008 Dale Johannesen <dalej@apple.com> Pass alignment on ByVal parameters, from FE, all
the way through. It is now used for codegen.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47484 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
9b398787935ab9e5d9f74c4c2b751ebf61211ea8 22-Feb-2008 Dale Johannesen <dalej@apple.com> Pass alignment on ByVal parameters, from FE, all
the way through. It is now used for codegen.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47484 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b5660dc8223bd5eb3d21d9855692617fcdec5663 20-Feb-2008 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47382 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ommandLine.h
onstantRange.h
a789bffed03de68a28fc8699e30b9da0d607541c 20-Feb-2008 Dan Gohman <djg@cray.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47382 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ommandLine.h
onstantRange.h
d57160d097d6cdb966e5c851215acbd2bf1aa236 20-Feb-2008 Anton Korobeynikov <asl@math.spbu.ru> Add 'sink' cmdline option. Patch by Mikhail Glushenkov!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47377 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
6288e92e49c1269c4ade7fc52ba5be96408a2899 20-Feb-2008 Anton Korobeynikov <asl@math.spbu.ru> Add 'sink' cmdline option. Patch by Mikhail Glushenkov!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47377 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
40a04216daaaee119665e023019c005306ec48ac 19-Feb-2008 Devang Patel <dpatel@apple.com> Add GetResultInst. First step for multiple return value support.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47348 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
d081ef080a26343b4314b9a1e08d4b3136cd5dd8 19-Feb-2008 Devang Patel <dpatel@apple.com> Add GetResultInst. First step for multiple return value support.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47348 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
0d51e7ec0d2dcbea9e304fd58deb05f37eb75635 19-Feb-2008 Dale Johannesen <dalej@apple.com> Expand ParameterAttributes to 32 bits (in preparation
for adding alignment info, not there yet). Clean up
interfaces to reference ParameterAttributes consistently.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47342 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f4666f59fc17a4e5c4764e56220d1c5888fd8f58 19-Feb-2008 Dale Johannesen <dalej@apple.com> Expand ParameterAttributes to 32 bits (in preparation
for adding alignment info, not there yet). Clean up
interfaces to reference ParameterAttributes consistently.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47342 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
548448a317b39ec8446f3c82f44d01f938b921b2 18-Feb-2008 Duncan Sands <baldrick@free.fr> Simplify caller updating using a CallSite, as
requested by Chris. While there, do the same
for an existing function committed by someone
called "lattner" :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47273 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
551ec909057f58b1103f57a9dee45e4d7cf5e061 18-Feb-2008 Duncan Sands <baldrick@free.fr> Simplify caller updating using a CallSite, as
requested by Chris. While there, do the same
for an existing function committed by someone
called "lattner" :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47273 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
823391ae6efffa3ec317c58f8f98ddd1075f12b5 18-Feb-2008 Owen Anderson <resistor@mac.com> Add support for setting parameters to CallSite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47249 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f972de572b57828a9cc7f8466b7a3f18e991fe2b 18-Feb-2008 Owen Anderson <resistor@mac.com> Add support for setting parameters to CallSite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47249 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
ca2a0e1062545651efd20dca1f647b864ede4a39 13-Feb-2008 Dan Gohman <gohman@apple.com> Add count{Leading,Trailing}Ones_{32,64} functions with simple implementations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47084 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
37a65afa11cfc9a612ac1b530543aa73c454fff0 13-Feb-2008 Dan Gohman <djg@cray.com> Add count{Leading,Trailing}Ones_{32,64} functions with simple implementations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47084 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
1f801fa5ada9cb40fb97ae755c282e91af54a1bc 11-Feb-2008 Ted Kremenek <kremenek@apple.com> Added "Profile" method to APFloat for use with FoldingSet.

Added member template "Add" to FoldingSetNodeID that allows "adding" arbitrary
objects to a profile via dispatch to FoldingSetTrait<T>::Profile().

Removed FoldingSetNodeID::AddAPFloat and FoldingSetNodeID::APInt, as their
functionality is now replaced using the above mentioned member template.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46957 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
dc71c8051d354cad8673e651209e431584310d5b 11-Feb-2008 Ted Kremenek <kremenek@apple.com> Added "Profile" method to APFloat for use with FoldingSet.

Added member template "Add" to FoldingSetNodeID that allows "adding" arbitrary
objects to a profile via dispatch to FoldingSetTrait<T>::Profile().

Removed FoldingSetNodeID::AddAPFloat and FoldingSetNodeID::APInt, as their
functionality is now replaced using the above mentioned member template.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46957 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
dc97d4cb2f0eb99a8143272128b76ab45db4ab09 26-Jan-2008 Chris Lattner <sabre@nondot.org> make this 64-bit safe


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46402 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
5f52922f5b316e969f7ad89f2059691f8782ab9e 26-Jan-2008 Chris Lattner <sabre@nondot.org> make this 64-bit safe


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46402 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
f02e26abc04c95be6be02b614ea68616ed5c0927 23-Jan-2008 Ted Kremenek <kremenek@apple.com> Added special escape sequences "\{", "\}", and "\|" when processing
getNodeLabel(); these sequences allow the user to specify the characters '{',
'}', and '|' in the label, which facilitate breaking the label into multiple
record segments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46283 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
7e520b50509cf5f80d294f4ebcc08ae27590a4ee 23-Jan-2008 Ted Kremenek <kremenek@apple.com> Added special escape sequences "\{", "\}", and "\|" when processing
getNodeLabel(); these sequences allow the user to specify the characters '{',
'}', and '|' in the label, which facilitate breaking the label into multiple
record segments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46283 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
70c8650de0ee3033187561a3f2e8f1f706ec50c6 22-Jan-2008 Anton Korobeynikov <asl@math.spbu.ru> Silence a warning. Should we turn this into configure-time check?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46251 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
68aabff7fa1228c220cd7f42e8aa74a8ae05cc4e 22-Jan-2008 Anton Korobeynikov <asl@math.spbu.ru> Silence a warning. Should we turn this into configure-time check?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46251 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
afa47c5a261e0a52b52b1e66034237dff80bc0f4 15-Jan-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix a memory correctness error noticed by valgrind (harmless in practice).

Thanks to Duncan Sands for noticing it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46007 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
9b4841657fd54e0e88240b7973d572edc4e02273 15-Jan-2008 Gordon Henriksen <gordonhenriksen@mac.com> Fix a memory correctness error noticed by valgrind (harmless in practice).

Thanks to Duncan Sands for noticing it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46007 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
4a83e963b356be29d2b7ddb55fe4565147332c34 08-Jan-2008 Chris Lattner <sabre@nondot.org> add match support for casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45744 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
e292b09d3ecb946ed792056d762698a0e944a746 08-Jan-2008 Chris Lattner <sabre@nondot.org> add match support for casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45744 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
50ee9ddc8f0633af6cb0a5693a2c706e98f944da 03-Jan-2008 Chris Lattner <sabre@nondot.org> Split param attr implementation out from Function.cpp into its
own file. Don't #include ParameterAttributes.h into any major
public header files: just move methods out of line as appropriate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45517 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
ef5d8a264de4250af6b1947731a0e8c6695a514c 03-Jan-2008 Chris Lattner <sabre@nondot.org> Split param attr implementation out from Function.cpp into its
own file. Don't #include ParameterAttributes.h into any major
public header files: just move methods out of line as appropriate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45517 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
234d529e582963ad4b5d83b911cd057fe99d1435 29-Dec-2007 Chris Lattner <sabre@nondot.org> remove attribution from a variety of miscellaneous files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45425 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
3023be46c7d98df0b935026d36a48f08826838b7 29-Dec-2007 Chris Lattner <sabre@nondot.org> remove attribution from a variety of miscellaneous files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45425 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
7ed47a13356daed2a34cd2209a31f92552e3bdd8 29-Dec-2007 Chris Lattner <sabre@nondot.org> Don't attribute in file headers anymore. See llvmdev for the
discussion of this change. Boy are my fingers tired. ;-)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
lignOf.h
llocator.h
nnotation.h
FG.h
allSite.h
asting.h
ommandLine.h
ompiler.h
onstantRange.h
OTGraphTraits.h
ebug.h
warf.h
ynamicLinker.h
LF.h
ileUtilities.h
etElementPtrTypeIterator.h
raphWriter.h
nstIterator.h
nstVisitor.h
LVMBuilder.h
eakDetector.h
anagedStatic.h
angler.h
athExtras.h
emoryBuffer.h
utexGuard.h
utputBuffer.h
assNameParser.h
atternMatch.h
luginLoader.h
egistry.h
lowOperationInformer.h
tableBasicBlockNumbering.h
treams.h
tringPool.h
ystemUtils.h
imer.h
ype_traits.h
84e66db653835cee524fc51185ed614f1d6ac628 29-Dec-2007 Chris Lattner <sabre@nondot.org> Don't attribute in file headers anymore. See llvmdev for the
discussion of this change. Boy are my fingers tired. ;-)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
lignOf.h
llocator.h
nnotation.h
FG.h
allSite.h
asting.h
ommandLine.h
ompiler.h
onstantRange.h
OTGraphTraits.h
ebug.h
warf.h
ynamicLinker.h
LF.h
ileUtilities.h
etElementPtrTypeIterator.h
raphWriter.h
nstIterator.h
nstVisitor.h
LVMBuilder.h
eakDetector.h
anagedStatic.h
angler.h
athExtras.h
emoryBuffer.h
utexGuard.h
utputBuffer.h
assNameParser.h
atternMatch.h
luginLoader.h
egistry.h
lowOperationInformer.h
tableBasicBlockNumbering.h
treams.h
tringPool.h
ystemUtils.h
imer.h
ype_traits.h
46f1a8797cfc9ff2a64438060deaed5e8f1f9a6b 20-Dec-2007 Chris Lattner <sabre@nondot.org> Add m_Zero().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45255 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f286f49d77584b12a431a75bd04e226921e4525c 20-Dec-2007 Chris Lattner <sabre@nondot.org> Add m_Zero().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45255 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f0c3354d998507515ab39e26b5292ea0ceb06aef 19-Dec-2007 Duncan Sands <baldrick@free.fr> When inlining through an 'nounwind' call, mark inlined
calls 'nounwind'. It is important for correct C++
exception handling that nounwind markings do not get
lost, so this transformation is actually needed for
correctness.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45218 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2937e3586b67478127d9015f648efdcd3dbd6ff9 19-Dec-2007 Duncan Sands <baldrick@free.fr> When inlining through an 'nounwind' call, mark inlined
calls 'nounwind'. It is important for correct C++
exception handling that nounwind markings do not get
lost, so this transformation is actually needed for
correctness.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45218 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2b0e8990ab33ec2dad21286d3ce01dbb4bbe63c1 18-Dec-2007 Duncan Sands <baldrick@free.fr> Rename isNoReturn to doesNotReturn, and isNoUnwind to
doesNotThrow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45160 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7dc19d416c29a99bcdbb6e46fada84bc1bb45d32 18-Dec-2007 Duncan Sands <baldrick@free.fr> Rename isNoReturn to doesNotReturn, and isNoUnwind to
doesNotThrow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45160 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a6e757ec9982d68d6e89276a564f38eaa85798da 17-Dec-2007 Devang Patel <dpatel@apple.com> Add cast operators in LLVMFoldingBuilder.
Patch by Richard Pennington.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45115 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
ab870781c8e054ed5acef1ef91f564c501664163 17-Dec-2007 Devang Patel <dpatel@apple.com> Add cast operators in LLVMFoldingBuilder.
Patch by Richard Pennington.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45115 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
ece2c04d532d46405c085769d03173b392813eb3 16-Dec-2007 Duncan Sands <baldrick@free.fr> Make instcombine promote inline asm calls to 'nounwind'
calls. Remove special casing of inline asm from the
inliner. There is a potential problem: the verifier
rejects invokes of inline asm (not sure why). If an
asm call is not marked "nounwind" in some .ll, and
instcombine is not run, but the inliner is run, then
an illegal module will be created. This is bad but
I'm not sure what the best approach is. I'm tempted
to remove the check in the verifier...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45073 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7868f3cb1e6720057cbd69a534c56f37f1ee46b0 16-Dec-2007 Duncan Sands <baldrick@free.fr> Make instcombine promote inline asm calls to 'nounwind'
calls. Remove special casing of inline asm from the
inliner. There is a potential problem: the verifier
rejects invokes of inline asm (not sure why). If an
asm call is not marked "nounwind" in some .ll, and
instcombine is not run, but the inliner is run, then
an illegal module will be created. This is bad but
I'm not sure what the best approach is. I'm tempted
to remove the check in the verifier...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45073 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
b5ec947b5eff3b9105dd279a77e0dc30cd341826 16-Dec-2007 Anton Korobeynikov <asl@math.spbu.ru> Constify graph arguments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45066 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
c39ee244c9bc5faec5926f2e15e2351b625e8c6a 16-Dec-2007 Anton Korobeynikov <asl@math.spbu.ru> Constify graph arguments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45066 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
abb8bf131c8542ff25964b69797558d425ed93c8 14-Dec-2007 Dan Gohman <gohman@apple.com> Fix a typo in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45031 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
8c503e5e15bd05f3da38d548da41ca291d97e6dc 14-Dec-2007 Dan Gohman <djg@cray.com> Fix a typo in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45031 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
53c34b1db978f1820677f410c6f3f59046ffa4c0 10-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Delete the CollectorNamePool if it should become empty.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44775 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
3e1980d0d56d7f7570e5c3000233bc21848ae0c6 10-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Delete the CollectorNamePool if it should become empty.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44775 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
8d1ea750601cd27f5d70cef1186864abcf57bdb1 09-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fix a very silly typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44732 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
a146866b7a631920ad00ecc912f7fc426425f97c 09-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Fix a very silly typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44732 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
7446d0cfc551c79afa4a12296f107936ebe5e315 08-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Incorporating review feedback from Reid.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44713 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
c4dd3ab8a87c2081b9985e2a92d1dbd9b49bf07c 08-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Incorporating review feedback from Reid.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44713 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
985cb6223424c6c97c4b9a47ae74c2eedb5cd7c2 08-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding a StringPool data structure, which GC will use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44705 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
cf3db8bdda1123af21644d7e2c2dca149ebfa849 08-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding a StringPool data structure, which GC will use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44705 91177308-0d34-0410-b5e6-96231b3b80d8
tringPool.h
a3355ffb3d30d19d226bbb75707991c60f236e37 03-Dec-2007 Duncan Sands <baldrick@free.fr> Rather than having special rules like "intrinsics cannot
throw exceptions", just mark intrinsics with the nounwind
attribute. Likewise, mark intrinsics as readnone/readonly
and get rid of special aliasing logic (which didn't use
anything more than this anyway).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44544 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
79d2887c7bd6fa2d4cd915d3f2b0e45e3dba83b2 03-Dec-2007 Duncan Sands <baldrick@free.fr> Rather than having special rules like "intrinsics cannot
throw exceptions", just mark intrinsics with the nounwind
attribute. Likewise, mark intrinsics as readnone/readonly
and get rid of special aliasing logic (which didn't use
anything more than this anyway).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44544 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
afa3b6da11bc05281bcf09e45de9e037e0ee5011 28-Nov-2007 Duncan Sands <baldrick@free.fr> Add some convenience methods for querying attributes, and
use them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44403 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
637ec55233bf7a93bd9f605fb9d4a8fb7184eb14 28-Nov-2007 Duncan Sands <baldrick@free.fr> Add some convenience methods for querying attributes, and
use them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44403 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
dc024674ff96820d6020757b48d47f46d4c07db2 27-Nov-2007 Duncan Sands <baldrick@free.fr> Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f5588dc4ec43da1e4423e5ff2394669c0f000350 27-Nov-2007 Duncan Sands <baldrick@free.fr> Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
2b1f1066aca0f6a3687377636a86086fa2cd222d 18-Nov-2007 Chris Lattner <sabre@nondot.org> Fix the Linker testcase regressions, by making MemoryBuffer::getFileOrSTDIN return
a valid but empty buffer if stdin is empty.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44219 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
e098a64cb7453717d85e63b76cfca71b78784241 18-Nov-2007 Chris Lattner <sabre@nondot.org> Fix the Linker testcase regressions, by making MemoryBuffer::getFileOrSTDIN return
a valid but empty buffer if stdin is empty.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44219 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
fd617d0143a158bc1c996445262d409280e7b0cc 09-Nov-2007 Duncan Sands <baldrick@free.fr> Move MinAlign to MathExtras.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43944 91177308-0d34-0410-b5e6-96231b3b80d8
lignment.h
athExtras.h
d2f53d1904d1e405a876eb1f7fcbffa4f34c4255 09-Nov-2007 Duncan Sands <baldrick@free.fr> Move MinAlign to MathExtras.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43944 91177308-0d34-0410-b5e6-96231b3b80d8
lignment.h
athExtras.h
dc84650679b6330e0fcdd4cf8bc2a351387db7ca 28-Oct-2007 Duncan Sands <baldrick@free.fr> The guaranteed alignment of ptr+offset is only the minimum of
of offset and the alignment of ptr if these are both powers of
2. While the ptr alignment is guaranteed to be a power of 2,
there is no reason to think that offset is. For example, if
offset is 12 (the size of a long double on x86-32 linux) and
the alignment of ptr is 8, then the alignment of ptr+offset
will in general be 4, not 8. Introduce a function MinAlign,
lifted from gcc, for computing the minimum guaranteed alignment.
I've tried to fix up everywhere under lib/CodeGen/SelectionDAG/.
I also changed some places that weren't wrong (because both values
were a power of 2), as a defensive change against people copying
and pasting the code.
Hopefully someone who cares about alignment will review the rest
of LLVM and fix up the remaining places. Since I'm on x86 I'm
not very motivated to do this myself...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43421 91177308-0d34-0410-b5e6-96231b3b80d8
lignment.h
a369143858d4b127ef672b305a4bd676b5030898 28-Oct-2007 Duncan Sands <baldrick@free.fr> The guaranteed alignment of ptr+offset is only the minimum of
of offset and the alignment of ptr if these are both powers of
2. While the ptr alignment is guaranteed to be a power of 2,
there is no reason to think that offset is. For example, if
offset is 12 (the size of a long double on x86-32 linux) and
the alignment of ptr is 8, then the alignment of ptr+offset
will in general be 4, not 8. Introduce a function MinAlign,
lifted from gcc, for computing the minimum guaranteed alignment.
I've tried to fix up everywhere under lib/CodeGen/SelectionDAG/.
I also changed some places that weren't wrong (because both values
were a power of 2), as a defensive change against people copying
and pasting the code.
Hopefully someone who cares about alignment will review the rest
of LLVM and fix up the remaining places. Since I'm on x86 I'm
not very motivated to do this myself...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43421 91177308-0d34-0410-b5e6-96231b3b80d8
lignment.h
a0d9de0b66b022bb48461476a3fedc1fb8fe97b3 18-Oct-2007 Chris Lattner <sabre@nondot.org> remove dead file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43131 91177308-0d34-0410-b5e6-96231b3b80d8
ypeInfo.h
667549a33d1edd63772f6901d09f3acb5e100df2 18-Oct-2007 Chris Lattner <sabre@nondot.org> remove dead file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43131 91177308-0d34-0410-b5e6-96231b3b80d8
ypeInfo.h
52e2d83e653abd745d93bc05acba59c32a64eabf 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Changed the return type of type-specific Allocate() methods to return
void*. This is hint that we are returning uninitialized memory rather
than a constructed object.

Patched ImutAVLTree to conform to this new interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43106 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
8d824489994a351558438358e7cfb1b43eab513a 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Changed the return type of type-specific Allocate() methods to return
void*. This is hint that we are returning uninitialized memory rather
than a constructed object.

Patched ImutAVLTree to conform to this new interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43106 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
129d7d3bde306d186df552694eb511f5fe8bda6b 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Removed inclusion of cassert, which is no longer needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43099 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
8edb4ed0f9ba4ca91d80803019f1bb6bcb1d6102 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Removed inclusion of cassert, which is no longer needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43099 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
87f3870db9d92eca87e2f42c3537efe4bfb6e9c2 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Added template function alignof() which provides a clean
function-based interface to getting the alignment of a type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43096 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
e2fc01ea8d682187df2026c5ffd6fdd2425b2ad2 18-Oct-2007 Ted Kremenek <kremenek@apple.com> Added template function alignof() which provides a clean
function-based interface to getting the alignment of a type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43096 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
869a3344f17975f57a328dcc8bacf6775344c045 17-Oct-2007 Ted Kremenek <kremenek@apple.com> Added member template functions to MallocAllocator and
BumpPtrAllocator that implement allocations that return a properly
typed pointer. For BumpPtrAllocator, the allocated memory is
automatically aligned to the minimum alignment of the type (as
calculated by llvm::AlignOf::Alignment).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43087 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
11bc99617a9160db780b02a337d761c64cffe4c2 17-Oct-2007 Ted Kremenek <kremenek@apple.com> Added member template functions to MallocAllocator and
BumpPtrAllocator that implement allocations that return a properly
typed pointer. For BumpPtrAllocator, the allocated memory is
automatically aligned to the minimum alignment of the type (as
calculated by llvm::AlignOf::Alignment).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43087 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
a4d9869cf291e6f87bf9e7adfcd9a2c4e4518172 17-Oct-2007 Ted Kremenek <kremenek@apple.com> Added llvm::AlignOf, a template class whose purpose is to portably
compute the minimum memory alignment of arbitrary types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43086 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
ab4841805a6cfafbdc3aca774c967b12615b77f9 17-Oct-2007 Ted Kremenek <kremenek@apple.com> Added llvm::AlignOf, a template class whose purpose is to portably
compute the minimum memory alignment of arbitrary types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43086 91177308-0d34-0410-b5e6-96231b3b80d8
lignOf.h
efd4a5144b03f61ebfd53d0245176f95e1170fb8 17-Oct-2007 Hartmut Kaiser <hartmut.kaiser@gmail.com> Updated VC++ build system.
Silenced some VC warnings.

I'm getting linker errors, though: unresolved externals:

llvm::Split<class llvm::BasicBlock *,struct llvm::GraphTraits<class llvm::BasicBlock *> >(class llvm::DominatorTreeBase<class llvm::BasicBlock> &,class llvm::BasicBlock *)

and

llvm::Split<struct llvm::Inverse<class llvm::BasicBlock *>,struct llvm::GraphTraits<struct llvm::Inverse<class llvm::BasicBlock *> > >(class llvm::DominatorTreeBase<class llvm::BasicBlock> &,class llvm::BasicBlock *)

Where are these defined?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43073 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
2e15f6698d461579ba92bde9d2286b72f33556b7 17-Oct-2007 Hartmut Kaiser <hartmut.kaiser@gmail.com> Updated VC++ build system.
Silenced some VC warnings.

I'm getting linker errors, though: unresolved externals:

llvm::Split<class llvm::BasicBlock *,struct llvm::GraphTraits<class llvm::BasicBlock *> >(class llvm::DominatorTreeBase<class llvm::BasicBlock> &,class llvm::BasicBlock *)

and

llvm::Split<struct llvm::Inverse<class llvm::BasicBlock *>,struct llvm::GraphTraits<struct llvm::Inverse<class llvm::BasicBlock *> > >(class llvm::DominatorTreeBase<class llvm::BasicBlock> &,class llvm::BasicBlock *)

Where are these defined?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43073 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
3ef437d137afe7409b93310a2092a2f8a8dbfcca 11-Oct-2007 Chris Lattner <sabre@nondot.org> Add a new use_iterator::atEnd() method, which allows us to shrink
pred_iterator down to a single ivar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42859 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
34c0acb8d79bea365cda272af96c0b94cbdeb8ac 11-Oct-2007 Chris Lattner <sabre@nondot.org> Add a new use_iterator::atEnd() method, which allows us to shrink
pred_iterator down to a single ivar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42859 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
3daae2701b76293c31c1cbdafc9782352321e1f0 09-Oct-2007 Chris Lattner <sabre@nondot.org> Add new MemoryBuffer::getMemBufferCopy method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42815 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
12f093531481ece126cc4d9c163dad4b7f084750 09-Oct-2007 Chris Lattner <sabre@nondot.org> Add new MemoryBuffer::getMemBufferCopy method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42815 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
ec1f94423034014d4cc63d30aecdca7e30342fe8 09-Oct-2007 Devang Patel <dpatel@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42814 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
00c3070afd10e0cab151483f6edb443560e010b3 09-Oct-2007 Devang Patel <dpatel@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42814 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
cd80c169d744148f1ad709d21ef1694173f397e1 09-Oct-2007 Devang Patel <dpatel@apple.com> Add LLVMFoldingBuilder


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42806 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
8bde4ede6fe9dd6e492e8a37d7322982feb5cfa2 09-Oct-2007 Devang Patel <dpatel@apple.com> Add LLVMFoldingBuilder


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42806 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
1fc46d5a8c5fdc93a0515f3459919eb1d31f58d5 09-Oct-2007 Dan Gohman <gohman@apple.com> Remove an unnecessary friend declaration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42805 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a190a11e4653b42fc28f5aa50d37a3476e5c1d7d 09-Oct-2007 Dan Gohman <djg@cray.com> Remove an unnecessary friend declaration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42805 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
49588d83dae22e8117231c0e72d060584cd24da9 09-Oct-2007 Chris Lattner <sabre@nondot.org> update prototype, fixing build error


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42789 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
c9f0d74b21e670589b1499a41a639a1f5eff0a07 09-Oct-2007 Chris Lattner <sabre@nondot.org> update prototype, fixing build error


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42789 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9a5263241d40d493445d7f386b4d76be088c3ac1 09-Oct-2007 Dan Gohman <gohman@apple.com> Pass argc by value, not by reference, since it isn't modified.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42788 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
61db06bfaef1db75ee7d2d269fefeb889a7e8fa7 09-Oct-2007 Dan Gohman <djg@cray.com> Pass argc by value, not by reference, since it isn't modified.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42788 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
3ab264a985de3d86e0d1f5716f6d633fd8538618 08-Oct-2007 Dan Gohman <gohman@apple.com> Fix grammar in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42748 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
c1cccfd78f2cd1a55a1570bfb37e7cf9d83ec9d3 08-Oct-2007 Dan Gohman <djg@cray.com> Fix grammar in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42748 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
cdf2b3b2f88d6f961b664e3f67a8ee37b46b0d27 08-Oct-2007 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42747 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b0f86e88586caad7a3a2bae75f11ac268fd8719d 08-Oct-2007 Dan Gohman <djg@cray.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42747 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
acd96191cd8d85f376ec0baafdc4f21b3042f677 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Removing the silly CHelpers header by rolling wrap and unwrap into the C
bindings headers themselves, hidden behind #ifdef __cplusplus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42666 91177308-0d34-0410-b5e6-96231b3b80d8
Helpers.h
ddf030ba62cb96ded043e745b6ba5fa3749da635 06-Oct-2007 Gordon Henriksen <gordonhenriksen@mac.com> Removing the silly CHelpers header by rolling wrap and unwrap into the C
bindings headers themselves, hidden behind #ifdef __cplusplus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42666 91177308-0d34-0410-b5e6-96231b3b80d8
Helpers.h
21c276d2fa99914d5ed958ac0aec7d78e3dd87cf 01-Oct-2007 Dan Gohman <gohman@apple.com> Add empty() member functions to a few container-like classes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42487 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
ce140acc98f6bd98633d58083b62cbd8f19f5afd 01-Oct-2007 Dan Gohman <djg@cray.com> Add empty() member functions to a few container-like classes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42487 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
d070d1e56fbfdad752342838dda39e14582ccad5 29-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Demoting CHelpers.h to include/llvm/Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42465 91177308-0d34-0410-b5e6-96231b3b80d8
Helpers.h
746845afb0d4295b556944c05d4bd0654fc90744 29-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> Demoting CHelpers.h to include/llvm/Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42465 91177308-0d34-0410-b5e6-96231b3b80d8
Helpers.h
d9900c9442d48b73bc5bb6132abcb9bc0257c714 27-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> My previous Registry.h header, as well as Collectors.h, which is the
registry for dynamically-loaded garbage collection compiler plugins.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42415 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
3271e5aea340b1beb0953ce04cfc90791fc26dbf 27-Sep-2007 Gordon Henriksen <gordonhenriksen@mac.com> My previous Registry.h header, as well as Collectors.h, which is the
registry for dynamically-loaded garbage collection compiler plugins.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42415 91177308-0d34-0410-b5e6-96231b3b80d8
egistry.h
96345186a5fefff5c88195f6f2505232215b258e 19-Sep-2007 Ted Kremenek <kremenek@apple.com> Previously GraphWriter assumed operator*() for node_iterator always
returned a reference type. This patch allows operator*() to return a
non-reference type while still maintaining the old behavior when it
does return a reference type.

This patch was motivated when I tried to use "df_iterator" (see
llvm/ADT/DepthFirstIterator.h) as a "node_iterator", as df_iterator
does not return a reference type and thus we would get a compilation
error when trying to take the address of a temporary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42151 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
fffc1b3f81637315476549eec57d69f96f3edd3c 19-Sep-2007 Ted Kremenek <kremenek@apple.com> Previously GraphWriter assumed operator*() for node_iterator always
returned a reference type. This patch allows operator*() to return a
non-reference type while still maintaining the old behavior when it
does return a reference type.

This patch was motivated when I tried to use "df_iterator" (see
llvm/ADT/DepthFirstIterator.h) as a "node_iterator", as df_iterator
does not return a reference type and thus we would get a compilation
error when trying to take the address of a temporary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42151 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
ecd91377583b9f42a006eb78aab550c2265d4c9b 18-Sep-2007 Bill Wendling <isanbard@gmail.com> Add support for appending a suffix to the end of a mangled name.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42071 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
d00de0ece78776e8850119e6430b3c63da41fcb8 18-Sep-2007 Bill Wendling <isanbard@gmail.com> Add support for appending a suffix to the end of a mangled name.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42071 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
188b5224fd9c8573713665c77f9d2f415bcc4ff1 05-Sep-2007 Evan Cheng <evan.cheng@apple.com> Added Reset() to free all allocated memory regions and reset state to be the same as right after ctor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41728 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
72ac148499ae3399ba6dea44e959d0efc0f08573 05-Sep-2007 Evan Cheng <evan.cheng@apple.com> Added Reset() to free all allocated memory regions and reset state to be the same as right after ctor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41728 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
b8f74793b9d161bc666fe27fc92fe112b6ec169b 04-Sep-2007 David Greene <greened@obbligato.org> Update GEP constructors to use an iterator interface to fix
GLIBCXX_DEBUG issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41697 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
393be88e51bce88754c8b5615e8a295adbdab1e2 04-Sep-2007 David Greene <greened@obbligato.org> Update GEP constructors to use an iterator interface to fix
GLIBCXX_DEBUG issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41697 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
1a0190f4f0deafddc107c45784ebc543666e909a 30-Aug-2007 Ted Kremenek <kremenek@apple.com> Added Graphviz escaping for the '|' character.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41610 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
c3c73d863bb3bd647ce567e4c2961ec764f4c8a0 30-Aug-2007 Ted Kremenek <kremenek@apple.com> Added Graphviz escaping for the '|' character.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41610 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
f1355a55f8d815f5385e9a4432195f03b65f3a42 27-Aug-2007 David Greene <greened@obbligato.org> Update InvokeInst to work like CallInst


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41506 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
8278ef592ef0caf5cf0ccd8646fb7fdfbdc2e2d8 27-Aug-2007 David Greene <greened@obbligato.org> Update InvokeInst to work like CallInst


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41506 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
81975f6dfd9d306d0ea7ce3ef22561c949de9af9 27-Aug-2007 Dan Gohman <gohman@apple.com> Add explicit keywords and remove spurious trailing semicolons.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41482 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
9ba5d4d7fcdb4f9326645c18535a82d80fea8e49 27-Aug-2007 Dan Gohman <djg@cray.com> Add explicit keywords and remove spurious trailing semicolons.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41482 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
420731a818b52f070af05cdad8dfba2f39ecc157 21-Aug-2007 David Greene <greened@obbligato.org> Doxygenize comments.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41222 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
f1a75f634add670f6f74ef8242be659c0e82dd7b 21-Aug-2007 David Greene <greened@obbligato.org> Doxygenize comments.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41222 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
94c510c63176bf5d43c35886640df25adffd5448 20-Aug-2007 David Greene <greened@obbligato.org> Add FilteredPassNameParser along with PassArgFilter to filter passes
based on their Arg members.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41192 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
d2ce5b45df1e2dd9ddb2a6aeef0b72f5c7603113 20-Aug-2007 David Greene <greened@obbligato.org> Add FilteredPassNameParser along with PassArgFilter to filter passes
based on their Arg members.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41192 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
eb9422b19d427edb8fec666823a4a0f7078c9c1b 08-Aug-2007 Reid Spencer <rspencer@reidspencer.com> Make it clear that getSTDIN returns null when stdin is empty.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40940 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
601095946e50634833d2c601d21d788ea1665273 08-Aug-2007 Reid Spencer <reid@x10sys.com> Make it clear that getSTDIN returns null when stdin is empty.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40940 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
6f427580e0ff3c404341adcffc4a8c0d5b63a892 07-Aug-2007 Chris Lattner <sabre@nondot.org> remove #if 0 code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40880 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
b78b47b2e12db9bf34d85256ea24065321fbb2e5 07-Aug-2007 Chris Lattner <sabre@nondot.org> remove #if 0 code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40880 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
7409cabc3e33545db59af61f05a4c870d7ad64c0 06-Aug-2007 Reid Spencer <rspencer@reidspencer.com> @verbatim needs to be on a line by itself.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40865 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
bf3121d304a63d5a5c9bc61085401864adaf75bf 06-Aug-2007 Reid Spencer <reid@x10sys.com> @verbatim needs to be on a line by itself.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40865 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
181b6c9cb5def44658d15848e34c5c45d973f065 05-Aug-2007 Reid Spencer <rspencer@reidspencer.com> Fix minor doxygen nits.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40854 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
angler.h
emoryBuffer.h
treams.h
37c7cea4847c32beb300b32e46db4805dfe716fa 05-Aug-2007 Reid Spencer <reid@x10sys.com> Fix minor doxygen nits.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40854 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
angler.h
emoryBuffer.h
treams.h
52eec548206d0b135b55ba52dd0e82e978f15ae5 01-Aug-2007 David Greene <greened@obbligato.org> New CallInst interface to address GLIBCXX_DEBUG errors caused by
indexing an empty std::vector.

Updates to all clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40660 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
b1c4a7b210b9a8aa98fcffae8a84a0a20860ec7a 01-Aug-2007 David Greene <greened@obbligato.org> New CallInst interface to address GLIBCXX_DEBUG errors caused by
indexing an empty std::vector.

Updates to all clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40660 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
f17a25c88b892d30c2b41ba7ecdfbdfb2b4be9cc 18-Jul-2007 Dan Gohman <djg@cray.com> It's not necessary to do rounding for alloca operations when the requested
alignment is equal to the stack alignment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40004 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
llocator.h
nnotation.h
FG.h
allSite.h
asting.h
ommandLine.h
ompiler.h
onstantRange.h
OTGraphTraits.h
ataTypes.h.in
ebug.h
warf.h
ynamicLinker.h
LF.h
ileUtilities.h
etElementPtrTypeIterator.h
raphWriter.h
nstIterator.h
nstVisitor.h
LVMBuilder.h
eakDetector.h
anagedStatic.h
angler.h
athExtras.h
emoryBuffer.h
utexGuard.h
utputBuffer.h
assNameParser.h
atternMatch.h
luginLoader.h
lowOperationInformer.h
tableBasicBlockNumbering.h
treams.h
ystemUtils.h
imer.h
ypeInfo.h
ype_traits.h
28753f8df2921fa9e9d60717c2078c826ea82bb4 14-Jul-2007 Nick Lewycky <nicholas@mxc.ca> Clarify the language. Pointed out by Duncan Sands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39857 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
377b1190cbcf99e9298300d890c4b744dd2ed2c7 14-Jul-2007 Nick Lewycky <nicholas@mxc.ca> Add alternate ConstantRange intersection algorithm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39851 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
27e9d457d4047cf0051e17d9ca39740875d11440 05-Jul-2007 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37925 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a99be51bf5cdac1438069d4b01766c47704961c8 05-Jul-2007 Gabor Greif <ggreif@gmail.com> Here is the bulk of the sanitizing.
Almost all occurrences of "bytecode" in the sources have been eliminated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
e644ef7b098460ce831220c780cbe25eaef3fb28 29-Jun-2007 John Criswell <criswell@uiuc.edu> Convert .cvsignore files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
cvsignore
0ce4b8eda323b8f01252d809ff62b0a54bc7a978 27-Jun-2007 Dan Gohman <gohman@apple.com> Allow DOUT to be used outside of the llvm namespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37753 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
b0760c80b3994d41fcf350b7cd33a9a8f07338f9 15-Jun-2007 Chris Lattner <sabre@nondot.org> m_not should match vector not


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37587 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
848377d53360fa1c87592bdeb61eaffcc09de8c5 27-May-2007 Chris Lattner <sabre@nondot.org> Add a new LLVMBuilder class, which makes it simpler and more uniform to
create large amounts of instructions by separating the insertion point
logic from the logic of what to create.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37332 91177308-0d34-0410-b5e6-96231b3b80d8
LVMBuilder.h
81da02b553b86868637f27b89c6e919c31ed5b51 22-May-2007 Dale Johannesen <dalej@apple.com> Make tail merging the default, except on powerPC. There was no prior art
for a target-dependent default with a command-line override; this way
should be generally usable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37285 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2703f23304c4cd466655f4eebd7cf32282f4bbb8 14-May-2007 Dan Gohman <gohman@apple.com> Use templates for the GraphType for DefaultDOTGraphTraits' members instead
of just using void*. This allows it to be used with graph adapters like
Inverse.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37032 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
0fea8ebb4a1e5b97d2413f45c0b5807d7eb5397e 07-May-2007 Jeff Cohen <jeffc@jolt-lang.org> Unbreak VC++ build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36901 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
5499da88331a31a9dcc24dc160f58b411fb0d34a 07-May-2007 Chris Lattner <sabre@nondot.org> Enhance MemoryBuffer to return error messages in strings if they occur.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36899 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
663d7ddf6366ec9ceba5ae2dbf322dfb755f5201 06-May-2007 Chris Lattner <sabre@nondot.org> remove dead header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36884 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
e96eec0c6966473ed8f71ecf4d2dd37daec29d36 06-May-2007 Chris Lattner <sabre@nondot.org> Add a helper that either opens a file or stdin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36835 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
18a4c74136a9919dc3235d03c0e060f32d01f3b0 03-May-2007 Chris Lattner <sabre@nondot.org> remove extraneous type qualifiers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36679 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
333ffd4abfcc3be32a945dc73c81adeafde1ba6b 29-Apr-2007 Chris Lattner <sabre@nondot.org> Add a new memorybuffer class, to unify all the file reading code in the system


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36553 91177308-0d34-0410-b5e6-96231b3b80d8
emoryBuffer.h
2e3ab5726de95f58146d727fb8b76787c28761f8 20-Apr-2007 Chris Lattner <sabre@nondot.org> Fix a very strange assertion message, patch by Christopher Lamb
CVS: ----------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36267 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
bed2946a96ecb15b0b636fa74cb26ce61b1c648e 16-Apr-2007 Anton Korobeynikov <asl@math.spbu.ru> Removed tabs everywhere except autogenerated & external files. Add make
target for tabs checking.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36146 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
athExtras.h
a1a702cdd23221e6e3f36632be91150138958e9d 13-Apr-2007 Dan Gohman <gohman@apple.com> Rename Value::getValueType to getValueID, to avoid confusion with
other things named getValueType.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35964 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
69d6f1358ca8c442a65fd8d5900f7296fbb2762d 12-Apr-2007 Chris Lattner <sabre@nondot.org> improve the patch for PR1318 to also support grouped options with custom
handlers (like the pass list). My previous fix only supported *new* command
line options, not additions to old ones.

This fixes test/Feature/load_module.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35935 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
be5dcf5c1e21a1d8041d7c7f9424123dbd664d3c 07-Apr-2007 Reid Spencer <rspencer@reidspencer.com> For PR1291:
Change to use PathWithStatus


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35746 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
e32157c6098ee7536315e9793eed98d21bf71fd0 07-Apr-2007 Nick Lewycky <nicholas@mxc.ca> Add signExtend to ConstantRange, to complement zeroExtend and truncate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35733 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
9878d6ae3a535e421f69e0c08e27b259ad1bdbdc 06-Apr-2007 Chris Lattner <sabre@nondot.org> rearchitect the registration mechanism used by the command line option stuff.
This dramatically reduce the amount of memory allocated by the commandline stuff
at static init time, changing it to build local data structures when ParseCommandLineOptions
is called. In a dummy empty program that links some llvm libraries, this reduces
the number of malloc'd bytes from 4864 to 3360 on entry to main. Most of that
memory is now allocated by non-commandline related stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35701 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
assNameParser.h
3b6078f584d856b3b0fb4dc3c4255502e605be1e 06-Apr-2007 Chris Lattner <sabre@nondot.org> Switch some vectors to smallvectors. This reduces amount of malloc'd
memory that occurs before main starts from 5104 to 4864 bytes with a dummy
example app.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35698 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
f6143ef556ed01311d2043d38421302479f7866c 06-Apr-2007 Chris Lattner <sabre@nondot.org> Eliminate unneeded virtual methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35697 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
6e18fa0e1c230ac1b551c34214dac82510974681 06-Apr-2007 Chris Lattner <sabre@nondot.org> eliminate a virtual method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35691 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
af035f3460f7d758f73987c3f692faf8d6cae062 05-Apr-2007 Chris Lattner <sabre@nondot.org> remove the dead removeArgument method, rename Options to OptionsMap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35690 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
c3c395cf5e401328836e81c18cb70eef1b9ea5ac 22-Mar-2007 Jeff Cohen <jeffc@jolt-lang.org> Be more explicit concerning argument sizes.
Use VC++ byteswap intrinsics.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35267 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
3400e6af6b10acea219c02ac262637220f84218f 10-Mar-2007 Nick Lewycky <nicholas@mxc.ca> Add getter methods for the extremes of a ConstantRange.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35056 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
ca5183d445954a9b2a570d6bbba1bc2b00ad6442 05-Mar-2007 Jeff Cohen <jeffc@jolt-lang.org> Unbreak VC++ build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34917 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
82a60eca8fb5761817960e75fd469246496f8dce 05-Mar-2007 Chris Lattner <sabre@nondot.org> fix 80 col violations, mark arrays static


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34915 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
e6efc859398498c3a08a3f36e82c63a706ae0d7e 02-Mar-2007 Anton Korobeynikov <asl@math.spbu.ru> Fix uninitialized use of variable. Remove tabs and fix identation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34850 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
a505fb6d9f1684a56680635a38e45a9c14d910e6 02-Mar-2007 Owen Anderson <resistor@mac.com> Fix a typo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34836 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c100b96b1536ef92cadac28bd268da105a67d4a0 01-Mar-2007 Owen Anderson <resistor@mac.com> Use GCC intrinsics when available, and use smarter fallbacks when not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34812 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
a6e8a955d6ab82911a1909fac7a9f4256a4d090e 01-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Remove the "isSigned" parameters from ConstantRange. It turns out they
are not needed as the results are the same with or without it.

Patch by Nicholas Lewycky.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34782 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
2a934cb6072bb0840b39e899e02ad9dea95b18dc 01-Mar-2007 Owen Anderson <resistor@mac.com> Use the GCC built-in for PopulationCount when it's available, and use a faster
algorithm when it's not. This should be particularly noticeable in the
64-bit case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34776 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
bb626a6751db9a63d159d32522bdf88cedf46eeb 28-Feb-2007 Reid Spencer <rspencer@reidspencer.com> Move ConstantRange class to lib/Support from lib/Analysis and make its
interface not depend on Type or ICmpInst.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34761 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
581b0d453a63f7f657248f80317976995262be11 28-Feb-2007 Reid Spencer <rspencer@reidspencer.com> For PR1205:
Remove ConstantInt from ConstantRange interface and adjust its users to
compensate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34758 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
dc5c1597014fa5c47c94db2b9fd424d2266053db 28-Feb-2007 Reid Spencer <rspencer@reidspencer.com> For PR1205:
First round of ConstantRange changes. This makes all CR constructors use
only APInt and not use ConstantInt. Clients are adjusted accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34756 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
663e711dc235cae94eb50abb1c0571fd0b3a6a35 28-Feb-2007 Reid Spencer <rspencer@reidspencer.com> For PR1205:
Convert ConstantRange class to use APInt internally as its value type for
the constant range, instead of ConstantInt.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34745 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
b4d7e35dde3ccbe0dc10bf13332ade9812586dd0 20-Feb-2007 Chris Lattner <sabre@nondot.org> add a way to register an arbitrary cleanup function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34442 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
f7e804b683d529e938d8144996558ff8d2af5025 13-Feb-2007 Andrew Lenharth <andrewl@lenharth.org> I love non-deturminism. Returning objects with references to stack objects is a bad idea (TM).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34210 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
3e051647c079fe29db049646b39611fc0135327d 11-Feb-2007 Nick Lewycky <nicholas@mxc.ca> Fix comments to match names of functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34173 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
68ce9ba666a7eb8c7eb3fb7888e4418fffd2e716 10-Feb-2007 Chris Lattner <sabre@nondot.org> add helper method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34155 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
ae6eb5bfbe9a01f6c4c7cca7db8468ee57a5a243 06-Feb-2007 Chris Lattner <sabre@nondot.org> StableBasicBlockNumbering is conceptually just a wrapper around UniqueVector,
so we should actually use a UniqueVector to implement it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33935 91177308-0d34-0410-b5e6-96231b3b80d8
tableBasicBlockNumbering.h
05c0b9ad7907e452a3a1c7afcbd8507d5b0c9626 05-Feb-2007 Bill Wendling <isanbard@gmail.com> Use unsigned char& instead of std::vector<>::reference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33896 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
18e84b55a4164d7852e91668e55d22543a6b1ec2 03-Feb-2007 Bill Wendling <isanbard@gmail.com> Added some accessor methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33814 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
832254e1c2387c0cbeb0a820b8315fbe85cb003a 02-Feb-2007 Reid Spencer <rspencer@reidspencer.com> Changes to support making the shift instructions be true BinaryOperators.
This feature is needed in order to support shifts of more than 255 bits
on large integer types. This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
shl i32 %X, 1
instead of
shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33776 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
atternMatch.h
b82313fdc21e8190768addf0f16710b94f0e1441 01-Feb-2007 Jim Laskey <jlaskey@mac.com> Support for non-landing pad exception handling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33755 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
283663a4ed18124980c1a5e3114550638115edd8 01-Feb-2007 Reid Spencer <rspencer@reidspencer.com> Fix a homonymo in a comment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33754 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
aed293dfba04b07a867491c11dfff4bf3eb6bddd 01-Feb-2007 Devang Patel <dpatel@apple.com> Add PrintVersionMessage() that tools can use to print version number
without exiting program.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33737 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
fd58e6e2ecebe92804869586d65b27085110f336 23-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> Moved disassembler to libSystem


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33461 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.h
24d6da5fedcf39891f7d8c5b031c01324b3db545 21-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR970:
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33415 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
8cd4c3e6534a14566bf163301fd45bca34e655c1 19-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> Adding disassembler interface and external hook to udis86 library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33358 91177308-0d34-0410-b5e6-96231b3b80d8
isassembler.h
c904a5b925ce9981ad7501b14ee39cbc8795e23c 18-Jan-2007 Bill Wendling <isanbard@gmail.com> Have the OutputBuffer take the is64Bit and isLittleEndian booleans.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33316 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
f341ccbff99a99453002143992b5d6fb391949c5 17-Jan-2007 Bill Wendling <isanbard@gmail.com> Refactored output buffer methods from MachO and ELF writers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33310 91177308-0d34-0410-b5e6-96231b3b80d8
utputBuffer.h
6b6b6ef1677fa71b1072c2911b4c1f9524a558c9 11-Jan-2007 Zhou Sheng <zhousheng00@gmail.com> For PR1043:
Merge ConstantIntegral and ConstantBool into ConstantInt.
Remove ConstantIntegral and ConstantBool from LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33073 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
atternMatch.h
fcf17a30961ac3dfee893c323f7b9ae5fe012957 03-Jan-2007 Bill Wendling <isanbard@gmail.com> The previous implementation of LLVM Streams wasn't removing symbols. This
one should.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32845 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
treams.h
e4d87aa2de6e52952dca73716386db09aad5a8fd 23-Dec-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32751 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
nstVisitor.h
atternMatch.h
49e6a9bc94a115d674502009b396c1a22fb1b1a1 19-Dec-2006 Chris Lattner <sabre@nondot.org> Doxgenate comments.
Add GreatestCommonDivisor64


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32661 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
5c7e326585f3a543388ba871c3425f7664cd9143 17-Dec-2006 Bill Wendling <isanbard@gmail.com> Added an automatic cast to "std::ostream*" etc. from OStream. We then can
rework the hacks that had us passing OStream in. We pass in std::ostream*
instead, check for null, and then dispatch to the correct print() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32636 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
ebug.h
treams.h
1a097e30d39e60303ae2b19f7a56e813f3e3c18e 08-Dec-2006 Bill Wendling <isanbard@gmail.com> Don't use <sstream> in Streams.h but <iosfwd> instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32340 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
e81561909d128c6e2d8033cb5465a49b2596b26a 07-Dec-2006 Bill Wendling <isanbard@gmail.com> Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are
now cerr, cout, and NullStream resp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
onstantRange.h
ebug.h
raphWriter.h
assNameParser.h
treams.h
a091fa861987b603669d730cce7365189744ab0f 06-Dec-2006 Jim Laskey <jlaskey@mac.com> Ignoring the upper 32 bits of a 64 bit constant is not a good thing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32294 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
bdbf5fd1c9cfa30a348596b127394fa1f4caf033 06-Dec-2006 Chris Lattner <sabre@nondot.org> add a helper to call llvm_shutdown()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32249 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
baf2ecda5fc2b94b0f40bd8780ebaf71410ca2e5 02-Dec-2006 Chris Lattner <sabre@nondot.org> Start moving pass registration over to using the ManagedStatic mechanism.
This fixes issues where passes get unregistered before llvm_shutdown is
called, and is generally cleaner and simpler. Analysis groups up next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32108 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
5365489f6ce9d8c8d6c7227b1768bd372a37c158 01-Dec-2006 Chris Lattner <sabre@nondot.org> remove 'target constructor' support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32100 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
95e6effad29b435180db9534fb59ab8910d17c21 29-Nov-2006 Reid Spencer <rspencer@reidspencer.com> Get the delegation right for InstVisitor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32025 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
68fe61d6a165ea6090008e281330895a21607daf 29-Nov-2006 Bill Wendling <isanbard@gmail.com> Replacing std::iostreams with llvm iostreams. Some of these changes involve
adding a temporary wrapper around the ostream to make it friendly to
functions expecting an LLVM stream. This should be fixed in the future.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31990 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
b5ebf15b2b2ce8989caf1a1114b05d80b0f9bd48 28-Nov-2006 Bill Wendling <isanbard@gmail.com> Added a temporary hack to get the llvm-streams to work for future checkins.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31978 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
eb7313805b06a9751e382fb70751290f49e334c1 27-Nov-2006 Bill Wendling <isanbard@gmail.com> Protect against null streams.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31937 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
3da59db637a887474c1b1346c1f3ccf53b6c4663 27-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31931 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
atternMatch.h
7fe9518698d4b07fb9dd81f5a34f312d690539cc 26-Nov-2006 Bill Wendling <isanbard@gmail.com> Add method that will take a function pointer so that it can handle things
like "llvm_cerr << std::flush";


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31926 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
45fb3f3cb2b8efc01d9bbe42a64194f35b92c759 20-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
First in a series of patches to convert SetCondInst into ICmpInst and
FCmpInst using only two opcodes and having the instructions contain their
predicate value. Nothing uses these classes yet. More patches to follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31867 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
52883e7a9a637c0d6dea091917090a8ac63e7736 17-Nov-2006 Bill Wendling <isanbard@gmail.com> Used llvm_ostream instead of std::ostream objects. This will reduce use
of the icky <iostream> class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31818 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
ebug.h
raphWriter.h
assNameParser.h
e562ed1c92d2d0845632c0f7d9f294fa7c4103ba 17-Nov-2006 Bill Wendling <isanbard@gmail.com> Added wrappers for the std::cerr/std::cout objects. The wrappers will
soon replace all uses of those objects.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31817 91177308-0d34-0410-b5e6-96231b3b80d8
treams.h
a72ac422a22683b9ab872838be1a19445e3c1141 17-Nov-2006 Bill Wendling <isanbard@gmail.com> #ifndef NDEBUG the "if (Stream) ..." stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31803 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
8ea7c52185e3e686f8ca9d65d0135771329fbaa8 17-Nov-2006 Bill Wendling <isanbard@gmail.com> Adjusted the // comments so that doxygen picks them up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31801 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
1ea783f13a83ce9402f543fbc2367d125dc26f91 17-Nov-2006 Bill Wendling <isanbard@gmail.com> Added "DOUT" macro. This is used as a replacement for the std::cerr
stream. It centralizes the use of std::cerr so that static c'tor/d'tors
aren't scattered around all over the place. The way to use it is like this:

DOUT << "This is a status line: " << Var << "\n";

If "-debug" is specified, it will print. Otherwise, it'll not print. If
NDEBUG is defined, the DOUT does nothing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31798 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
cfa0c251bdc9cf62e84ed422a647b5d1cee451a3 09-Nov-2006 Jim Laskey <jlaskey@mac.com> math.h creates ambiguity


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31591 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
4320f810c8c93d1f6c568ef363af29ac21f10b03 09-Nov-2006 Jim Laskey <jlaskey@mac.com> math.h for C's sake.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31590 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
12cd0012bd688f6572602a4d26a2b12165380bd0 08-Nov-2006 Jim Laskey <jlaskey@mac.com> Make sure <cmath> comes first


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31559 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
d96e180da0a9395ac54960d4cc3d0b469fa11009 08-Nov-2006 Jim Laskey <jlaskey@mac.com> Add backup support for HUGH_VALF.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31553 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
3822ff5c71478c7c90a50ca57045fb676fcb5005 08-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
This patch converts the old SHR instruction into two instructions,
AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not
dependent on the sign of their operands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31542 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
1d2bf885dd9f3175a5a2f6c4389eb5acbc180182 06-Nov-2006 Reid Spencer <rspencer@reidspencer.com> Fix a small bug noticed on code review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31476 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
d41b30def3181bce4bf87e8bde664d15663165d0 05-Nov-2006 Jeff Cohen <jeffc@jolt-lang.org> Unbreak VC++ build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31464 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
0a783f783ca05c961234385f5b269d4cf03dbbdb 02-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
Replace the REM instruction with UREM, SREM and FREM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31369 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
9f617d64c5f3f2a0949f359f63b1cb3bff4b3a9b 29-Oct-2006 Chris Lattner <sabre@nondot.org> Add a new llvm::Allocator abstraction, which will be used by a container
I'm about to add. This is similar to, but necessarily different than, the
STL allocator class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31285 91177308-0d34-0410-b5e6-96231b3b80d8
llocator.h
1628cec4d7fce310d9cde0bcc73997e5a71692c4 26-Oct-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
Make necessary changes to support DIV -> [SUF]Div. This changes llvm to
have three division instructions: signed, unsigned, floating point. The
bytecode and assembler are bacwards compatible, however.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31195 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
f3799d6317e38a996dcea50143cbc15543d8f5c4 13-Oct-2006 Chris Lattner <sabre@nondot.org> simplify trivial function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30924 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
0376ade972840217ae708f634509646a15c84b3b 09-Oct-2006 Nick Lewycky <nicholas@mxc.ca> Fix usage example.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30837 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
ec20402c90b605afeedbcf0e3aabe6f8054f23dd 02-Oct-2006 Jim Laskey <jlaskey@mac.com> Add ability to annotate (color) nodes in a viewGraph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30686 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
771cbf30bc1ff025316d1a80aeb5102375c1598e 28-Sep-2006 Chris Lattner <sabre@nondot.org> new helper class to provide more explicit management of static ctor/dtors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30638 91177308-0d34-0410-b5e6-96231b3b80d8
anagedStatic.h
0ec0b539a75e8896636530bddce47f5be14abd19 18-Sep-2006 Chris Lattner <sabre@nondot.org> Add support for pattern matching cast operations


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30454 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
833eb68a1f18f361b2429fe12d13533cc9e3debe 07-Sep-2006 Chris Lattner <sabre@nondot.org> Add new option to leave asm names alone


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30149 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
f91e4f86c2acc44de72cf46ae78e541195ce63b6 28-Aug-2006 Chris Lattner <sabre@nondot.org> Remove a dead class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29918 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
6f3241dbbf6926a1ad1d0e2f1e50e6228a55b258 27-Aug-2006 Chris Lattner <sabre@nondot.org> add directive to disable inlining


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29912 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
a4f0b3a084d120cfc5b5bb06f64b222f5cb72740 27-Aug-2006 Chris Lattner <sabre@nondot.org> s|llvm/Support/Visibility.h|llvm/Support/Compiler.h|


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29911 91177308-0d34-0410-b5e6-96231b3b80d8
isibility.h
7422a761008ef63152417c5e69ddc31252fb6b10 27-Aug-2006 Chris Lattner <sabre@nondot.org> Add external definitions for commonly-used template specializations and add
anchor methods to others. This eliminates the vtable/template method bloat
in .o files that defining a cl::opt used to impose (~4K per .o file for one
cp::opt<unsigned>).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29909 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
0c0cc92762bdf34f26762eeaf66f6f8791428db5 27-Aug-2006 Chris Lattner <sabre@nondot.org> New place to put compiler-specific functionality. This replaces Visibility.h,
and provides macros that can be used to make explicit instantiations of
template specializations, which is a gcc-specific feature.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29908 91177308-0d34-0410-b5e6-96231b3b80d8
ompiler.h
51c5a286bae5ad27ddc49602f44b7ea7253a4cc9 23-Aug-2006 Reid Spencer <rspencer@reidspencer.com> For PR797:
Final removal of exceptions from lib/System and adjustment of users to
accommodate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29846 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
487447626c273962744820a370d93ddef961c3f2 22-Aug-2006 Reid Spencer <rspencer@reidspencer.com> Make the sys::Path::GetTemporaryDirectory method not throw exceptions and
adjust users of it to compensate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29831 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
6f397bf4c8f19691bde016e5e6fbeddf8cd7f363 21-Aug-2006 Jim Laskey <jlaskey@mac.com> Adding new Dwarf constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29798 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
f42d1ddb18132ff3be2e7fbff24dace5415216da 12-Aug-2006 Chris Lattner <sabre@nondot.org> remove IncludeFile turds in MathExtras.h, which bloats every .o file that
#includes it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29639 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
dc4f6bea6ca3ddb621544b3fbf86914e542b5156 08-Aug-2006 Reid Spencer <rspencer@reidspencer.com> Remove the use of "IncludeFile" from this support facility. The mechanism
to build a loadable module is now correctly defined and documented so this
workaround isn't needed any longer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29553 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
0c33231eff17edbdabdb186e1fae718cf94b58b2 29-Jul-2006 Chris Lattner <sabre@nondot.org> Modify Path::eraseFromDisk to not throw an exception.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29400 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
7107c3badfe78ec89dcab6c02cf1b1bcaccc42a8 26-Jul-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
1. Move IncludeFile.h to System library
2. Move IncludeFile.cpp to System library
3. #1 and #2 required to prevent cyclic library dependencies for libSystem
4. Convert all existing uses of Support/IncludeFile.h to System/IncludeFile.h
5. Add IncludeFile support to various lib/System classes.
6. Add new lib/System classes to LinkAllVMCore.h
All this in an attempt to pull in lib/System to what's required for VMCore


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29287 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
ncludeFile.h
angler.h
athExtras.h
lowOperationInformer.h
433fd76e51e9bd9a4933e2c1775a7410928112c8 19-Jul-2006 Chris Lattner <sabre@nondot.org> Add an out-of-line virtual method to provide a home for the cl::option class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29191 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
0683c8cad920d241d44b126972d5cdd164dcc213 18-Jul-2006 Chris Lattner <sabre@nondot.org> Add functions to compute ceil(log2(N)) to match functions for floor(log2(N))


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29168 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
bbf34398a0f2f9e4ebece37ea07dbef0b31fdbff 07-Jul-2006 Chris Lattner <sabre@nondot.org> This patch (written by Reid) changes compressor to never throw an exception.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29045 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
148f440635598630718ee32aeee56fded466039c 07-Jul-2006 Chris Lattner <sabre@nondot.org> Modify the SlowOperationInformer interface to not throw exceptions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29028 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
c521409d4cf6c8edf4900dda36f6ef9b953f8951 28-Jun-2006 Chris Lattner <sabre@nondot.org> Add support for hidden visibility


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28968 91177308-0d34-0410-b5e6-96231b3b80d8
isibility.h
9d5b532de9bdca37810a59a93a69128441b02c55 27-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR801:
Refactor the Graph writing code to use a common implementation which is
now in lib/Support/GraphWriter.cpp. This completes the PR.

Patch by Anton Korobeynikov. Thanks, Anton!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28925 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
72a8e6f58cc7fd666f74a03c42cab616ddac7402 22-Jun-2006 Reid Spencer <rspencer@reidspencer.com> Whoops, missed a couple more C-style casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28905 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
54cb98578ac2eff4d5986eff7d2b18c66561d683 21-Jun-2006 Reid Spencer <rspencer@reidspencer.com> Use C++ style casts instead of C-style casts to shut up compiler warnings
when compiling with -pedantic. Passes regression tests on Linux.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28904 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
7089f45987728197e80174e7640f0178d688080e 16-Jun-2006 Jim Laskey <jlaskey@mac.com> 1. Revise vector debug support.

2. Update docs for vector debug support and new version control.

3. Simplify serialization of DebugDescInfo subclasses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28816 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
f8a01a966120a041fe96300271573a8bf5a3e668 15-Jun-2006 Jim Laskey <jlaskey@mac.com> 1. Support standard dwarf format (was bootstrapping in Apple format.)

2. Add vector support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28807 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
1f2d22ab94db71b2f9070a54394956bf64ee83bb 15-Jun-2006 Chris Lattner <sabre@nondot.org> Add some more matcher classes for shifts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28804 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
af303d53e6013417d189621c75179df6c7cbdcde 08-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
1. Add #includes to LinkAllVMCore.h to get Mangler.o and InlineAsm.o
2. Make Mangler.h and InlineAsm.h use the macros to ensure linkage
3. Make each of the tools with --load options include LinkAllVMCore.h
This should be the last set of changes for this bug and 800.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28719 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
4f1bd9e9963239c119db70070db1d68286b3de7e 08-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
1. Fix the macros in IncludeFile.h to put everything in the llvm namespace
2. Replace the previous explicit mechanism in all the .h and .cpp files
with the macros in IncludeFile.h
This gets us a consistent mechanism throughout LLVM for ensuring linkage.
Next step is to make sure its used in enough places.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28715 91177308-0d34-0410-b5e6-96231b3b80d8
ncludeFile.h
170da9b058141fc7c3052d352ec013aff3b54486 07-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
This change was suggested by Chris so that we can select an alternate
(or even no-op) implementation of the link assurance. I'm committing this
for your review, Chris. If the names and definitions are okay, I'll adjust
all the .h and .cpp files in a later patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28712 91177308-0d34-0410-b5e6-96231b3b80d8
ncludeFile.h
6df60a9effe4d20a48cfd9d105c0ab3c5dc3e690 07-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
Break the "IncludeFile" mechanism into its own header file and adjust other
files accordingly. Use this facility for the IntrinsicInst problem which
was the subject of PR800.
More to follow on this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28709 91177308-0d34-0410-b5e6-96231b3b80d8
ncludeFile.h
fc790168a2af2e4519b94d0c8e0e438d74fcffd7 07-Jun-2006 Chris Lattner <sabre@nondot.org> Move toolrunner out of libsupport into the bugpoint tool


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28700 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
51ab5c8862466bbddcd5c4369779c472978ed309 06-Jun-2006 Reid Spencer <rspencer@reidspencer.com> Add the -Xlinker option to bugpoint which allows an option to be passed
through to gcc when its being used as a linker. This allows -L and -l
(and any other) options to be added so that non-complete bytecode files
can be processed with bugpoint. The -Xlinker option can be added as many
times as needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28692 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
515b5b379f3508f36f647bfdafce409e28a3d90b 05-Jun-2006 Reid Spencer <rspencer@reidspencer.com> Make it possible to override the standard version printer. Not all tools
built with CommandLine.h will want the --version option to report that the
tool belongs to LLVM. To override simply pass a void func() to the
cl::SetVersionPrinter() function and that void func() will be called when
it is time to print the version information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28687 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ef27d899fd6518b7e8da1eec9f76d7beb631b3d8 31-May-2006 Vladimir Prus <ghost@cs.msu.su> Improve InstVisitor docs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28586 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
32cdb6617ee317a218976e7a6c063ca36afab760 25-May-2006 Chris Lattner <sabre@nondot.org> Fix breakage on platforms where string/cassert don't pull in int64_t.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28464 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
19b7e0e0cabfa6dfc559c64e3d6ed053832c4047 24-May-2006 Reid Spencer <rspencer@reidspencer.com> For PR786:
Minor tweaks in public headers and a few .cpp files so that LLVM can build
successfully with -pedantic and projects using LLVM with -pedantic don't
get warnings from LLVM. There's still more -pedantic warnings to fix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28453 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
lowOperationInformer.h
59e8de386d0505a732254be770ff0978e4a54234 14-May-2006 Chris Lattner <sabre@nondot.org> Improve documentation on throwing, it is not complete still though. :(


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28294 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
c7365a9ec96ff434d93d0d8052812283b33e537d 13-May-2006 Reid Spencer <rspencer@reidspencer.com> Add a #include <cassert> for situations where Casting.h is used standalone.
Patch contributed by Vladimir Prus.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28280 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
3e41da29fb74a4f2a43a1539b612b2fb11bef375 12-May-2006 Reid Spencer <rspencer@reidspencer.com> Don't use old-style casts. This prevents compiler warnings when CommandLine.h
is used in projects that have stricter warning control than LLVM. This also
helps us find casts more easily if we ever need to.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28263 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
9d3b814d537587d25f07209b0d815c8304b9c003 20-Apr-2006 Reid Spencer <rspencer@reidspencer.com> Add in missing #defines for _OpenBSD_ systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27850 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
9fc18d24ae525a0047718d28e7a8735e8582ddb2 08-Apr-2006 Chris Lattner <sabre@nondot.org> Add a new shufflevector instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27507 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
b8509c5752d58280178f611e0c3f8b89ed076598 23-Mar-2006 Jim Laskey <jlaskey@mac.com> Generate local variable and scope information and equivalent dwarf forms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26989 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
abd19e8b5bc96b62000d60254bcfe6297639d4b1 01-Mar-2006 Jim Laskey <jlaskey@mac.com> Remove comma from enum list.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26456 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
9c4447aa2b47f133ac3eac095adb3c375d33031e 01-Mar-2006 Jim Laskey <jlaskey@mac.com> Switch back to using actual dwarf tags. Simplifies code without loss to other
debug forms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26455 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
9a777a3a8ed8f73cc9a256208ad3c52391eb5aae 27-Feb-2006 Jim Laskey <jlaskey@mac.com> Qualify dwarf namespace inside llvm namespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26409 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
0d086af82b2b659688911a5e8c3eb27d58156063 27-Feb-2006 Jim Laskey <jlaskey@mac.com> Re-orging file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26401 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
c70cc35ddfe2b938846c3029a7b634c7f8c47978 14-Feb-2006 Chris Lattner <sabre@nondot.org> Fix typo that caused build failures for things trying to use m_Or.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26153 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
4b934766bde8989b4eeb3f4a1cc222327e262379 26-Jan-2006 Andrew Lenharth <andrewl@lenharth.org> Remember plugins should someone like bugpoint want to know them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25649 91177308-0d34-0410-b5e6-96231b3b80d8
luginLoader.h
a550f638333815177ac79a6fa357461d77396614 26-Jan-2006 Jim Laskey <jlaskey@mac.com> Split out Dwarf constants for use outside DwarfWriter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25646 91177308-0d34-0410-b5e6-96231b3b80d8
warf.h
e01a9852a012db69ac641cc65f48d61a1eb10453 22-Jan-2006 Chris Lattner <sabre@nondot.org> This header should not pull in <iostream>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25511 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
4eb2e3a6f45e6f0a4a8f0002918f8d14c34169c1 17-Jan-2006 Robert Bocchino <bocchino@illinois.edu> Support for the insertelement operation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25405 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
b69c190c26da6d83391a4956ed2dfc0fe45b5bfa 14-Jan-2006 Jeff Cohen <jeffc@jolt-lang.org> Fix generous source of VC++ truncation warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25311 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
6fb3bd6a658940287789198d3207b0da04c0a4e6 14-Jan-2006 Nate Begeman <natebegeman@mac.com> Add bswap intrinsics as documented in the Language Reference


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25309 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
49b78a569609881811d905960baa7dd1ab801383 10-Jan-2006 Robert Bocchino <bocchino@illinois.edu> Added an instruction and constant expression for the extractelement
operation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25176 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
d35f6056137788fcee34b25e70b0d14b453490fc 10-Nov-2005 Chris Lattner <sabre@nondot.org> Allow per-character control over what target assemblers allow in symbol
names. This also changes the default to allow all of "$_." in addition
to letters and numbers as symbol names. If you don't want this, use
markCharUnacceptable to remove one of these or markCharAcceptable to add
to the set. This corresponds with what GAS accepts by default.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24291 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
ac8c83428886adcd6b6b2290252db87be184c71c 10-Nov-2005 Chris Lattner <sabre@nondot.org> Add a new option for targets that accept quoted labels.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24283 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
6c636c0fffe03f4acc5a68ce9f9e2f22d6c8ec8a 10-Nov-2005 Chris Lattner <sabre@nondot.org> Remove M, which is dead. Eliminate a dead typedef. Add comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24282 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
b8c5ec086952ad2e572fa14d8922cbd3cb71f27b 10-Nov-2005 Chris Lattner <sabre@nondot.org> This method is no longer static


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24280 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
a112e0f44721848363b42ddeb7c6354f934878e0 10-Nov-2005 Chris Lattner <sabre@nondot.org> minor interface changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24276 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
8030c258827a44c676cef7d31f53a8cd3b285063 26-Oct-2005 Jeff Cohen <jeffc@jolt-lang.org> Eliminate use of sed in Visual Studio builds.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24003 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
a542b4c133de5da974632e9623ee4b426ebb3353 24-Oct-2005 Chris Lattner <sabre@nondot.org> Move the END_WITH_NULL marker. Vladimir suggests that this works better with
GCC 4.1. I tried it with 4.0 and 3.3 and it seems fine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23957 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
cc94b5178f729390fd72c69b45ead9491129bb85 23-Oct-2005 Jeff Cohen <jeffc@jolt-lang.org> Work around GCC's dislike of attributes on function definitions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23896 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
66c5fd6c537269eaef0f630fa14360dcaff6a295 23-Oct-2005 Jeff Cohen <jeffc@jolt-lang.org> When a function takes a variable number of pointer arguments, with a zero
pointer marking the end of the list, the zero *must* be cast to the pointer
type. An un-cast zero is a 32-bit int, and at least on x86_64, gcc will
not extend the zero to 64 bits, thus allowing the upper 32 bits to be
random junk.

The new END_WITH_NULL macro may be used to annotate a such a function
so that GCC (version 4 or newer) will detect the use of un-casted zero
at compile time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23888 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ataTypes.h.in
40f44f1f58f823994b7f4ec4005887c3955fb1e7 14-Oct-2005 Chris Lattner <sabre@nondot.org> Fix errors when compiling with -pedantic


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23719 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
cadee65f5411a09f6a75157febaac668fc1bd56e 07-Oct-2005 Jeff Cohen <jeffc@jolt-lang.org> Remove prolific source of VC++ truncation warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23657 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
f85a55b09657094a1e3954728c7f4ca5bdb6f56a 01-Oct-2005 Chris Lattner <sabre@nondot.org> Annotate nodes with their addresses if a graph requests it.

This is Jim's feature implemented so that graphs could 'opt-in' and get
this behavior. This is currently used by selection dags.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23576 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
37345fe3cd2dd56c3711592a5af6c294c10c7aba 01-Oct-2005 Chris Lattner <sabre@nondot.org> add a method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23575 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
b78ea801cd762ede7586c6e8ae37f8009100289a 30-Sep-2005 Jim Laskey <jlaskey@mac.com> Reverting change moving to selection dag graph.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23568 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
e6e34bc07c7c3b1c8cd1e231ec543e484301a055 30-Sep-2005 Jim Laskey <jlaskey@mac.com> Add the node name (thus the address) to node label.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23565 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
09f00b1295f8204117a12e075aa062eed08905ec 27-Sep-2005 Chris Lattner <sabre@nondot.org> Make this slightly more efficient by pushing actual type information down
into the evaluator. This shrinks a release build of instcombine's text
section from 216363 to 215975 bytes (on PPC).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23468 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
8baaa4f0b646af15caba37f297232306688f60e1 24-Sep-2005 Chris Lattner <sabre@nondot.org> change proto slightly


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23420 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
16d6ea526482e733fe3bc63929e94c9e88b6708d 31-Aug-2005 Nate Begeman <natebegeman@mac.com> Add support for count trailing zeroes, and population count. These are
needed for folding constants in the upcoming dag combiner.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23163 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
a2860651e8567fe8d8af3968955845b0755f50d0 26-Aug-2005 Jim Laskey <jlaskey@mac.com> Change unsigned lng to unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23077 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
eb0c36d173591f24f29eeb1e9ec7d174b140d511 26-Aug-2005 Jim Laskey <jlaskey@mac.com> Added cl::bits option type (bit vectors). See "Collecting options as a set
of flags" in the Command Line doc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23067 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
6600fa2d1706e697ef058992bed709708d4d403c 25-Aug-2005 Jim Laskey <jlaskey@mac.com> Recommended to use std::algorithms instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23046 91177308-0d34-0410-b5e6-96231b3b80d8
earch.h
ab6c0a923f47944d78f34a1c494e4cee2f711b2d 25-Aug-2005 Jim Laskey <jlaskey@mac.com> Added support for generic linear/binary search.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23044 91177308-0d34-0410-b5e6-96231b3b80d8
earch.h
104338913500d007996056ad092e195009883a84 18-Aug-2005 Jim Laskey <jlaskey@mac.com> include/llvm/Support/MathExtras.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22846 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
59b8fcfa5f736dff4a08ebcac032935b6fd92f34 17-Aug-2005 Jim Laskey <jlaskey@mac.com> Added support for converting raw bits to FP, and FP to raw bits. The intent
is to avoid the distraction of the union declarations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22830 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
2be12faabb3ce2d2d3979c73ac65d466fdea5ec5 03-Aug-2005 Chris Lattner <sabre@nondot.org> Fix an obvious bug in the Log2 stuff that broke SingleSource/UnitTests/2005-05-12-Int64ToFP
last night.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22630 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
89bfcd34cbd2f4c6bb2cafff0a5c2bff147fae11 03-Aug-2005 Chris Lattner <sabre@nondot.org> Wrap comments to 80 cols, fix code sequence for CountLeadingZeros_64 on
non-ppc GCC 4.0 machines. Patch by Jim Laskey!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22618 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
865dc8f64f50b72dbc8acb7851e606357f9d81f1 03-Aug-2005 Chris Lattner <sabre@nondot.org> Fix another bug in the clz patch that caused miscompilations when !gcc4


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22616 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
e6ec587059eb142467cc8a5915946a3b308cb9b7 02-Aug-2005 Chris Lattner <sabre@nondot.org> Fix the non-gcc 4.0 paths for countleadingzeros

Patch fixed by Jim Laskey


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22598 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
591083a5c7deeb79e988182285c45bf68b9c68a7 02-Aug-2005 Chris Lattner <sabre@nondot.org> Fix inverted conditionals


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22597 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
3b65576527b7e0098a401289f9245eb5266fda31 02-Aug-2005 Chris Lattner <sabre@nondot.org> Fix the non-gcc 4.0 path to compile


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22593 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
88c606eb0cc5415ed367c24e073f7bb478501d34 02-Aug-2005 Chris Lattner <sabre@nondot.org> Consolidate all of the various log2 computing functions into MathExtras.h.
Also, provide accelerated implementations when building with GCC.
Patch contributed by Jim Laskey!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22591 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
9eb59ec548b861d6ede05b4e6dc22aabf645e665 27-Jul-2005 Jeff Cohen <jeffc@jolt-lang.org> Eliminate tabs and trailing spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22520 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ommandLine.h
ataTypes.h.in
utexGuard.h
ee448630bdf7eb6037fe2c50518d32010c433ca3 12-Jul-2005 Reid Spencer <rspencer@reidspencer.com> For PR540:
This patch completes the changes for making lli thread-safe. Here's the list
of changes:
* The Support/ThreadSupport* files were removed and replaced with the
MutexGuard.h file since all ThreadSupport* declared was a Mutex Guard.
The implementation of MutexGuard.h is now based on sys::Mutex which hides
its implementation and makes it unnecessary to have the -NoSupport.h and
-PThreads.h versions of ThreadSupport.

* All places in ExecutionEngine that previously referred to "Mutex" now
refer to sys::Mutex

* All places in ExecutionEngine that previously referred to "MutexLocker"
now refer to MutexGuard (this is frivolous but I believe the technically
correct name for such a class is "Guard" not a "Locker").

These changes passed all of llvm-test. All we need now are some test cases
that actually use multiple threads.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22404 91177308-0d34-0410-b5e6-96231b3b80d8
utexGuard.h
hreadSupport-NoSupport.h
hreadSupport-PThreads.h
hreadSupport.h.in
a229c5cce75209047db32c6039aa0b0fd481f049 08-Jul-2005 Reid Spencer <rspencer@reidspencer.com> Final Changes For PR495:

This chagne just renames some sys::Path methods to ensure they are not
misused. The Path documentation now divides methods into two dimensions:
Path/Disk and accessor/mutator. Path accessors and mutators only operate
on the Path object itself without making any disk accesses. Disk accessors
and mutators will also access or modify the file system. Because of the
potentially destructive nature of disk mutators, it was decided that all
such methods should end in the work "Disk" to ensure the user recognizes
that the change will occur on the file system. This patch makes that
change. The method name changes are:

makeReadable -> makeReadableOnDisk
makeWriteable -> makeWriteableOnDisk
makeExecutable -> makeExecutableOnDisk
setStatusInfo -> setStatusInfoOnDisk
createDirectory -> createDirectoryOnDisk
createFile -> createFileOnDisk
createTemporaryFile -> createTemporaryFileOnDisk
destroy -> eraseFromDisk
rename -> renamePathOnDisk

These changes pass the Linux Deja Gnu tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22354 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
dd04df0ec33a903ee7fc747701bafde622f77d8b 08-Jul-2005 Reid Spencer <rspencer@reidspencer.com> For PR495:
Get rid of the difference between file paths and directory paths. The Path
class now simply stores a path that can refer to either a file or a
directory. This required various changes in the implementation and interface
of the class with the corresponding impact to its users. Doxygen comments were
also updated to reflect these changes. Interface changes are:

appendDirectory -> appendComponent
appendFile -> appendComponent
elideDirectory -> eraseComponent
elideFile -> eraseComponent
elideSuffix -> eraseSuffix
renameFile -> rename
setDirectory -> set
setFile -> set

Changes pass Dejagnu and llvm-test/SingleSource tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22349 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
f5428213853bae45247fe6da711ff20954d73dbd 18-Jun-2005 Andrew Lenharth <andrewl@lenharth.org> header file changes for varargs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22253 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
8a207c16d2eb44ebcf94b13b0db047e46b7b0d30 18-Jun-2005 Reid Spencer <rspencer@reidspencer.com> Make sure a variable is initialized before use to clean up a warning from
GCC 4.0.0 in release build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22248 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
e6ad5ea996673f76b62e495d268c8bf7c9b0d205 17-Jun-2005 Chris Lattner <sabre@nondot.org> silence a huge number of bogus warnings with GCC 4 on Reid's tester.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22244 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
47d309e1a977b8c2e34627bb071b583e1ce3c760 15-Jun-2005 Reid Spencer <rspencer@reidspencer.com> Don't lie to the casual reader about Value subclassing from Annotable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22215 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
edd5d9ece15f73ec1a31423a4ae39774aa6c521c 15-May-2005 Reid Spencer <rspencer@reidspencer.com> Some cleanups for compilation with GCC 4.0.0 to remove warnings:
* Use C++ style casts, not C style casts
* Abstract base classes should have virtual destructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22057 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3340ffe85431f705e91aa4d4b64207f80d0d8c2f 06-May-2005 Chris Lattner <sabre@nondot.org> Add support for explicit calling conventions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21745 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
21bbf8d0222383cbba01191bd046736c40e25c9a 22-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Convert tabs to spaces


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21437 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
f8063f91227712cc726fca385dd8b88bf6400c84 22-Apr-2005 Reid Spencer <rspencer@reidspencer.com> Change some old-style casts to C++ style casts to avoid warnings in XPS
compilation. This change has been waiting in the wings for a long time but
since Misha just did a global change, I figured now was the time to commit
it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21431 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
63b3afa98460ce38a1c48d3c44ef6edfdaf37b77 21-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Remove trailing whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21411 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
nnotation.h
FG.h
allSite.h
asting.h
ommandLine.h
ompressor.h
onstantRange.h
OTGraphTraits.h
ebug.h
ynamicLinker.h
LF.h
ileUtilities.h
etElementPtrTypeIterator.h
raphWriter.h
nstIterator.h
nstVisitor.h
eakDetector.h
angler.h
athExtras.h
assNameParser.h
atternMatch.h
luginLoader.h
lowOperationInformer.h
tableBasicBlockNumbering.h
ystemUtils.h
hreadSupport-NoSupport.h
hreadSupport-PThreads.h
imer.h
oolRunner.h
ypeInfo.h
ype_traits.h
fc4addafb51fe085bc6c9b0677e685f19ec75bfc 09-Mar-2005 Chris Lattner <sabre@nondot.org> Use static_cast and #include Instructions.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20528 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
a97cf2138335150ce6484c3398c39cd4c3ac558c 27-Feb-2005 Chris Lattner <sabre@nondot.org> Fix this to create a recursive mutex. Patch by Evan Jones!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20355 91177308-0d34-0410-b5e6-96231b3b80d8
hreadSupport-PThreads.h
210bef19ef5ecc794d7e3d637d66ff0447801697 27-Feb-2005 Chris Lattner <sabre@nondot.org> Rename include guard, patch contributed by Evan Jones!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20353 91177308-0d34-0410-b5e6-96231b3b80d8
utexGuard.h
hreadSupport.h.in
0c09e5fb91feae42f437d632abf8a42da27fc1d2 14-Feb-2005 Chris Lattner <sabre@nondot.org> Move private helper function into the only .cpp file that uses it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20169 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
a26619748932b146a09773d51465d7b7dcdb7dd2 01-Feb-2005 Chris Lattner <sabre@nondot.org> Switch from using an ilist for uses to using a custom doubly linked list.
This list does not provide the ability to go backwards in the list (its
more of an unordered collection, stored in the shape of a list).

This change means that use iterators are now only forward iterators, not
bidirectional.

This improves the memory usage of use lists from '5 + 4*#use' per value to
'1 + 4*#use'. While it would be better to reduce the multiplied factor,
I'm not smart enough to do so. This list also has slightly more efficient
operators for manipulating list nodes (a few less loads/stores), due to not
needing to be able to iterate backwards through the list.

This change reduces the memory footprint required to hold 176.gcc from
66.025M -> 57.687M, a 14% reduction. It also speeds up the compiler,
7.73% in the case of bytecode loading alone (release build loading 176.gcc).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19956 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
74a77cd985bfd484b3820c2fe7f0a11fb28d29e7 29-Jan-2005 Chris Lattner <sabre@nondot.org> There is no reason to include ostream here, include iosfwd instead.

This file was schizophrenic when it came to representing sizes. In some
cases it represented them as 'unsigneds', which are not enough for 64-bit
hosts. In other cases, it represented them as uint64_t's, which are
inefficient for 32-bit hosts.

This patch unifies all of the sizes to use size_t instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19917 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
8b80ecd5ca7b8648edfef44c57ef6d3895734ba5 29-Jan-2005 Chris Lattner <sabre@nondot.org> Fix quotes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19909 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
2cc2ab96e0c76ef7445c9221d8138a439112834d 29-Jan-2005 Jeff Cohen <jeffc@jolt-lang.org> Unbreak VC++ build


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19908 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
6cfbd626806875214291d44ea4f9064cc1479623 29-Jan-2005 Chris Lattner <sabre@nondot.org> Memory used is a delta between memuse at the start of the time and the
memuse at the end, thus it is signed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19904 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
f61c00167325fde6f7d0a179a15d601a3af0483d 23-Jan-2005 Chris Lattner <sabre@nondot.org> Remove two dead methods and improve the comments for DiffFilesWithTolerance.
Also, make DiffFilesWithTolerance take sys::Path objects instead of std::strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19770 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
fc54a35956865c01578269ff2f6baf47758b572f 23-Jan-2005 Chris Lattner <sabre@nondot.org> New method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19765 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
83881957edee0b1cb89428fa1a3b022d7d84ee13 22-Jan-2005 Jeff Cohen <jeffc@jolt-lang.org> Fix VC++ complaint


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19747 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
fb01550ace790b3e1ed66455c85844a39f5735d2 21-Jan-2005 Chris Lattner <sabre@nondot.org> Apparently destroyFile() now throws an exception. Since this class is
designed to be put on the stack, that's not cool. Catch and ignore the
exception.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19723 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
8e1971bda288ec7944499330dc32a2f43c21bd08 19-Jan-2005 Jeff Cohen <jeffc@jolt-lang.org> Add missing data types for VC++


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19680 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
79bda7fbe23e6668e1ee53a80f91856f152600a6 14-Jan-2005 Chris Lattner <sabre@nondot.org> Add a method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19540 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
89a1ed58399045d2b2c7b246571945b068f2e5e1 11-Jan-2005 Chris Lattner <sabre@nondot.org> Add support for bottom-up graphs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19446 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
ce393a609ba1df701cfba9e96749275a16e22ade 11-Jan-2005 Chris Lattner <sabre@nondot.org> Add a helper method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19439 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
e269a1ac1cd795135e91e42527a9814f4807c75a 08-Jan-2005 Jeff Cohen <jeffc@jolt-lang.org> Use size_t instead of long to represent memory usage. long is 32 bits
on 64-bit Windows.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19393 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
52b50a64ecd31ebb03e742d8ad6b6a86b541a53d 02-Jan-2005 Reid Spencer <rspencer@reidspencer.com> Make printing a warning message optional in CheckBytecodeOutputToConsole.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19240 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
436f23ebf58418611f798faf7e00de05c7a42e21 02-Jan-2005 Reid Spencer <rspencer@reidspencer.com> Implement a function to print a warning if bytecode output is to be sent to
a terminal/console.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19237 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
772192cf36edeaed9366382914f820e1d81c605a 22-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Move non-portable FDHandle class to its only user: lib/Debugger


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19106 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
37ee22046227a4f11fa324b1ceccd3e89e7c185b 21-Dec-2004 Jeff Cohen <jeffc@jolt-lang.org> Fix VC++ compilation error


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19082 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
2418bf9546387ea0cd206d3f0e4a8952f6a90eb4 19-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Turn path instance variables into sys::Path instead of std::string


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19038 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
fd335687bcd17189a9dbfa1da7033430a837e213 19-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Replace RunProgramWithTimeout with an inline function that calls
sys::Program::ExecuteAndWait. This is now just a convenience function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19037 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
9ac141823d6180f8a49299c55ed8fc8b9a8310a3 17-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
* Make the OutputC and OutputAsm functions work with sys::Path for the output
file name instead of using std::string.
* Get rid of extraneous "toString" calls.
* Change "removeFile" to sys::Path::destroyFile()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19000 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
a2f7ed7035b38a13c65c04fa3b626197bd9d360a 17-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
* Remove the "removeFile" function, now implemented by the
sys::Path::destroyFile method.
* Make the FileRemove work with a sys::Path instead of a std::string


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18999 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
7117c6ed9c9ff042b8d6fbcf2489cc0d47adc980 16-Dec-2004 Reid Spencer <rspencer@reidspencer.com> Get rid of inclusion of config.h because this file is autoconf'd.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18992 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
67f6d3ad30941e0ac6d36939c271eec7d7b8a0e2 15-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Remove getUniqueFilename and CopyFile. These are now implemented by
sys::Path::makeUnique and sys::CopyFile, respectively.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18946 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
1749a0c1b9a17fd6b11fad2f6e6b66ab90eac4b4 14-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
* isExecutable -> sys::Path::executable()
* Adjust interface of FindExecutable to return a sys::Path


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18917 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
9b9e22a32e175a40b280236531a60a716a12c3a5 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Remove AllocateRWXMemory as it is not used any more in LLVM. The function
has been replaced with sys::Memory::AllocateRWX several months ago.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18912 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
2356f8612e2e7441d6c829b6886cc5c2a4a1671d 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Remove the MakeFileReadable and MakeFileExecutable functions which are no
longer present in LLVM. They have been replaced with the sys::Path methods
makeReadable and makeExecutable, respectively.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18910 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
2923f345334432ec8407aebd1ece560a531e9e08 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
The ReadFileIntoAddressSpace and UnmapFileFromAddressSpace functions are no
longer used by LLVM. Remove them. Replacement functionality for both
functions is now encapsulated in the sys::MappedFile class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18903 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
9d88d1aaab145e18c8e0fe93544f8a1ff0474866 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351: \
The getFileTimestamp and getFileSize functions have been removed from \
FileUtilities.{h,cpp}. They are replaced by Path::getTimestamp and \
Path::getSize,respectively.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18892 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
4251ce4b10a35552df67ea624b180ad247960eef 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> Added a size_type typedef to LLVM containers to make Visual Studio shut up
(and possibly to make LLVM more x86 64bit friendly).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18891 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
061e9491f82193ebb6a00d0fb704b660a62693c0 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> Remove commented out functions that have been replaced with lib/System
functionality.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18868 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
d99eaa3c1f7bfb930b7b0b85fd67d269b20d1804 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:Remove the file type checking methods (now in sys::Path)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18846 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
31127e1d89efe440d761497f29dbe646b23a2806 09-Dec-2004 Jeff Cohen <jeffc@jolt-lang.org> Fix residual Visual Studio build problems


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18688 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
42f006c8f56bfff54788762517bf8b65c848bd50 05-Dec-2004 Reid Spencer <rspencer@reidspencer.com> Make a const method const


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18524 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
50b0421caaa6c5bf53fb58bb91a987370ac80545 25-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Restrict the interface to not allow algorithm selection


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18248 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
8fb51e4800fe4c490329c92c876cf4441d36a780 22-Nov-2004 John Criswell <criswell@uiuc.edu> Moved into the poolalloc tree.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18102 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
74db09b09636a8a70e3f1d81d3f95c4e3f03b24f 21-Nov-2004 Chris Lattner <sabre@nondot.org> Ignore generated files


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18071 91177308-0d34-0410-b5e6-96231b3b80d8
cvsignore
721aef6897790abc370cd2eddbefa8d0c0a1f6b3 18-Nov-2004 Chris Lattner <sabre@nondot.org> Update comments, now that CPR's are gone, inline the methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17957 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
e26057a376f04e20da6c7217d19eaa184767cb1d 16-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Standardize on 'class' instead of 'struct'. Gets rid of warnings in VC++

Patch contributed by Jeff Cohen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17889 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
9bbba091396922093687d11a181e5886c42c5dfd 16-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Per code review:
*Implement/Document the cl::extrahelp feature instead of the MoreHelp ptr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17871 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
f44715638b5e77e74e531bd2fed499c42de55997 14-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Linker is its own module now. Moved to include/llvm/Linker.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17758 91177308-0d34-0410-b5e6-96231b3b80d8
inker.h
14ef01405ce6c6ff2966f9de70bc8a1c1e70f7c4 14-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Add higher level interface to simplify use of Compressor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17757 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
cc08ee507fc47d80a67c10a20b95587f7f06f0b7 14-Nov-2004 Reid Spencer <rspencer@reidspencer.com> Add the MoreHelp function pointer. If non-null, this specifies a function to be called to print out additional help information


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17756 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
e6c745261ea2c4c523cb66f8935f6eceeab1c5ec 14-Nov-2004 Chris Lattner <sabre@nondot.org> Add useful method, minor cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17715 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f17ffcce18ad8e3da3b1e7a3a8b1ac19ac301c80 13-Nov-2004 Chris Lattner <sabre@nondot.org> Add support for shifts


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17702 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
5200ad1b344ab73139ae798a34513065c2dfde52 03-Nov-2004 Chris Lattner <sabre@nondot.org> defining __STDC_LIMIT_MACROS on the command line is not really necessary
for Visual Studio, and is a bit of a pain when you want to include the
LLVM headers from your own project, so I moved the check a bit down into
the Unix case to avoid the hassle... Here is a patch

Patch by Morten Ofstad!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17450 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
9ba883c22f6203aae85a4edea3d69748181b5844 28-Oct-2004 John Criswell <criswell@uiuc.edu> Commented out the _Alloc_traits specialization entirely, as it is only
supported by specific versions of GCC.

It is left in place in case anyone wants to updated it for GCC 3.4 or
re-use it for earlier versions of GCC where it works.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17324 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
cd74271a790294198cdc101e3c08e5b063765220 28-Oct-2004 John Criswell <criswell@uiuc.edu> Only add the _Alloc_traits specialization in if we're compiling for
Linux and not compiling for Sparc.
This is still probably not correct, or portable, but it'll do for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17321 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
1fca5ff62bb2ecb5bfc8974f4dbfc56e9d3ca721 27-Oct-2004 Chris Lattner <sabre@nondot.org> Convert 'struct' to 'class' in various places to adhere to the coding standards
and work better with VC++. Patch contributed by Morten Ofstad!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17281 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ommandLine.h
OTGraphTraits.h
b2fc1fcb90cc3d29b792c188121e28f25f4a68ec 26-Oct-2004 Chris Lattner <sabre@nondot.org> Fix header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17259 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
e757752e39a9584ee6fb4017db7bef58cfd7e8f1 26-Oct-2004 Misha Brukman <brukman+llvm@gmail.com> * DataTypesFix.h moved to AIXDataTypesFix.h
* Condition #inclusion of AIXDataTypes.h on the _AIX preprocessor symbol to
prevent extra I/O on non-AIX systems. Thus, no #ifdef in AIXDataTypes.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17257 91177308-0d34-0410-b5e6-96231b3b80d8
IXDataTypesFix.h
ataTypes.h.in
ataTypesFix.h
7a36ae8b0103088328e3a4992ac08b3dce312248 25-Oct-2004 Chris Lattner <sabre@nondot.org> Patch to support MSVC better, contributed by Morten Ofstad


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17215 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
e42aeece6c3264ffd6f61af3745d2071466c7194 19-Oct-2004 Misha Brukman <brukman+llvm@gmail.com> Move code to redefine INT64_{MIN,MAX} on AIX/PowerPC to a separate header,
because #undef becomes commented out in DataTypes.h.in due to autoheader


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17135 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
ataTypesFix.h
103f2eede3f0586449be1601afc0ea26275c4c10 18-Oct-2004 Misha Brukman <brukman+llvm@gmail.com> * AIX on Power defines INT64_MIN and INT64_MAX in ways that annoy GCC, so
special-case those definitions
* Add comments in #ifdef/#else/#endif clauses for ease of reading


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17132 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
c8717b1624bfdbca3183de1317be2f92a65106e5 16-Oct-2004 Chris Lattner <sabre@nondot.org> Add support for the unreachable instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17039 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
c441f1e1c74853721b2f513c3597c391bd11ccc2 04-Oct-2004 Chris Lattner <sabre@nondot.org> Fix #include flavor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16658 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
469c34bdeb7f823e2f3320cd1dbfa19ae1ac6b82 04-Oct-2004 Reid Spencer <rspencer@reidspencer.com> Add a context for the callback so different compression scenarios can be
distinguished. Tidy up documentation. Thanks, Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16652 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
460eb6361280feca8c0299036503fd19cc40aaec 04-Oct-2004 Reid Spencer <rspencer@reidspencer.com> First version of a support utility to provide generalized compression in
LLVM that handles availability and unavailability of bzip2 and zlib.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16648 91177308-0d34-0410-b5e6-96231b3b80d8
ompressor.h
4046846d2cb36a6281b853c73776584063cca19d 24-Sep-2004 John Criswell <criswell@uiuc.edu> Updated the last two header files so that they are configured with
AC_CONFIG_HEADERS. This should prevent LLVM from needlessly re-compiling
on a re-configure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16510 91177308-0d34-0410-b5e6-96231b3b80d8
utexGuard.h
hreadSupport.h.in
5fbb1f8fccd7226d7cd83442570856fcc9a7bf8e 24-Sep-2004 John Criswell <criswell@uiuc.edu> Configure Datatypes.h.in with AC_CONFIG_HEADERS. This should prevent it
from being re-generated if the new version is identical to the old version.
Hence, it should save us some recompiling after re-configures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16506 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
2d3dcb6a55c1c4a83b8e13e7cfd2e55f8cfe4740 03-Sep-2004 Misha Brukman <brukman+llvm@gmail.com> I was actually wrong in my "simplification".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16156 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
18d55dd700ea9d60b8e22f67170787903bcbd26e 03-Sep-2004 Misha Brukman <brukman+llvm@gmail.com> Simplify check for uint64_t and u_int64_t


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16155 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
206043aac9f6fc670c9b2df587c8d42461f96ba0 03-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Provide correct definition of uint64_t for platforms that have only
u_int64_t defined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16154 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
551ccae044b0ff658fe629dd67edd5ffe75d10e8 02-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
FG.h
asting.h
ommandLine.h
onstantRange.h
OTGraphTraits.h
ebug.h
ynamicLinker.h
LF.h
ileUtilities.h
raphWriter.h
eakDetector.h
allocAllocator.h
angler.h
athExtras.h
utexGuard.h
assNameParser.h
luginLoader.h
lowOperationInformer.h
ystemUtils.h
hreadSupport-NoSupport.h
hreadSupport-PThreads.h
hreadSupport.h.in
imer.h
oolRunner.h
ypeInfo.h
ype_traits.h
e265504e82310266271fa2329b6ef8115bbe8244 17-Aug-2004 Chris Lattner <sabre@nondot.org> Add an overload


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15889 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
2c2475296d55bd38281cba0c2b41ba3a897164dd 17-Aug-2004 Chris Lattner <sabre@nondot.org> Allow an arbitrary prefix.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15864 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
1e13fd23d34e53b63cb08c0fe54f0857757ec200 13-Aug-2004 Reid Spencer <rspencer@reidspencer.com> Allow any cl::opt to use the method getPosition() to retrieve the option's
absolute position on the command line. Similarly allow any cl::list to
use the method getPosition(n) to retrieve the absolute position of the nth
option in the list. This provides support for two things: (a) options like
-l that are actually positional and their order of occurrence matters when
they are intermixed with positional arguments like "a.o"; and (b) options
like -x LANG which affect only the positional arguments that come after
the option. In both cases, knowing the absolute position of a given option
helps.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15725 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7c136c3f8b7af841794f30eaaa4822b65f1eb4f7 04-Aug-2004 Chris Lattner <sabre@nondot.org> Minor efficiency improvements


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15461 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
b714fdccdb9b446707b5e5de2790dfa1b3811cc0 30-Jul-2004 Misha Brukman <brukman+llvm@gmail.com> Enable compilation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15344 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
524d8f17228b6e1dbb4735cd48e6fab50c46459f 30-Jul-2004 Chris Lattner <sabre@nondot.org> Check in some useful helper routines for doing ML-style pattern matching on
the LLVM IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15341 91177308-0d34-0410-b5e6-96231b3b80d8
atternMatch.h
62c91fcda50df5a543fad4bca572f309180580c5 24-Jul-2004 Chris Lattner <sabre@nondot.org> Provide timeout values to all abstract interpreters


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15159 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
de0213b9f551fa1fb0743f6b1150205180be5c9c 24-Jul-2004 Chris Lattner <sabre@nondot.org> Add support for killing the program if it executes for too long.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15158 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
7d0276624726ddea3245bb7d88c47db59278bf14 21-Jul-2004 Brian Gaeke <gaeke@uiuc.edu> Include <iostream> here, because most people using DEBUG() want to use std::cerr too.
This means that users of this file do not also need to include <iostream>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15088 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
a7d03b466a41e68e11480ae6ca275140fe4c4507 21-Jul-2004 Brian Gaeke <gaeke@uiuc.edu> Add prototypes for platform-independent wrappers for isinf().
Patch contributed by Bill Wendling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15055 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
7ed43ad3ab29be753b514966476c76206d0c0648 19-Jul-2004 John Criswell <criswell@uiuc.edu> Added support for stdint.h. It is now automatically included by
DataTypes.h. So far, it doesn't seem to break Linux, Solaris, or MacOS X.
This should automatically include it for those people who need it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15006 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
dcb115bc826a5eaa2b7b3c3ce7245f8ee86287e6 16-Jul-2004 Chris Lattner <sabre@nondot.org> Add a new macro to be used for the end of enum lists.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14862 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
6a4dd24a995072c9c6f1ae45f19f94010d8389fb 11-Jul-2004 Chris Lattner <sabre@nondot.org> Provide better support for pointer-valued command line arguments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14746 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
170d3af55254f1c5c668f285514f9d41affc1428 11-Jul-2004 Chris Lattner <sabre@nondot.org> Add a new header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14737 91177308-0d34-0410-b5e6-96231b3b80d8
luginLoader.h
ddc49d6121d90728fc08c1fdc03e2cccdf58d272 09-Jul-2004 Chris Lattner <sabre@nondot.org> Add a new method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14705 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
6b5f30f36511d76b306080e09879f993ff9faccd 27-Jun-2004 Chris Lattner <sabre@nondot.org> Get rid of Annotable's vtable. If anyone deletes an object through an Annotable*,
they get what they deserve.

This reduces the size of Instruction & Function by 4 bytes each.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14433 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
7764f4b2e0e550dc23f3c536f236f9abf86879dc 23-Jun-2004 Brian Gaeke <gaeke@uiuc.edu> Provide prototypes for IsNAN() wrapper.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14339 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
c8fd918aa169b1f193cfe24f413167dad0a91214 19-Jun-2004 Chris Lattner <sabre@nondot.org> Initial checkin of the StableBasicBlockNumbering, a little helper class for computing
(strangely enough) a stable (determinstic) numbering for basic blocks.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14246 91177308-0d34-0410-b5e6-96231b3b80d8
tableBasicBlockNumbering.h
96698a5ec78619ac79443039f9dbc1db141a7e82 05-Jun-2004 Chris Lattner <sabre@nondot.org> Warning foo


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14035 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
bc2de3c515fe5c6673a1402465ed45745b6f447f 04-Jun-2004 Chris Lattner <sabre@nondot.org> Add some constants for VC


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14028 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
775b08d9e83b6b685fc9d14031579bb73b036ce9 04-Jun-2004 Chris Lattner <sabre@nondot.org> Fix a *really* dumb warning on VC


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14025 91177308-0d34-0410-b5e6-96231b3b80d8
ypeInfo.h
745feacfd6eae7b4080d12bd739b0aec7dd14a96 04-Jun-2004 Chris Lattner <sabre@nondot.org> Add ssize_t for VC++


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14018 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
d1e89d657cfd731c3c655ae43c1b0bdbc7fc78ec 04-Jun-2004 Chris Lattner <sabre@nondot.org> Add more needed typedefs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14014 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
6549b82535c14912d1fcb3e4dee0d8b03d61fcfd 04-Jun-2004 Chris Lattner <sabre@nondot.org> Make this work with VC++


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14012 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
51ae205adfe7f162ea8acd05087f190a6a352641 04-Jun-2004 Chris Lattner <sabre@nondot.org> The prototype for ParseCommandLineOptions changed at some point, but this
was never updated. I guess GCC just ignores the prototype


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13995 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2a7f15e50bf5e6ce0bf75fffb93ec5a4c6e025b6 02-Jun-2004 Chris Lattner <sabre@nondot.org> Add a new CopyFile function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13944 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
34e40d44c2730aec408ccd1e1e9f379e1feb87de 28-May-2004 Chris Lattner <sabre@nondot.org> Add a new function for the JIT


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13869 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
eb082995180756068af35bb826a9017975d87a51 28-May-2004 Chris Lattner <sabre@nondot.org> Add a pair of functions to hide system specific details of mapping a file in for reading.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13863 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
e0b295afd65c79918e80aabfe92e998baac641ef 25-May-2004 Reid Spencer <rspencer@reidspencer.com> Removed unused, useless header file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13757 91177308-0d34-0410-b5e6-96231b3b80d8
alueHolder.h
14d2638e383f27e3b502f2c7a9de2169a8a39a36 23-May-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Remove virtual destructor from InstVisitor. This class should never be
used through a base pointer/reference so inproper destruction should
never be an issue. Removing this last virtual function also saves 4
bytes off each InstVisitor instance.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13664 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
b5b0b45e58ea0b83e79dcee00b51a0149535ed2a 23-May-2004 Vikram S. Adve <vadve@cs.uiuc.edu> Add getCaller() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13650 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
3b963590ef2155d5786ea536c884925ed2587dbf 21-May-2004 Chris Lattner <sabre@nondot.org> Starting an identifier with an _ is not legal C/C++ code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13620 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
2944bcaaed94db2f3bb000f78ba75b4172b475cf 07-May-2004 Chris Lattner <sabre@nondot.org> Add the enum corresponding to the source change I made earlier


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13395 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ad5c296792e8db7afed68023909ea42f9ddcb454 06-May-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Fix for gcc3.4: invalid use of forward delacred class on line 93


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13370 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
6178085cfd772f62c641234bec156240281e7cf4 05-May-2004 Brian Gaeke <gaeke@uiuc.edu> Move the stuff that fixes the size, orientation & fonts of graphs to
the debugging functions that call "dot". These fixed settings have
various problems: for example, the fixed size that is set in the graph
traits classes is not appropriate for turning the dot file into a PNG,
and if TrueType font rendering is being used, the 'Courier' TrueType font
may not be installed. It seems easy enough to specify these things on the
command line, anyhow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13366 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
48b008db57cf1ffabf949364622c9ecfe0ec85c4 05-May-2004 Brian Gaeke <gaeke@uiuc.edu> Apply simplification suggested by Chris: why assign() when operator = will do?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13364 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
d11577b68b442217153ecbcc93b978a5a700a8ed 04-May-2004 Brian Gaeke <gaeke@uiuc.edu> Add "Args" optional argument to AbstractInterpreter factory methods, which
fills in a ToolArgs vector in the AbstractInterpreter if it is set. This
ToolArgs vector is used to pass additional arguments to LLI and/or LLC.
This is intended to address Bug 40.

Also, make -debug-only=toolrunner work for the LLC and CBE
AbstractInterpreters.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13356 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
2dd5c96866406711cf20a6bb677a7d147ad3ac3d 04-May-2004 Misha Brukman <brukman+llvm@gmail.com> Provide visit(Module&) and visitModule(Module&) functionality.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13353 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
0aef12a7a96968a80c38144dfc0a7ae6a9152db9 01-May-2004 Chris Lattner <sabre@nondot.org> Move the GraphTraits for MachineBasicBlocks to the MachineBasicBlock file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13299 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
8c53472d0c872eeb401dfbcce857c91f80639b56 29-Apr-2004 Brian Gaeke <gaeke@uiuc.edu> Add machine-CFG graph traits specializations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13288 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
6ffe551f657c948d6a473a198ecbd1188bf9ce45 27-Apr-2004 Chris Lattner <sabre@nondot.org> Changes to fix up the inst_iterator to pass to boost iterator checks. This
patch was graciously contributed by Vladimir Prus.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13185 91177308-0d34-0410-b5e6-96231b3b80d8
nstIterator.h
72e606e2bd76452ac6760ceed258b377cd8862a2 04-Apr-2004 Chris Lattner <sabre@nondot.org> Support iteration over constant instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12645 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
43cb041754df231f488fa7c203f13ec731ca389c 04-Apr-2004 Chris Lattner <sabre@nondot.org> Allow for use of arbitrary iterator types...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12642 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
909f6cf3501dbe358f36afca3f66f215eedd6802 02-Apr-2004 Chris Lattner <sabre@nondot.org> Add new function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12601 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
fc33d30446843009b0eadf63c0bfca35ae2baac6 30-Mar-2004 Chris Lattner <sabre@nondot.org> Add some new methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12539 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
62fe9b59c1b50883b027393a183ac468d4371781 29-Mar-2004 Chris Lattner <sabre@nondot.org> Relax the interface a bit


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12533 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
57b25973d68ac8b26e0d2ad44769d77dd3e8efc5 12-Mar-2004 Chris Lattner <sabre@nondot.org> Add the visitSelectInst visitor method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12312 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
e9f6f2c0492af8097166f1b7d62f131f20ca5714 29-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Update comment at head of file. Also fix C 'typedef struct' nonsense I
inadvertently left in here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11988 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
620ee02353d8b65959dc01a66b073adfcdef9eac 29-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Add more architectures, and ELF64 stuff.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11985 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
757c1f9d87b516a1e3bc4cd678245b207ae9c559 28-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Fix my sloppiness


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11968 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
6c39a42b5c93b6d0af008dbafed6134d1deaa848 28-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> ELF constants and data structures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11945 91177308-0d34-0410-b5e6-96231b3b80d8
LF.h
1cd4c7294c9873d7208aab5227bc27cdf8011b2e 26-Feb-2004 Chris Lattner <sabre@nondot.org> Make sure that at least one virtual method is defined in a .cpp file to avoid
having the compiler emit RTTI and vtables to EVERY translation unit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11871 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
bb92f6fbf2c36b3530f33eb2e8d1842764ec9fdd 25-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Cygwin defines log2 as a macro. Undef it here IFF it has already been defined,
so that we always get the inline function instead. Remember, kids, like it says
in the GCC manual, "An Inline Function is As Fast As a Macro."


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11815 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
7b3d73b7ecbecf423c3766e596b6086767444363 24-Feb-2004 Chris Lattner <sabre@nondot.org> Use the new LLVM is_class template instead of the boost one, allowing us to
remove our dependency on boost! Thanks to Reid Spencer for making this possible!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11785 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
5c4d53a4d1bce60051fd71af1791791acb2000da 24-Feb-2004 Chris Lattner <sabre@nondot.org> Check in a new type_traits header which provides the mysterious is_class
template. Thanks go out to Reid Spencer for skillfully extracting this
from boost!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11784 91177308-0d34-0410-b5e6-96231b3b80d8
ype_traits.h
95ee9bd81f629df35c9ebf7482a2a62b252dba6e 23-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> DataTypes.h is now output from configure, and shortened


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11778 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h.in
a6eb7c19a14f2bdbde22c3e2a14dc190b3b97ded 23-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> ThreadSupport.h is now output from configure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11770 91177308-0d34-0410-b5e6-96231b3b80d8
utexGuard.h
hreadSupport.h.in
2425f8c62931f6ab127784adbf6f52bc8c684113 22-Feb-2004 Chris Lattner <sabre@nondot.org> Significantly simplify gep_type_iterator, and make its interface more general/powerful


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11708 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
1d29a6d6c7a7f6203065c003d3d2d002870e38a1 19-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Make ToolExecutionError inherit std::exception and implement its
interface: getMessage() is gone, use what() instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11621 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
f03715c6a869c9838c4510693e74f796da7589eb 19-Feb-2004 Chris Lattner <sabre@nondot.org> Add support for just compiling a program


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11610 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
c8580b2aee8e0a93eb7dd2d70c81ccb33e447538 18-Feb-2004 Chris Lattner <sabre@nondot.org> Byebye method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11598 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
8c56be5e2b860ce5f22ed157c1b02409c353749c 18-Feb-2004 Chris Lattner <sabre@nondot.org> When an error occurs executing a tool, we now throw an exception instead
of calling exit(1).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11593 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
f5c8146a7cf899a678dc3979df6a3c99d7f19fc3 18-Feb-2004 Chris Lattner <sabre@nondot.org> Change the order of the arguments to the ctor, allowing us to make the boolean default to true


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11592 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
f1e3285f3a45f21d237809a8da29558981282b56 18-Feb-2004 Chris Lattner <sabre@nondot.org> Move a helper class out of bugpoint to here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11582 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
df2cf418a8449d60512ab42e14c7a0b2608ce438 17-Feb-2004 Chris Lattner <sabre@nondot.org> The CBE is no longer in llvm-dis


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11532 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
d11e6472573c61c44ca946c843ad83acdbe3c71f 14-Feb-2004 Chris Lattner <sabre@nondot.org> Add method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11425 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
6a6dd6f487bfda1fe8fbb4ab7cb0a9fa1fbadbcf 11-Feb-2004 Chris Lattner <sabre@nondot.org> If a node has more than 64 outgoing edges, make the edges go from the 'truncated' block,
instead of dropping them entirely.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11334 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
440f87eea20f11ea86822816fae965956795d6d3 17-Jan-2004 Chris Lattner <sabre@nondot.org> Revision of Brian's threading support library to be a bit more generic and
platform independent. This code is completely untested (but never used),
and needs autoconf support for detecting pthreads, but it's a start, and
deletes two emails from my inbox. :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10906 91177308-0d34-0410-b5e6-96231b3b80d8
hreadSupport-NoSupport.h
hreadSupport-PThreads.h
9e26027b82e70308151e129fdddb12ee85dd82c5 31-Dec-2003 Chris Lattner <sabre@nondot.org> * Add a new helper progress method
* Make sure that the user sees the 100% mark
* Don't bother printing out X.0%, just print out X%


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10672 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
7a312bc102efbbf725e5a85d412df8da7e22744d 31-Dec-2003 Chris Lattner <sabre@nondot.org> add new function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10665 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
cf902777e9ddb5bbb806b11efcf8c14638fe779d 31-Dec-2003 Chris Lattner <sabre@nondot.org> clarify comments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10663 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
a2e9363617a77b7ada49759676d464bdf373cc69 31-Dec-2003 Chris Lattner <sabre@nondot.org> New class, useful for command-line interactive programs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10662 91177308-0d34-0410-b5e6-96231b3b80d8
lowOperationInformer.h
9c4c66e70ea30a9bffeeac446d6d5294d1098198 30-Dec-2003 Chris Lattner <sabre@nondot.org> Add new function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10648 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
9899ae3ae85e0d5cdb1a2fad0f527e5145da7f8c 30-Dec-2003 Chris Lattner <sabre@nondot.org> Further revisions of the FDHandle idea. In this version we use ownership
semantics that are the same as those used by std::auto_ptr. This allows
copying of FDHandle's, but copying transfers ownership.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10646 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
9b448b703fbd60951a57e4d912bcbaf0181ed253 29-Dec-2003 Chris Lattner <sabre@nondot.org> Add trivial exception specs to produce better code since the methods cannot
be inlined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10643 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
2d6481cc2a168c4a867f8046119607f72552ef31 29-Dec-2003 Chris Lattner <sabre@nondot.org> Factor FDHandle out of the bytecode reader into the FileUtilities.h support
routines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10642 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
92c59d60c9ec8c0bb3989f4c08cf9d2be48c0ca5 12-Dec-2003 Brian Gaeke <gaeke@uiuc.edu> Fix typo in comment


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10424 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
59e47e3ee10840beb57ece10af04a6f9bf3495e9 01-Dec-2003 Brian Gaeke <gaeke@uiuc.edu> Lock abstraction, introduced with a view toward making the JIT thread-safe.
Eventually.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10284 91177308-0d34-0410-b5e6-96231b3b80d8
hreadSupport-PThreads.h
d423fb5cbfdf9268899039ee49a0b3e09f661ca9 28-Nov-2003 Chris Lattner <sabre@nondot.org> fix gcc 3.4 compatibility problem


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10248 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
c4c6b9e5bc062763578eb63a011f447de1eeddc6 25-Nov-2003 Chris Lattner <sabre@nondot.org> Work with gepi's and constant exprs. Also, add versions of iterator ctors that take references


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10220 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
94a28c6bc816486c5754c5492202359a1f733ec4 25-Nov-2003 Chris Lattner <sabre@nondot.org> Rename class to be consistent with other iterator classes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10213 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
19ed305339b13178c0dc05ee68fd9999ea17c469 25-Nov-2003 Chris Lattner <sabre@nondot.org> Initial checkin of gep_type_begin/end which will be used to address PR82


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10212 91177308-0d34-0410-b5e6-96231b3b80d8
etElementPtrTypeIterator.h
a140b3c36759478d75618d63dc2b77592180dab8 24-Nov-2003 Misha Brukman <brukman+llvm@gmail.com> Expose functionality to query if a file is an ELF shared object.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10194 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
8b70b78ba489b090d9866e6a4084ab1e8613b527 16-Nov-2003 Chris Lattner <sabre@nondot.org> Fixes for PR114: Thanks to Reid Spencer!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10029 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
ommandLine.h
raphWriter.h
allocAllocator.h
athExtras.h
e94e0edc3e6775159d37557765275a8a3887c481 12-Nov-2003 Chris Lattner <sabre@nondot.org> Fix faulty namespacification


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9943 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
fed0b2995ecaad811a3e66c8cbe8d3920dda8b29 12-Nov-2003 John Criswell <criswell@uiuc.edu> Regress to not using the llvm namespace.
This keeps Pool Allocation stuff from compiling.
We can re-visit it later when we have time to do it right.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9932 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
FG.h
allSite.h
asting.h
ommandLine.h
onstantRange.h
OTGraphTraits.h
ebug.h
ynamicLinker.h
ileUtilities.h
raphWriter.h
nstIterator.h
nstVisitor.h
eakDetector.h
inker.h
allocAllocator.h
angler.h
athExtras.h
assNameParser.h
ystemUtils.h
imer.h
oolRunner.h
ypeInfo.h
alueHolder.h
f33d00f0d8ffb41a57ce86672de5c3590903db01 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Add prototypes for CheckMagic, IsArchive, and IsBytecode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9900 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
6a9127ec00fe0bdcb6aa78247093f318e87927ed 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> VS: ----------------------------------------------------------------------
Add prototype for FileOpenable().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9891 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
33e0a7575dd1b200ad75d6216f135389e2b0575a 10-Nov-2003 Chris Lattner <sabre@nondot.org> No really, I'm not on crack


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9855 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
b977ef2d54e6144ece686ed8d8360961820d1986 10-Nov-2003 Chris Lattner <sabre@nondot.org> Helper method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9854 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
94db57024faafd58a07ffeeae0fd187dbdcae036 08-Nov-2003 Chris Lattner <sabre@nondot.org> Provide a specialization of _Alloc_traits, which allows the G++ runtime to avoid
storing an instance of the allocator in each data structure it uses. Yaay.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9795 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
4ba0f57904613bb2ea0d7f0a8ff6a0c04647044d 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Add a warning about not "new"ing or "delete"ing CallSites


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9782 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f0d6b493f207b63ee1a56d59595502718f603779 07-Nov-2003 Chris Lattner <sabre@nondot.org> Add some ctors for this allocator


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9766 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
01f93a4712f4ece817e41a2286a0e19cd2eb91f0 05-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> A few handy methods that seem to mesh well with what CallSite already provides.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9737 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
c2630f73141076fb3a771d7106cc10fd009edfb7 04-Nov-2003 Chris Lattner <sabre@nondot.org> New file, for use by the pool allocator project


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9702 91177308-0d34-0410-b5e6-96231b3b80d8
allocAllocator.h
ac50030f86e794c008c27928dd50a679e601e678 03-Nov-2003 Chris Lattner <sabre@nondot.org> Allow CallSites to be used as the key of a map


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9660 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
1926f69c53e4581ad10ba2e12eb2bbd21e4c06ef 31-Oct-2003 Chris Lattner <sabre@nondot.org> Escape "'s, which are frequent visitors to C++ types


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9642 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
bc539434c5ab3b537336cc2a6212d0f24d8f791d 31-Oct-2003 Chris Lattner <sabre@nondot.org> Did I mention that I _HATE_ CPRs?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9639 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
7c4098ee2bec04deb9f24d1fc2d8382266cacff4 23-Oct-2003 Chris Lattner <sabre@nondot.org> Add assertions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9443 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
6fbcc26f1460eaee4e0eb8b426fc1ff0c7af11be 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM copyright header (for lack of a better term).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
allSite.h
onstantRange.h
nstIterator.h
nstVisitor.h
inker.h
angler.h
assNameParser.h
oolRunner.h
alueHolder.h
b2109ce97881269a610fa4afbcbca350e975174d 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM notice.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9300 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
asting.h
ommandLine.h
OTGraphTraits.h
ebug.h
ynamicLinker.h
ileUtilities.h
raphWriter.h
eakDetector.h
athExtras.h
ystemUtils.h
imer.h
ypeInfo.h
4661dc6a6abc9ef22e674fe4951a715befd4e072 19-Oct-2003 Chris Lattner <sabre@nondot.org> Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.

This allows removal of a special case from the instvisitor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9268 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
99e7ab72c8909469141358552ece13d701d17274 18-Oct-2003 Chris Lattner <sabre@nondot.org> New revised variable argument handling support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9219 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
eeed98382158c5049e7700c768a74b9122fffd71 14-Oct-2003 Chris Lattner <sabre@nondot.org> Generalize abstract interpreter interface to allow linking in an arbitrary number of shared objects


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9129 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
7915a1e764a5472d89a5ea40fbc22515afc5abf2 14-Oct-2003 Chris Lattner <sabre@nondot.org> Substantial cleanups:
* Add header comment
* Remove extraneous #includes
* Move the FileType enum into the GCC class
* The GCC class is not virtual.
* Move all of the "constructor" functions into the classes themselves
* Stop using cl::list as arguments, use std::vector instead (which cl::list
derives from)
* Improve comments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9121 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
d5d96b9fcd779806555cf5db602f80d5a308a471 10-Oct-2003 Misha Brukman <brukman+llvm@gmail.com> Fix spelling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9021 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
f212e472710f8799810d188c174b5b5cc5dcf7b0 10-Oct-2003 Brian Gaeke <gaeke@uiuc.edu> Add my abstracted dynamic linker support files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9008 91177308-0d34-0410-b5e6-96231b3b80d8
ynamicLinker.h
aacd3c8d86d6d4aa69ddae8814b4839a4973028a 06-Oct-2003 Chris Lattner <sabre@nondot.org> Doxygenize class comments. Add new NamedRegionTimer class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8888 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
48486893f46d2e12e926682a3ecb908716bc66c4 30-Sep-2003 Chris Lattner <sabre@nondot.org> Standardize header file comments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8782 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
asting.h
ommandLine.h
OTGraphTraits.h
raphWriter.h
nstIterator.h
nstVisitor.h
inker.h
angler.h
athExtras.h
ystemUtils.h
ypeInfo.h
f4744498042cc69627b3a0b40fe80d3967179ea4 30-Sep-2003 Chris Lattner <sabre@nondot.org> Add a file header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8781 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
29afb64d5bdb3235c7677ae18f5a05a97a0e9fa0 30-Sep-2003 Misha Brukman <brukman+llvm@gmail.com> Abstracted away the process of running our tools + gcc from bugpoint.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8753 91177308-0d34-0410-b5e6-96231b3b80d8
oolRunner.h
516d4b13666c92b98b27e9cfc83e921bc9f67317 30-Sep-2003 Misha Brukman <brukman+llvm@gmail.com> Tersified and fixed whitespace (tabs -> spaces).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8752 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
02dea4b355f3262a52dd9df0d24e59beb1bc6ec4 24-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Fix a typo I happened to notice.
Rename include guards in the "usual" manner.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8695 91177308-0d34-0410-b5e6-96231b3b80d8
nstIterator.h
02a3be020a6b4eedb4b489959997d23a22cdf22e 20-Sep-2003 Chris Lattner <sabre@nondot.org> Rename Function::getEntryNode -> getEntryBlock


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8625 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
e5b3e1559b97e04f73ea01465a1810383468e9f7 17-Sep-2003 John Criswell <criswell@uiuc.edu> In ExecWait(), made the child process exit if it can't execve() the new
program.
Added the use of const (which compiles and is hopefully correct).
Added comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8585 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
e9ba8b36740f46ba1a7a68706cafda1df1d2ca74 17-Sep-2003 John Criswell <criswell@uiuc.edu> Added the ExecWait() function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8578 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
776f776838d6e2f83d899bc99452dc83779c341b 10-Sep-2003 Chris Lattner <sabre@nondot.org> Fix spello


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8432 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
3cd5c1d7f19c83e21a34ef1373feb8933e26c4d8 08-Sep-2003 Chris Lattner <sabre@nondot.org> add support for the unwind inst


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8406 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
66622be46acfdebdfb82f1f6b988912ec8b61754 02-Sep-2003 John Criswell <criswell@uiuc.edu> Added the MakeFileReadable() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8327 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
6991a03753db092e2e5b269ebdc898ff5cfc43a8 02-Sep-2003 John Criswell <criswell@uiuc.edu> Added the MakeFileExecutable() method. This method takes a filename and
gives it execute access while respecting the user's umask.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8324 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
004caf4ded406c5699eb575337b0ed865483126e 29-Aug-2003 Chris Lattner <sabre@nondot.org> Remove automagic support for Modules. Noone uses it now anyways, and GCC 3.4 doesn't want us to do this unless Module has been #included


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8216 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
88d942d8983aadecae477fee523c23312d194515 27-Aug-2003 Misha Brukman <brukman+llvm@gmail.com> Spell `incompatible' correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8163 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
2d710ff7cffd1abad106e960d5a1f41233d08ee5 23-Aug-2003 Chris Lattner <sabre@nondot.org> Of course, the copy ctor really should copy the operand as well


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8077 91177308-0d34-0410-b5e6-96231b3b80d8
alueHolder.h
8518e74f3e24b136c627534e30b0068836785575 23-Aug-2003 Chris Lattner <sabre@nondot.org> Add more methods to be more value-like


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8074 91177308-0d34-0410-b5e6-96231b3b80d8
alueHolder.h
88e1eef1ed11ac2d21a5500062805123c4393342 23-Aug-2003 Chris Lattner <sabre@nondot.org> Initial checkin of ValueHolder helper class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8073 91177308-0d34-0410-b5e6-96231b3b80d8
alueHolder.h
31a6db0f2c94852e6dba7ca1e7f8df395cb3ad05 22-Aug-2003 Chris Lattner <sabre@nondot.org> Changes to work better with GCC3.4/LLVM G++


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8054 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
3c7eb1f2ea231c046367023576311fbc4b1270e3 19-Aug-2003 Chris Lattner <sabre@nondot.org> Make assertion message more helpful in a case that might happen...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7975 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
5560c9d49ccae132cabf1155f18aa0480dce3eda 18-Aug-2003 Misha Brukman <brukman+llvm@gmail.com> Spell `necessary' correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7944 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
nstVisitor.h
c48ef2ae36e2169872a828a5399ccd1993837915 15-Aug-2003 Brian Gaeke <gaeke@uiuc.edu> lib/Support/CommandLine.cpp:
Many changes suggested by Chris. It's okay, I'll recover from the emotional
damage...maybe someday. :-)

Collapse ParseCStringVector into ParseStringVector. Comment it.
Make it take a const input.
Use std::string::npos instead of -1 (what a mouthful!)
Make ParseEnvironmentOptions take const inputs.
Check its args at the very beginning.
Strdup all the contents of newArgv and free them all at the end.

include/Support/CommandLine.h:
Constify progName and envVar arguments to ParseEnvironmentOptions().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7905 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
20968a247246a0ef71f340f0a5f74405fc91a727 15-Aug-2003 Chris Lattner <sabre@nondot.org> Remove extraneous cl:: namespace qualifiers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7852 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
06b06c5f00acffdab8c59e3dc5baca3eacca172a 15-Aug-2003 Brian Gaeke <gaeke@uiuc.edu> Add support for reading command line arguments from an environment variable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7851 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
2b3860faebe96b45a5654d4e4ca9faa18ed97dbb 11-Aug-2003 Chris Lattner <sabre@nondot.org> Add support to the mangler for targets which require _'s on global symbols


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7741 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
35d402fbbaaa7b9db1b56757fb1b390a3889ebad 07-Aug-2003 Misha Brukman <brukman+llvm@gmail.com> Remove references to `bugpoint' from the now-generic system utilities.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7693 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
3d1b0c73319ec1d01ec927ead03a09bbc62c7aea 07-Aug-2003 Misha Brukman <brukman+llvm@gmail.com> Moved removeFile() and getUniqueFilename() into FileUtilities.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7691 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
ystemUtils.h
2dd93edfc221fe6d1e102cca694da01ca36b5d11 02-Aug-2003 Chris Lattner <sabre@nondot.org> Move debugging support out of Statistic.h into Debug.h, implement the new DEBUG_TYPE facilities


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7490 91177308-0d34-0410-b5e6-96231b3b80d8
ebug.h
4181a4fb4f4853869a0b97460f8bc4838aa0cc81 01-Aug-2003 Chris Lattner <sabre@nondot.org> New file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7482 91177308-0d34-0410-b5e6-96231b3b80d8
ileUtilities.h
ebb20c51fa003192493a1718e37ce45a9e3998c5 28-Jul-2003 Tanya Lattner <tonic@nondot.org> Need to include <string> to fix compile error on Sun


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7358 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
00fee61672b9c00c83099d06ddd1d634a2553bbb 25-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Forward-declare class Module to make the header file self-contained.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7319 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
d957518b51ec853a115f277f8c080e6d55b4fd7c 25-Jul-2003 Chris Lattner <sabre@nondot.org> Use the C++ <cassert> header, not the C <assert.h> header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7310 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
a44a4cd055bdad9f324d2d9a1b04bdc0bb1b2519 25-Jul-2003 Chris Lattner <sabre@nondot.org> Add includes of assert


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7307 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
imer.h
ab63bd15f5e2c822197e9b9d91bec1c46fbec884 25-Jul-2003 Chris Lattner <sabre@nondot.org> Add assert.h include


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7305 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
4166445b7cde22f81cd1a18b6f33fe94b94bdbb6 24-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Cleanups:

Mangler.cpp: Constify parameter to makeNameProper, and use const_iterator.
Make Count an unsigned int, and use utostr().
Don't name parameters things that start with underscore.
Mangler.h: All of the above, and also: Add Emacs mode-line. Include <set>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7301 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
b198ca304b1abb2784291315f19c89d04e5968fd 24-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Factor out name-mangling from X86/Printer, which is derived from CWriter,
into this new support class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7300 91177308-0d34-0410-b5e6-96231b3b80d8
angler.h
bc0e998c497446f5448425b3cbd7f8f19a458764 14-Jul-2003 Misha Brukman <brukman+llvm@gmail.com> The word `separate' only has one `e'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7173 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
b5c520bfb6505caaa6ad8468b372530d44c8b253 10-Jul-2003 Misha Brukman <brukman+llvm@gmail.com> Lowercase versions of `occurrence' need to be spelled correctly, too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7142 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
dd6cb6a43b78732f1a136583ccca4e715bae7d71 10-Jul-2003 Misha Brukman <brukman+llvm@gmail.com> `Occurrence' has no `a' and the `r' is doubled.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7140 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7a73b80b9052136c8cd2234eb3433a07df7cf38e 30-Jun-2003 John Criswell <criswell@uiuc.edu> Merged in autoconf branch. This provides configuration via the autoconf
system.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7014 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
asting.h
ommandLine.h
imer.h
d2a6fc397ee982936dee7dd5692b1481bcd9fe8f 28-Jun-2003 Chris Lattner <sabre@nondot.org> Add support for 'unsigned' command line arguments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6928 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
3889a2cb05c36f30050941679d5fd55d45e6a3ed 22-Jun-2003 Chris Lattner <sabre@nondot.org> Remove a ton of extraneous #includes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6842 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
ommandLine.h
nstVisitor.h
assNameParser.h
imer.h
697a00fbf0e43adb1c37c5af8f6e25e2a42b606d 18-Jun-2003 Chris Lattner <sabre@nondot.org> * Add new CallSite::get factory method
* add new setCalledFunction method
* FIX arg_end method which was horribly broken!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6758 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
57ec659810847be717059270aef647319f6498f5 17-Jun-2003 Chris Lattner <sabre@nondot.org> Make sure accessor is properly doxygenized. It wants two lines


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6756 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
95ab3d4bc492707bdb6a3e60cffabaa875c1f5e6 17-Jun-2003 Chris Lattner <sabre@nondot.org> Add accessor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6755 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
ad110d2bb4e9622384b9170a34c282d650dafaac 17-Jun-2003 Chris Lattner <sabre@nondot.org> Make CallSite's default constructable, copyable, and assignable (explicitly)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6749 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a9f6e4ae0eaea69949755807b7207177f256eace 17-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> Regularize the names of #include-guards.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6732 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
eakDetector.h
athExtras.h
ypeInfo.h
be583b914d8156b99d3da264d5adca37fee8dbc9 11-Jun-2003 John Criswell <criswell@uiuc.edu> Included assert.h so that the code compiles under newer versions of GCC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6682 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
FG.h
ommandLine.h
nstVisitor.h
assNameParser.h
imer.h
bf0ac3fe69aa9e1bfcffec36ea53dadbb97c6b4d 03-Jun-2003 Chris Lattner <sabre@nondot.org> Add doxygen comment for namespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6579 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
1ff1da7ac9bff43ba24445ff30ba2fd79bd95cd7 29-May-2003 Chris Lattner <sabre@nondot.org> dyn_cast_or_null should work just the same as dyn_cast does


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6394 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
7594b29c75aa2faf75b93d358e26a705d5e8673d 23-May-2003 Chris Lattner <sabre@nondot.org> Remove long dead code


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6307 91177308-0d34-0410-b5e6-96231b3b80d8
ameMangling.h
b3b729b69b311468025ff1e25b3499fcbd83454a 22-May-2003 Chris Lattner <sabre@nondot.org> Add support for a new "CommaSeparated" modifier


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6293 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
82c89b9f3a9b88bb63ce13b09b4f27fbb72f66fc 20-May-2003 Misha Brukman <brukman+llvm@gmail.com> Hopefully, the final fix for `[Pp]ropogate'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6251 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
806cebc562aba0f2e3fef774323e913d451b2b70 09-May-2003 Chris Lattner <sabre@nondot.org> Updates to match recent timer updates


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6069 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
97b315a58581261ec4bd6430ec9b438ba5fb728e 08-May-2003 Chris Lattner <sabre@nondot.org> Add support for the new VarArgInst instruction, reindent some stuff


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6028 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
6ad5a31324125d7fd91ef791fac3c29657d0f825 26-Apr-2003 Chris Lattner <sabre@nondot.org> Revert last checkin. Note that PHI nodes can use basic blocks also!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5956 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
90117cbb6f9e6bd10361e6d81e890f5cfc7b4a87 26-Apr-2003 Chris Lattner <sabre@nondot.org> Remove long-dead obsolete cruft


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5955 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
baf64b1e1c1537502f84bdd74893cb72fce6a0bb 24-Apr-2003 Chris Lattner <sabre@nondot.org> Remove support for "targetdata pass ctors"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5901 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
d55e98673a376918c3d109b1c1b8cb004fdeba08 23-Apr-2003 Chris Lattner <sabre@nondot.org> Kill unneccesary &*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5870 91177308-0d34-0410-b5e6-96231b3b80d8
nstIterator.h
ea0f49e52436272c65b52fe1e83f5009aa191a21 23-Apr-2003 Chris Lattner <sabre@nondot.org> Allow dyn_cast to operate on things that aren't OBVIOUSLY a pointer type.
These things can be converted to a pointer, like ilist_iterators


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5861 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
93a7e08d1fb087c3e26775838bfaad1d8eb99f11 24-Feb-2003 Chris Lattner <sabre@nondot.org> Initial checkin of CallSite wrapper for Call/Invoke instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5618 91177308-0d34-0410-b5e6-96231b3b80d8
allSite.h
a329733f471a51d64dadbc4ac400c7e54d94358b 05-Feb-2003 Chris Lattner <sabre@nondot.org> Allow the addition of edge source labels


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5493 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
cb09cc268b510e99d40b3518c5a390369ae3ffd5 14-Jan-2003 Chris Lattner <sabre@nondot.org> Move annotation to support library


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5268 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
4a10645c70199c8d8567fbc46312158c419720ab 24-Dec-2002 Chris Lattner <sabre@nondot.org> New files for miscompilation detection


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5120 91177308-0d34-0410-b5e6-96231b3b80d8
ystemUtils.h
90c5fdb20a4256f7cf7a857813a8aedc27c79a40 07-Dec-2002 Chris Lattner <sabre@nondot.org> Give better error message if two passes of the same argument are registered


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4950 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
af43b64d12b089b41ca691e2a30c0bde2bbab97e 19-Nov-2002 Chris Lattner <sabre@nondot.org> Ignore options that are ""


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4757 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
44a92675e4faf6bd2580ff6ce47e3716eb10a9b3 18-Nov-2002 Chris Lattner <sabre@nondot.org> Add facility to compute peak memory usage


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4752 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
d8d97ce857121b31ce2508f48cb3d2e46f72ec4b 10-Nov-2002 Chris Lattner <sabre@nondot.org> Fix a problem where bad graphs could be generated


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4671 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
b7843a4f5722027e464ea6479235b73c482534ae 04-Nov-2002 Chris Lattner <sabre@nondot.org> Allow memory sizes to be negative, eliminate TmpRSS


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4539 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
4a63b72df95b5c0d4af064cef19377f811ba6060 28-Oct-2002 Chris Lattner <sabre@nondot.org> Don't #include <Support/*>, #include "Support/*"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4325 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
ab77194e2a895bd2862f3a23bcd9d31efb553a54 27-Oct-2002 Chris Lattner <sabre@nondot.org> Old GCC's don't have an <ostream>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4293 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
137d399faea745a9b75315fd1d5c4c1855fd6f4f 18-Oct-2002 Chris Lattner <sabre@nondot.org> Don't emit braces around something without outgoing edges


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4225 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
dc05fffe2bbbdecf2e0dc0bb691b8967777edc9a 17-Oct-2002 Chris Lattner <sabre@nondot.org> Break up the GraphWriter into smaller chunks to be used in different ways


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4207 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
a16adb7dd268dec23464681167721f223766384b 17-Oct-2002 Chris Lattner <sabre@nondot.org> As wierd as it feels to type it, const void* is more generic than void*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4206 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
7be17dd23364e7f3bd63f5e765c9381bdb544cd5 16-Oct-2002 Chris Lattner <sabre@nondot.org> Allow simple nodes to have outgoing edges


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4202 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
96f549310013eaf751ff401b5ad3cbe01542e9b1 16-Oct-2002 Chris Lattner <sabre@nondot.org> * Factor printing code again, add emitSimpleNode method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4198 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
834a9d12f3575f0030f39117546f01fc7e0ff300 16-Oct-2002 Chris Lattner <sabre@nondot.org> * Add new DOTGraphTraits::addCustomGraphFeatures method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4197 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
8c836ce4f86713376b626e30765494f0a4f7e4b3 16-Oct-2002 Chris Lattner <sabre@nondot.org> * Significantly refactor GraphWriter into a class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4194 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
63a32de77680dd705d3f2788ea60021ecd4ad51e 16-Oct-2002 Chris Lattner <sabre@nondot.org> - Generic graph printing infrastructure changes:
* Only print outgoing edges from a cell if the destination isn't null.
This is important for DSGraphs, which have sources with no edges.
* Allow Node attributes to override shape of the node


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4192 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
f77b57097d00b301c164e10a034860fdbbcbe932 11-Oct-2002 Chris Lattner <sabre@nondot.org> Expose API to graph library to allow iteration over all nodes, even unreachable ones


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4111 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
f6516da9b3b39ccdf0efe8f999ecbae31d2497be 11-Oct-2002 Chris Lattner <sabre@nondot.org> * Don't only print out reachable nodes in the graph.
* use new api to get all nodes in the graph
* Allow custom graph traits


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4109 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
e9812838eeb8be19c460c952840f929b4eef3953 11-Oct-2002 Chris Lattner <sabre@nondot.org> Add new getGraphProperties that may be specialized by graphs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4108 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
9106a588060085316895a9b256909d795c2f5b5e 08-Oct-2002 Chris Lattner <sabre@nondot.org> Don't rotate paper.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4066 91177308-0d34-0410-b5e6-96231b3b80d8
raphWriter.h
95b923d548ed2e0f0993bb613868c871646f120c 07-Oct-2002 Chris Lattner <sabre@nondot.org> - Allow printing generic LLVM graphs to 'dot' files, so they can be
visualized easily.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4061 91177308-0d34-0410-b5e6-96231b3b80d8
OTGraphTraits.h
raphWriter.h
8f1717f6970039ebad57754e548237bac7d0d871 07-Oct-2002 Chris Lattner <sabre@nondot.org> Fix bug in last checkin


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4058 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
5554a1de08bd84b004c964d30b318d866e212fcb 07-Oct-2002 Chris Lattner <sabre@nondot.org> Implement operator= for SuccIterators


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4055 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
b0d0f5b473b6110a9e72d823f2f2c4c52928a1bf 03-Oct-2002 Chris Lattner <sabre@nondot.org> The wall clock timer (implementing using the RTC or cycle counter on x86) is
so much more accurate than the per process timers that we get better results
(less noise) by sorting according to wall time than process time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4034 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
6c38a79d770f3f0eaa11694ad84ca729b75272c4 01-Oct-2002 Chris Lattner <sabre@nondot.org> Checkin generic interval timer support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3992 91177308-0d34-0410-b5e6-96231b3b80d8
imer.h
16ca2b991b07c85237e53e8b0c97f30c4cbc6e3d 18-Sep-2002 Chris Lattner <sabre@nondot.org> Fix ambiguity problem due to builtin log2(double) function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3800 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
46fece70c231ed5103253d1e151d4ad4fc1e129a 16-Sep-2002 Vikram S. Adve <vadve@cs.uiuc.edu> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3749 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
4042332d4a8ba8e4d2b3a6d87a3af81fc73a0f98 13-Sep-2002 Chris Lattner <sabre@nondot.org> Checkin patch written by Casey Carter, enabling support for the redhat GCC 2.96
compiler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3697 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
a690c590dc064db78675753aa7d44c9b09798ca5 10-Sep-2002 Chris Lattner <sabre@nondot.org> Eliminate the GenericBinaryInst class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3649 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
96c2ce8614bab233451aac237c4bb1d19963d33f 08-Sep-2002 Chris Lattner <sabre@nondot.org> Checkin initial support for automatic memory leak detection routines


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3617 91177308-0d34-0410-b5e6-96231b3b80d8
eakDetector.h
625ea21205d1fb6f175e22477f55dd485b7c65c4 03-Sep-2002 Chris Lattner <sabre@nondot.org> Implement operator== and != for ranges


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3571 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
7382e73f86a69634688b73bd32b4ff798805240c 02-Sep-2002 Chris Lattner <sabre@nondot.org> Add printing support to ConstantRange class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3566 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
f6814d1dc75c28fa77aeca57704f1dfdff925b1e 02-Sep-2002 Chris Lattner <sabre@nondot.org> Initial implementation of ConstantRange support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3564 91177308-0d34-0410-b5e6-96231b3b80d8
onstantRange.h
3bb8ad27a81661865400fcff5e07d0461860faf7 23-Aug-2002 Chris Lattner <sabre@nondot.org> Eliminated the MemAccessInst class, folding contents into GEP class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3488 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
d145c2172fc54160c5edf199a1a96fca492e19bc 23-Aug-2002 Chris Lattner <sabre@nondot.org> Load & Store Inst now no longer derive from MemAccessInst


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3486 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
7742799a80cec572fec56d50ed4039fc73754f90 21-Aug-2002 Chris Lattner <sabre@nondot.org> Add missing forward decl


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3413 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
30551d02f53d6dc9f85a5ef4afb5d09022567980 14-Aug-2002 Chris Lattner <sabre@nondot.org> Remove support for unary instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3324 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
d23a35bc2b6db436b1d396872d26b49420890c3b 07-Aug-2002 Chris Lattner <sabre@nondot.org> Simplify interface to parsers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3255 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7b499f7303940db399562b9ca0abd2ba692cf6a1 26-Jul-2002 Chris Lattner <sabre@nondot.org> Factor PassNameParser out of opt.cpp so that analyze and eventually llc can use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3108 91177308-0d34-0410-b5e6-96231b3b80d8
assNameParser.h
47d3e261398457c02b9891f9a3c1eb654411c45b 25-Jul-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3082 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
c6a4bf1251f3dc44d2164c0847ce0b19ed7409a2 25-Jul-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3077 91177308-0d34-0410-b5e6-96231b3b80d8
nstIterator.h
fe8041ae397ebbcc311469aa39dfb79f8191b412 25-Jul-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3065 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
7f4dd472e35569efefbeffef096c490075e3e824 25-Jul-2002 Chris Lattner <sabre@nondot.org> Changes to build with GCC 3.1


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3064 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
5a6d63ae29512d654c8c697f42f32f97b9dc010b 24-Jul-2002 Chris Lattner <sabre@nondot.org> Add missing typename's that GCC3.1 is whining about.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3051 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
e2c677fd9cf412e77783b1e4d7eee57508a3e6db 24-Jul-2002 Chris Lattner <sabre@nondot.org> Disable the operator= in Value
Disable the copy ctor and operator= in Annotation.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3048 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
c1b5d092a0f89db5356ae79d8cc4213118f230dd 23-Jul-2002 Chris Lattner <sabre@nondot.org> Initial checkin


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3005 91177308-0d34-0410-b5e6-96231b3b80d8
ypeInfo.h
af7e82184d7d77e426056c7c233e860baeebe80f 23-Jul-2002 Chris Lattner <sabre@nondot.org> Add support for removing an option from a genericparser


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2998 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
ae1257a77b108d1c0202547a06473693ea4492c6 23-Jul-2002 Chris Lattner <sabre@nondot.org> Change to avoid bug in GCC 3.0.4


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2997 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
331de23705a719514e37c211f327379688f81b0d 22-Jul-2002 Chris Lattner <sabre@nondot.org> Checkin CommandLine 2.0


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2982 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
7e70829632f82de15db187845666aaca6e04b792 25-Jun-2002 Chris Lattner <sabre@nondot.org> MEGAPATCH checkin.

For details, See: docs/2002-06-25-MegaPatchInfo.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
asting.h
nstIterator.h
nstVisitor.h
71fb71628ab3f5280a7f4602f52ba365bca31f29 22-May-2002 Chris Lattner <sabre@nondot.org> Add ability to update existing variables with values read from the command line
to certain classes. This is nice because it means that in header files we can
just declare a value, and still have that value be set based on a command-line
argument. The difference is now that the #include of CommandLine.h does not
need to go into the header file as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2708 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
54ea60c69e69b8e5a464a1d7688ceec5c68bacd5 19-May-2002 Chris Lattner <sabre@nondot.org> Cleanups, rename IsPowerOf2 to isPowerOf2


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2662 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
bcfa423e3d1a2a385b56e3ec0f03137f0c33efc7 19-May-2002 Vikram S. Adve <vadve@cs.uiuc.edu> Added log2 for log-base-2 and also modified IsPower2 to use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2653 91177308-0d34-0410-b5e6-96231b3b80d8
athExtras.h
dd63a37c8713902469d5f080380b0cb30373e67d 11-May-2002 Chris Lattner <sabre@nondot.org> Make sure to call the derived visit versions from the ranged iterator.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2607 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
b498cce6b2e2f89596aba9d0f281c1684a73fb46 10-May-2002 Chris Lattner <sabre@nondot.org> Add explicit abort so optimized build knows that the function does not return


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2605 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
efbe5d682ba146a8fd5afc17bf3a027c32e7f7bd 07-May-2002 Chris Lattner <sabre@nondot.org> Update header after moving file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2522 91177308-0d34-0410-b5e6-96231b3b80d8
inker.h
0e743b83976dd9b31c8fc7ad19f61c30b743dedf 18-Apr-2002 Chris Lattner <sabre@nondot.org> * Add a comment to the header giving a breif overview of how to return a
value from a visit function
* Define a (file local) DELEGATE macro to make the code easier to read/maintain
* Define per-opcode delegation functions so that users can override specific
instances of BinaryOperator for example.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2290 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
536fe85d6d7915915e7b8c4e6eefc2bce701505d 18-Apr-2002 Chris Lattner <sabre@nondot.org> * Make dtor virtual
* Add a new defaulted argument that allows the instruction visitation
visitors to return a non-void value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2289 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
7296e93f08f7495dbe3f25e35bff0b616b438e19 15-Apr-2002 Chris Lattner <sabre@nondot.org> * s/Method/Function
* Add/allow callbacks for module,function, & basic block visiting


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2250 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
b7653df0853f06112b741be09f1b7ae5a6aa6fde 09-Apr-2002 Chris Lattner <sabre@nondot.org> s/Method/Function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2180 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
589df88ba03a81b2b3dc9d084c191a3a74724ecd 08-Apr-2002 Chris Lattner <sabre@nondot.org> Pull casting operators out of Value.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2166 91177308-0d34-0410-b5e6-96231b3b80d8
asting.h
2fbfdcffd3e0cf41422aaa6c526c37cb02b81341 07-Apr-2002 Chris Lattner <sabre@nondot.org> Change references to the Method class to be references to the Function
class. The Method class is obsolete (renamed) and all references to it
are being converted over to Function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2144 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
nstIterator.h
b4c5f83eacbdb7643f9efada8fd281ef77a662c3 18-Mar-2002 Chris Lattner <sabre@nondot.org> Initial checkin of InstVisitor class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1916 91177308-0d34-0410-b5e6-96231b3b80d8
nstVisitor.h
cc179d3ab85fd19c3fd9586409c69d14fbb6c642 12-Feb-2002 Chris Lattner <sabre@nondot.org> * Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1749 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
428039a6e11efa85e82cc29675e1c9c54130f2d6 12-Feb-2002 Chris Lattner <sabre@nondot.org> * Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" file
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file
* inst_iterator no longer permits resync'ing


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1744 91177308-0d34-0410-b5e6-96231b3b80d8
FG.h
nstIterator.h
697954c15da58bd8b186dbafdedd8b06db770201 20-Jan-2002 Chris Lattner <sabre@nondot.org> Changes to build successfully with GCC 3.02


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
ommandLine.h
inker.h
ameMangling.h
cee8f9ae67104576b2028125b56e9ba4856a1d66 27-Nov-2001 Chris Lattner <sabre@nondot.org> Create a new #include "Support/..." directory structure to move things
from "llvm/Support/..." that are not llvm dependant.

Move files and fix #includes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
ommandLine.h
epthFirstIterator.h
raphTraits.h
ashExtras.h
athExtras.h
onCopyable.h
ostOrderIterator.h
TLExtras.h
tringExtras.h
ree.h
360e17eaf1a2abda82b02235dc57d26d8f83c937 27-Nov-2001 Chris Lattner <sabre@nondot.org> Move DataTypes.h from llvm/Support to just Support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1399 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h
tringExtras.h
6eaa457343c3682d68938893ffd689d9737e090f 01-Nov-2001 Chris Lattner <sabre@nondot.org> Print floating point numbers in expodential form so that small numbers don't get truncated, which broke the health benchmark


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1086 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
5f62191f024b7a4982db5b4b242a51770206bf04 29-Oct-2001 Chris Lattner <sabre@nondot.org> Include functionality to get a string array constant as a string


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1020 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
1d050112f72c87bb1a53d2218c793ff44537dcef 29-Oct-2001 Chris Lattner <sabre@nondot.org> Initial checkin of name mangling code. Moved from Linker.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1017 91177308-0d34-0410-b5e6-96231b3b80d8
ameMangling.h
fa2c50324ef7971bbc81efccb4f5cbd423f2e525 28-Oct-2001 Chris Lattner <sabre@nondot.org> Remove unneccesary function prototypes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1014 91177308-0d34-0410-b5e6-96231b3b80d8
inker.h
4321ded265a20cb62fa5a99918dfc7d227094b8e 28-Oct-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Add support for name mangling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@998 91177308-0d34-0410-b5e6-96231b3b80d8
inker.h
1166b00316761df873db882c7212133f9b074d41 13-Oct-2001 Chris Lattner <sabre@nondot.org> New module linking functionality prototype


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@789 91177308-0d34-0410-b5e6-96231b3b80d8
inker.h
432b0a7e3d9dc5aab8e025eba70037a0192e50da 13-Oct-2001 Chris Lattner <sabre@nondot.org> Better linux support. This file still sucks


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@750 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h
6bad546c2a4eac51eabc6ac398861dcf7d5f18bb 01-Oct-2001 Chris Lattner <sabre@nondot.org> Update comments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@692 91177308-0d34-0410-b5e6-96231b3b80d8
raphTraits.h
7461bf5f8e1e9be67f4ce19f35a32a88668934c7 29-Sep-2001 Chris Lattner <sabre@nondot.org> Pull iterators out of CFG.h and genericize them with GraphTraits


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@666 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
raphTraits.h
ostOrderIterator.h
07ea7d7f7e8c7c89e40a27e2d7711f58792c1f2b 14-Sep-2001 Chris Lattner <sabre@nondot.org> Generic k-way tree support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@554 91177308-0d34-0410-b5e6-96231b3b80d8
ree.h
78914e772f4988dd5e521b49e2e9b208fa1b02ab 09-Sep-2001 Chris Lattner <sabre@nondot.org> Convert ConstRules to use annotations to clean it up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@514 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
643afb3b01318f9ce20558ffef374b377b1f1df7 07-Sep-2001 Chris Lattner <sabre@nondot.org> * Fixed mapped_iterator to actually work with functors
* Implement mapto function that works like map in a functional programming language


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@439 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
53aaefe18a2bfcd3ed5c8b83762b7cb7b70efe84 07-Sep-2001 Chris Lattner <sabre@nondot.org> Make annotations operations const with a mutable annotation list so that
we can annotate Types. A better solution would be make types nonconst.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@416 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
a0facd063bf720206cadc82892918e4346934fe7 27-Aug-2001 Chris Lattner <sabre@nondot.org> Extend annotations to pass data pointers around to the functions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@374 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
8dc89a330c57c43f1eff23aabdb418874a2f38da 23-Aug-2001 Chris Lattner <sabre@nondot.org> Add annotation support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366 91177308-0d34-0410-b5e6-96231b3b80d8
nnotation.h
7d2a2518e828483d0dbe357de66f4c97a97e27bb 28-Jul-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Added function printIndent.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@317 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
bf2b7e8beb4f7f38a68b1e2d6831bd024f2a379c 28-Jul-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Added a pointer hash function object for use in pointer maps.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@316 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
4bc3daaa3f3c9f22d5dd695e987e8d20f999791c 23-Jul-2001 Chris Lattner <sabre@nondot.org> Eliminated the Unique class in favor of NonCopyable and NonCopyableV


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@280 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h
onCopyable.h
nique.h
57dbb3ad63b6a0e77798edb156ef43daa3bfc67e 23-Jul-2001 Chris Lattner <sabre@nondot.org> Moved inline/llvm/Tools/* to include/llvm/Support/*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@279 91177308-0d34-0410-b5e6-96231b3b80d8
ataTypes.h
ashExtras.h
TLExtras.h
tringExtras.h
8f367bd3c0f56b7b318c46cee04f77735f617777 23-Jul-2001 Chris Lattner <sabre@nondot.org> Large scale changes to implement new command line argument facility


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272 91177308-0d34-0410-b5e6-96231b3b80d8
rogramOption.h
rogramOptions.h
3fcf6ec1e94e43fb8d7df92627fe1963d724e07a 22-Jul-2001 Chris Lattner <sabre@nondot.org> Add flag for emacs so it realizes it's C++ code


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269 91177308-0d34-0410-b5e6-96231b3b80d8
nique.h
953e0d7076cd09a7bebd15d5f738028b45b4b063 22-Jul-2001 Chris Lattner <sabre@nondot.org> Convert from using C style char*'s to strings.

Look ma, no strdups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265 91177308-0d34-0410-b5e6-96231b3b80d8
rogramOption.h
rogramOptions.h
29f921ca75d44fc36c10f0e2597470b4b3ada6e0 22-Jul-2001 Chris Lattner <sabre@nondot.org> Remove String file some more


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264 91177308-0d34-0410-b5e6-96231b3b80d8
rogramOption.h
rogramOptions.h
7ac1040ecefd90e9d45358ee63b9f0761ca36846 22-Jul-2001 Chris Lattner <sabre@nondot.org> Destroy the StringUtils.h file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@262 91177308-0d34-0410-b5e6-96231b3b80d8
rogramOptions.h
tringUtils.h
14bc392291b6441a0ff255346bafeb49dc350140 21-Jul-2001 Vikram S. Adve <vadve@cs.uiuc.edu> General support utilities like a program options class and a StringMap
class for mapping strings to arbitrary things.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228 91177308-0d34-0410-b5e6-96231b3b80d8
rogramOption.h
rogramOptions.h
tringUtils.h
nique.h