summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support
Commit message (Collapse)AuthorAgeFilesLines
* allow adding a FoldingSetNodeID to a FastFoldingSetNode, resolving PR9499,Chris Lattner2011-04-251-0/+5
| | | | | | patch by Johannes Schaub! llvm-svn: 130151
* Like the coding standards say, do not use "using namespace std".Jay Foad2011-04-231-1/+0
| | | | llvm-svn: 130054
* Add support for 64-bit object files to Path.Eric Christopher2011-04-221-4/+10
| | | | llvm-svn: 129975
* Add DW_OP_bit_piece.Devang Patel2011-04-211-0/+1
| | | | llvm-svn: 129945
* sys/Host: Change getHostTriple() to return the full Darwin version on OS X.Daniel Dunbar2011-04-201-4/+1
| | | | llvm-svn: 129852
* PTX: Add intrinsics to list of built-in intrinsics, which allows them to beJustin Holewinski2011-04-201-10/+20
| | | | | | | | | | used by Clang. To help Clang integration, the PTX target has been split into two targets: ptx32 and ptx64, depending on the desired pointer size. - Add GCCBuiltin class to all intrinsics - Split PTX target into ptx32 and ptx64 llvm-svn: 129851
* ADT/Triple: Drop support for -osx style triples, we are going with -macosxDaniel Dunbar2011-04-191-3/+0
| | | | | | instead. llvm-svn: 129836
* ADT/Triple: Add support for Triple::MacOSX per feedback from Chris, will removeDaniel Dunbar2011-04-191-0/+3
| | | | | | Triple::OSX once Clang has moved. llvm-svn: 129833
* ADT/Triple: Add isOSDarwin() and isOSWindows() helper functions.Daniel Dunbar2011-04-191-2/+1
| | | | llvm-svn: 129815
* ADT/Triple: Fix Triple::getArchNameForAssembler to support OSX and iOSDaniel Dunbar2011-04-191-1/+2
| | | | | | enumeration values. llvm-svn: 129814
* ADT/Triple: Generalize and simplify getDarwinNumber to just be getOSVersion.Daniel Dunbar2011-04-191-47/+24
| | | | llvm-svn: 129799
* ADT/Triple: Add support for more explicit "osx" and "ios" OS names.Daniel Dunbar2011-04-191-0/+6
| | | | llvm-svn: 129798
* Add BumpPtrAllocator::getTotalMemory() to allow clients to query how much ↵Ted Kremenek2011-04-181-0/+8
| | | | | | memory a BumpPtrAllocator allocated. llvm-svn: 129727
* Introduce support to encode Objective-C property information in debugging ↵Devang Patel2011-04-161-0/+4
| | | | | | information generated for an interface. llvm-svn: 129624
* Implements StringRef::compare with bounds. It is behaves similarly to ↵Lenny Maiorani2011-04-151-0/+21
| | | | | | strncmp(). Unit tests also included. llvm-svn: 129582
* Fix a ton of comment typos found by codespell. Patch byChris Lattner2011-04-158-9/+9
| | | | | | Luis Felipe Strano Moraes! llvm-svn: 129558
* regexes are allowed to match empty things, e.g. {{.*}} in filecheck.Chris Lattner2011-04-091-1/+1
| | | | llvm-svn: 129193
* Fix a few instances of "warning: extra ';' outside of a function [-pedantic]".Frits van Bommel2011-04-061-7/+7
| | | | llvm-svn: 129002
* Add support for detection of Intel SandyBridge.Roman Divacky2011-04-051-0/+2
| | | | llvm-svn: 128920
* Added *hidden* flags -print-options and -print-all-options soAndrew Trick2011-04-051-26/+150
| | | | | | | | | | | | | | | | | | | 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. llvm-svn: 128910
* Assorted bugfixes in object file handling:Eric Christopher2011-04-031-0/+14
| | | | | | | | | | | | | | | | | | | | | | | - Adds support for sniffing PE/COFF files on win32 (.exe and .dll) which are COFF files that have an MS-DOS compatibility stub on the front of them. - Fixes a bug in the COFFObjectFile's support for the Microsoft COFF extension for long symbol names, wherein it was attempting to parse the leading '/' in an extended symbol name reference as part of the integer offset. - Fixes bugs in COFFObjectFile and ELFObjectFile wherein section and symbol iterators were being returned with uninitialized bytes; the type DataRefImpl is a union between 2 32-bit words (d.a and d.b) and a single intptr_t word (p). Only p was being initialized, so in 32-bit builds the result would be iterators with random upper 32-bit words in their DataRefImpls. This caused random failures when seeking around in object files. Patch by Graydon Hoare! llvm-svn: 128799
* Reset StringMap's NumTombstones on clears and rehashes.Jakob Stoklund Olesen2011-03-301-0/+3
| | | | | | | | | | | | | StringMap was not properly updating NumTombstones after a clear or rehash. This was not fatal until now because the table was growing faster than NumTombstones could, but with the previous change of preventing infinite growth of the table the invariant (NumItems + NumTombstones <= NumBuckets) stopped being observed, causing infinite loops in certain situations. Patch by José Fonseca! llvm-svn: 128567
* Prevent infinite growth of SmallPtrSet instances.Jakob Stoklund Olesen2011-03-301-6/+9
| | | | | | | | Rehash but don't grow when full of tombstones. Patch by José Fonseca! llvm-svn: 128566
* Prevent infinite growth of SmallMap instances.Jakob Stoklund Olesen2011-03-301-1/+13
| | | | | | | | Rehash but don't grow when full of tombstones. Patch by José Fonseca! llvm-svn: 128565
* Avoid turning a floating point division with a constant power of two into a ↵Benjamin Kramer2011-03-301-0/+8
| | | | | | | | | denormal multiplication. Some platforms may treat denormals as zero, on other platforms multiplication with a subnormal is slower than dividing by a normal. llvm-svn: 128555
* Add APFloat::getExactInverse.Benjamin Kramer2011-03-301-0/+26
| | | | | | | | | | | | | | The idea is, that if an ieee 754 float is divided by a power of two, we can turn the division into a cheaper multiplication. This function sees if we can get an exact multiplicative inverse for a divisor and returns it if possible. This is the hard part of PR9587. I tested many inputs against llvm-gcc's frotend implementation of this optimization and didn't find any difference. However, floating point is the land of weird edge cases, so any review would be appreciated. llvm-svn: 128545
* Constant folding support for calls to umul.with.overflow(), basically ↵Frits van Bommel2011-03-271-0/+10
| | | | | | identical to the smul.with.overflow() code. llvm-svn: 128379
* revert r128199 until it can be made to work with Frontend/dependency-gen.c.Andrew Trick2011-03-241-5/+9
| | | | llvm-svn: 128218
* Remove all uses of PATH_MAX and MAXPATHLEN from PathV2.Michael J. Spencer2011-03-241-9/+5
| | | | llvm-svn: 128199
* We don't need a null terminator for the output file.Rafael Espindola2011-03-221-4/+8
| | | | llvm-svn: 128098
* Properly initialize all fields in CrashReporterCleanupContext. This caused ↵Ted Kremenek2011-03-221-1/+1
| | | | | | the buildbot failure earlier. llvm-svn: 128071
* Temporarily stop recovering resources in CrashRecoveryContext while I ↵Ted Kremenek2011-03-221-1/+1
| | | | | | investigate further why this works on my machine and not on others. llvm-svn: 128065
* Provide a means for CrashRecovery clients to determine if code is currently ↵Ted Kremenek2011-03-211-0/+9
| | | | | | running while crash recovery cleanups are being processed. llvm-svn: 128008
* Avoid initializing posix_spawn_file_actions_t if not used.Benjamin Kramer2011-03-201-7/+11
| | | | | | | - glibc falls back to fork+exec if a file actions object is present. - On BSDs this saves a malloc. llvm-svn: 127969
* Tweak CrashRecoveryContextCleanup to provide an easy method for clients to ↵Ted Kremenek2011-03-191-0/+1
| | | | | | select between 'delete' and 'destructor' cleanups, and allow the destructor of CrashRecoveryContextCleanupRegister to be pseudo re-entrant. llvm-svn: 127929
* Tweak CrashRecoveryContext::GetCurrent() to return quickly if ↵Ted Kremenek2011-03-191-0/+3
| | | | | | | | 'gCrsahRecoveryEnabled' is false. This avoids us needing to go to thread local storage for the performance sensitive case where we are compiling code. llvm-svn: 127928
* setExecutable() should default to success if there's nothing custom for it.Jim Grosbach2011-03-181-1/+1
| | | | llvm-svn: 127891
* raw_ostream: [PR6745] Tweak formatting (double)%e for Windows hosts.NAKAMURA Takumi2011-03-181-0/+30
| | | | | | | On MSVCRT and compatible, output of %e is incompatible to Posix by default. Number of exponent digits should be at least 2. "%+03d" FIXME: Implement our formatter in future! llvm-svn: 127872
* Initialize the only-used-with-PPC-double-double parts of the APFloat class. ThisBill Wendling2011-03-181-13/+10
| | | | | | | makes valgrind stop complaining about uninitialized variables being read when it accesses a bitfield (category) that shares its bits with these variables. llvm-svn: 127871
* Check RequiresNullTerminator first, or we might read from an invalid address.Rafael Espindola2011-03-181-1/+1
| | | | llvm-svn: 127853
* Augment CrashRecoveryContext to have registered "cleanup" objects that can ↵Ted Kremenek2011-03-181-0/+38
| | | | | | be used to release resources during a crash. llvm-svn: 127849
* Use RequiresNullTerminator to create buffers without a null terminatorRafael Espindola2011-03-171-2/+4
| | | | | | instead of copying. llvm-svn: 127835
* Add an argument to APInt's magic udiv calculation to specify the number of ↵Benjamin Kramer2011-03-171-2/+4
| | | | | | | | bits that are known zero in the divided number. This will come in handy soon. llvm-svn: 127828
* lib/Support/raw_ostream.cpp: On mingw, report_fatal_error() should not be ↵NAKAMURA Takumi2011-03-161-0/+8
| | | | | | | | called at dtor context. report_fatal_error() invokes exit(). We know report_fatal_error() might not write messages to stderr when any errors were detected on FD == 2. llvm-svn: 127726
* Windows/PathV2.inc: [PR8520] Recognize "NUL" as special (character) file.NAKAMURA Takumi2011-03-161-1/+8
| | | | | FIXME: It is a temporal hack. We should detect as many "special file name" as possible. llvm-svn: 127724
* Windows/Path.inc: [PR6270] PathV1::makeUnique(): Give arbitrary initial seed ↵NAKAMURA Takumi2011-03-161-1/+11
| | | | | | | for workaround. FIXME: We should use sys::fs::unique_file() in future. llvm-svn: 127723
* Add scei vendorJohn Thompson2011-03-151-0/+3
| | | | llvm-svn: 127705
* Don't compute the file size if we don't need to.Rafael Espindola2011-03-101-14/+29
| | | | llvm-svn: 127426
* Add r127409 back now that the windows file was updated.Rafael Espindola2011-03-102-28/+77
| | | | llvm-svn: 127417
* Try to fix the windows build.Rafael Espindola2011-03-101-2/+2
| | | | llvm-svn: 127416
OpenPOWER on IntegriCloud