summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support
Commit message (Collapse)AuthorAgeFilesLines
* [Support/YAMLParser] Fix ASan found bugs.Michael J. Spencer2012-04-271-1/+7
| | | | llvm-svn: 155735
* [Support/YAML] Properly fix unitialized variable warning by inserting aMichael J. Spencer2012-04-261-6/+12
| | | | | | 'REPLACEMENT CHARACTER' (U+FFFD) when getAsInteger fails. llvm-svn: 155653
* Add a missing cpu subtype.Evan Cheng2012-04-231-0/+4
| | | | llvm-svn: 155402
* [Support/Unix] Unconditionally include time.h.Michael J. Spencer2012-04-231-8/+2
| | | | | | | | | | | | When building LLVM on Linux with libc++ with CMake TIME_WITH_SYS_TIME is undefined, and HAVE_SYS_TIME_H is defined. This ends up including sys/time.h but not time.h. Unix/TimeValue.inc requires time.h for asctime_r and localtime. libstdc++ seems to include time.h anyway, but libc++ does not. Fix this by always including time.h llvm-svn: 155382
* Conflict with st_dev/st_ino identifiers under Debian GNU/HurdSylvestre Ledru2012-04-231-4/+4
| | | | | | | | | | | | | 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 llvm-svn: 155354
* Don't die with an assertion if the Result bitwidth is already correct. ThisChris Lattner2012-04-231-1/+1
| | | | | | fixes an assert reading "1239123123123123" when the result is already 64-bit. llvm-svn: 155329
* Remove some potential warnings about variables used uninitialized.Bill Wendling2012-04-221-3/+3
| | | | llvm-svn: 155307
* No need for "else if" after a return. Autosense "0o123" as octal inChris Lattner2012-04-211-4/+12
| | | | | | StringRef::getAsInteger llvm-svn: 155298
* move Signals to .rodataNuno Lopes2012-04-211-1/+1
| | | | llvm-svn: 155283
* YAMLParser: silence warning about tautological comparison on unsigned-char ↵Benjamin Kramer2012-04-211-1/+1
| | | | | | | | platforms. No functionality change. llvm-svn: 155280
* SourceMgr: Colorize diagnostics.Benjamin Kramer2012-04-181-7/+41
| | | | | | Same color scheme as clang uses. The colors are only enabled if the output is a tty. llvm-svn: 155035
* SmallPtrSet: Reuse DenseMapInfo's pointer hash function instead of inventing ↵Benjamin Kramer2012-04-181-1/+2
| | | | | | | | | | a bad one ourselves. DenseMap's hash function uses slightly more entropy and reduces hash collisions significantly. I also experimented with Hashing.h, but it didn't gave a lot of improvement while being much more expensive to compute. llvm-svn: 154996
* fix error check in assertSeth Cantrell2012-04-181-1/+1
| | | | llvm-svn: 154971
* C++ has newlines at the end of files (including include files).David Blaikie2012-04-171-1/+1
| | | | llvm-svn: 154962
* platform support for counting column widths and checking isprintSeth Cantrell2012-04-175-0/+104
| | | | llvm-svn: 154944
* Goodbye, JSONParser...Manuel Klimek2012-04-172-303/+0
| | | | llvm-svn: 154930
* Reapply 'Add reverseColor to raw_ostream'.Benjamin Kramer2012-04-163-0/+49
| | | | | | | To be used in printing unprintable source in clang diagnostics. Patch by Seth Cantrell, with a minor fix for mingw by me. llvm-svn: 154805
* Revert r154800 which breaks windows builders.Argyrios Kyrtzidis2012-04-163-50/+0
| | | | llvm-svn: 154802
* Add reverseColor to raw_ostream.Argyrios Kyrtzidis2012-04-163-0/+50
| | | | | | | To be used in printing unprintable source in clang diagnostics. Patch by Seth Cantrell! llvm-svn: 154800
* Fix the build under Debian GNU/Hurd.Sylvestre Ledru2012-04-113-2/+17
| | | | | | Thanks to Pino Toscano for the patch llvm-svn: 154500
* FoldingSet: Push the hash through FoldingSetTraits::Equals, so clients can ↵Benjamin Kramer2012-04-111-3/+3
| | | | | | use it. llvm-svn: 154496
* In MemoryBuffer::getOpenFile() make sure that the buffer is null-terminated ifArgyrios Kyrtzidis2012-04-051-0/+11
| | | | | | | | | | | | | the caller requested a null-terminated one. When mapping the file there could be a racing issue that resulted in the file being larger than the FileSize passed by the caller. We already have an assertion for this in MemoryBuffer::init() but have a runtime guarantee that the buffer will be null-terminated, so do a copy that adds a null-terminator. Protects against crash of rdar://11161822. llvm-svn: 154082
* Move yaml::Stream's dtor out of line so it can see Scanner's dtor.Benjamin Kramer2012-04-041-0/+2
| | | | llvm-svn: 154004
* Sorry about that. MSVC seems to accept just about any random string you give ↵Michael J. Spencer2012-04-031-2/+2
| | | | | | it ;/ llvm-svn: 153979
* Add YAML parser to Support.Michael J. Spencer2012-04-032-0/+2116
| | | | llvm-svn: 153977
* Add triple support for the IBM BG/P and BG/Q supercomputers.Hal Finkel2012-04-021-0/+6
| | | | llvm-svn: 153882
* Lowercase the tag name to match the rest of dwarf.Eric Christopher2012-03-291-1/+1
| | | | llvm-svn: 153691
* Fix GetMainExecutable on kFreeBSD.Anton Korobeynikov2012-03-261-3/+3
| | | | | | Patch by Sylvestre Ledru! llvm-svn: 153435
* Fix null to integer conversion warnings.Jean-Daniel Dupas2012-03-241-2/+2
| | | | llvm-svn: 153395
* [PathV2]: Fix bug in create_directories which caused infinite recursion onMichael J. Spencer2012-03-211-5/+6
| | | | | | | | som inputs. Bug found and fix proposed by Kal Conley! llvm-svn: 153225
* Move APInt::operator[] inline.Benjamin Kramer2012-03-141-6/+0
| | | | llvm-svn: 152692
* Move APInt::operator! inline, it's small and fuses well with surrounding ↵Benjamin Kramer2012-03-141-10/+0
| | | | | | code when inlined. llvm-svn: 152688
* Add a sanity check in MemoryBuffer::getOpenFile() to make sure we don't hangArgyrios Kyrtzidis2012-03-131-1/+5
| | | | | | | | if the passed in FileSize is inaccurate. rdar://11034179 llvm-svn: 152662
* Inline a trivial helper function.Benjamin Kramer2012-03-121-7/+3
| | | | llvm-svn: 152577
* Don't cast away constant qualifier.Duncan Sands2012-03-121-1/+1
| | | | llvm-svn: 152553
* Replace a hand-coded leading one counting loop with the magic from MathExtras.h.Benjamin Kramer2012-03-111-8/+1
| | | | llvm-svn: 152545
* Make StringRef::getAsInteger work with all integer types. Before this changeMichael J. Spencer2012-03-101-29/+7
| | | | | | | | it would fail with {,u}int64_t on x86-64 Linux. This also removes code duplication. llvm-svn: 152517
* Add support for r600 (AMD GPUs HD2XXX - HD6XXX) target triplet.Anton Korobeynikov2012-03-091-0/+10
| | | | | | Patch by Tom Stellard! llvm-svn: 152400
* Silence unused function warning when graphviz is not available.Benjamin Kramer2012-03-081-5/+3
| | | | llvm-svn: 152346
* Revert commit 152300 (ddunbar) since it still seems to be breakingDuncan Sands2012-03-081-1/+43
| | | | | | | | | buildbots. Original commit message: [ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline, reapplied with a fix for the longstanding over-read of 32-bit pointer values. llvm-svn: 152304
* [ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline, reappliedDaniel Dunbar2012-03-081-43/+1
| | | | | | with a fix for the longstanding over-read of 32-bit pointer values. llvm-svn: 152300
* Revert r152288, "[ADT] Change the trivial FoldingSetNodeID::Add* methods to beDaniel Dunbar2012-03-081-1/+43
| | | | | | inline.", which is breaking the bots in a way I don't understand. llvm-svn: 152295
* [ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline.Daniel Dunbar2012-03-081-43/+1
| | | | llvm-svn: 152288
* Copy the right amount of elements.Benjamin Kramer2012-03-071-3/+5
| | | | llvm-svn: 152254
* SmallPtrSet: Copy all the elements when swapping, not just numelements.Benjamin Kramer2012-03-071-5/+4
| | | | | | | This fixes a build failure in webkit. Copying all elements shouldn't be necessary, I'll look out for a better fix soon. llvm-svn: 152252
* Added -view-background to avoid waiting for each GraphViz invocation.Andrew Trick2012-03-071-39/+40
| | | | | | GV and XDOT paths are untested but should work the same. llvm-svn: 152179
* SmallPtrSet: Provide a more efficient implementation of swap than the ↵Benjamin Kramer2012-03-061-0/+50
| | | | | | | | | default triple-copy std::swap. This currently assumes that both sets have the same SmallSize to keep the implementation simple, a limitation that can be lifted if someone cares. llvm-svn: 152143
* Replace the hashing functions on APInt and APFloat with overloads of theChandler Carruth2012-03-042-103/+21
| | | | | | | | | | | | | | new hash_value infrastructure, and replace their implementations using hash_combine. This removes a complete copy of Jenkin's lookup3 hash function (which is both significantly slower and lower quality than the one implemented in hash_combine) along with a somewhat scary xor-only hash function. Now that APInt and APFloat can be passed directly to hash_combine, simplify the rest of the LLVMContextImpl hashing to use the new infrastructure. llvm-svn: 152004
* Add generic support for hashing StringRef objects using the new hashing library.Chandler Carruth2012-03-041-0/+7
| | | | llvm-svn: 152003
* Switch FoldingSet over to the new hashing infrastructure. We might wantChandler Carruth2012-03-011-18/+2
| | | | | | | | to do more invasive refactoring here to get FoldingSet to use size_t or even hash_code directly, but for now this is a good first step to remove Yet Another Hashing Algorithm from LLVM. llvm-svn: 151859
OpenPOWER on IntegriCloud