summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/Triple.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove the PTX back-end and all of its artifacts (triple, etc.)Justin Holewinski2012-05-241-18/+0
| | | | | | | | This back-end was deprecated in favor of the NVPTX back-end. NV_CONTRIB llvm-svn: 157417
* Set the default iOS version to 3.0.Chad Rosier2012-05-091-2/+4
| | | | llvm-svn: 156492
* Don't return true on a function with a void return type.Chad Rosier2012-05-091-1/+1
| | | | llvm-svn: 156484
* Add Triple::getiOSVersion.Chad Rosier2012-05-091-0/+21
| | | | | | | This new function provides a way to get the iOS version number from ios triples. Part of rdar://11409204 llvm-svn: 156483
* This patch adds a new NVPTX back-end to LLVM which supports code generation ↵Justin Holewinski2012-05-041-0/+18
| | | | | | | | | | | | | | | | | for NVIDIA PTX 3.0. This back-end will (eventually) replace the current PTX back-end, while maintaining compatibility with it. The new target machines are: nvptx (old ptx32) => 32-bit PTX nvptx64 (old ptx64) => 64-bit PTX The sources are based on the internal NVIDIA NVPTX back-end, and contain more functionality than the current PTX back-end currently provides. NV_CONTRIB llvm-svn: 156196
* Add triple support for the IBM BG/P and BG/Q supercomputers.Hal Finkel2012-04-021-0/+6
| | | | llvm-svn: 153882
* Add support for r600 (AMD GPUs HD2XXX - HD6XXX) target triplet.Anton Korobeynikov2012-03-091-0/+10
| | | | | | Patch by Tom Stellard! llvm-svn: 152400
* Support was removed from LLVM's MIPS backend for the PSP variant of thatChandler Carruth2012-02-221-3/+1
| | | | | | | | | | | | | chip in r139383, and the PSP components of the triple are really annoying to parse. Let's leave this chapter behind. There is no reason to expect LLVM to see a PSP-related triple these days, and so no reasonable motivation to support them. It might be reasonable to prune a few of the older MIPS triple forms in general, but as those at least cause no burden on parsing (they aren't both a chip and an OS!), I'm happy to leave them in for now. llvm-svn: 151156
* Tiny cosmetic change to use the same style for all of the while loops inChandler Carruth2012-02-211-2/+4
| | | | | | the normalize routine, especially the empty while loops. llvm-svn: 151050
* Replace a hand rolled loop with a lovely StringRef helper we have theseChandler Carruth2012-02-211-4/+1
| | | | | | days. No functionality changed. llvm-svn: 151048
* Pull the parsing helper functions out of the Triple interface entirely.Chandler Carruth2012-02-211-89/+90
| | | | | | | | | | | | | They're private static methods but we can just make them static functions in the implementation. It makes the implementations a touch more wordy, but takes another chunk out of the header file. Also, take the opportunity to switch the names to the new coding conventions. No functionality changed here. llvm-svn: 151047
* Clean up comments that I missed when changing the triple representation.Chandler Carruth2012-02-211-10/+7
| | | | | | | | Somehow, I even missed the ones I wrote just the other day... Thanks to Matt for the code review. llvm-svn: 151045
* Switch the llvm::Triple class to immediately parse the triple string onChandler Carruth2012-02-211-20/+16
| | | | | | | | | 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. llvm-svn: 151024
* Move constructors out-of-line and flesh out their documentation. NoChandler Carruth2012-02-201-2/+32
| | | | | | | functionality changed. This is in preparation for some refactoring of how this class behaves. llvm-svn: 150941
* Trivial cleanup to group the generic 'armvN' cases with the 'arm' case,Chandler Carruth2012-02-181-4/+4
| | | | | | etc. No functionality changed. llvm-svn: 150867
* StringSwitchify the rest of Triple.cpp.Benjamin Kramer2012-02-121-62/+34
| | | | llvm-svn: 150332
* Switch a bunch of manual if-chains to use StringSwitch. Clean them up inChandler Carruth2012-02-121-170/+93
| | | | | | | | the process. Some of these are still a bit gross. Still, this cuts 80 some lines out of this ridiculous file. ;] llvm-svn: 150331
* Convert assert(0) to llvm_unreachableCraig Topper2012-02-071-3/+2
| | | | llvm-svn: 149967
* Introduce helpers to compute the 32-bit varaints and 64-bit variants ofChandler Carruth2012-02-061-0/+74
| | | | | | | some architectures. These are useful for interacting with multiarch or bi-arch GCC (or GCC-based) toolchains. llvm-svn: 149895
* Add Triple::getMacOSXVersion to replace crufty code in the clang driver.Bob Wilson2012-01-311-0/+39
| | | | | | | This new function provides a way to get the Mac OS X version number from either generic "darwin" triples of macosx triples. llvm-svn: 149438
* Add various coarse bit-width architecture predicates to llvm::Triple.Chandler Carruth2012-01-311-0/+49
| | | | | | | These are very useful for frontends and other utilities reasoning about or selecting between triples. llvm-svn: 149353
* More dead code removal (using -Wunreachable-code)David Blaikie2012-01-201-4/+5
| | | | llvm-svn: 148578
* Add support for the gnueabihf environment. Patch by Sylvestre Ledru.Rafael Espindola2012-01-181-0/+3
| | | | llvm-svn: 148434
* Teach the triple library about the androideabi environment.Chandler Carruth2012-01-101-0/+3
| | | | | | Patch by Evgeniy Stepanov. llvm-svn: 147871
* Hexagon backend supportTony Linthicum2011-12-121-0/+7
| | | | llvm-svn: 146412
* Remove the Alpha backend.Dan Gohman2011-10-271-7/+0
| | | | llvm-svn: 143164
* Remove the Blackfin backend.Dan Gohman2011-10-251-7/+0
| | | | llvm-svn: 142880
* Remove the SystemZ backend.Dan Gohman2011-10-241-5/+0
| | | | llvm-svn: 142878
* Add mips64 & mips64el to Triple. Patch by Liu with modifications.Akira Hatanaka2011-09-201-0/+10
| | | | llvm-svn: 140157
* Add AMDIL as valid target triple to LLVM.Tobias Grosser2011-08-291-1/+10
| | | | | | Submitted by: Villmow, Micah <Micah.Villmow@amd.com> llvm-svn: 138734
* This patch adds support of le32 pseudo-cpu that stands for genericIvan Krasin2011-08-231-0/+9
| | | | | | 32-bit little-endian CPU. Used by PNaCl and Emscripten. llvm-svn: 138335
* Add NativeClient support to Triple::ParseOS.Ivan Krasin2011-08-221-0/+2
| | | | llvm-svn: 138291
* Add NativeClient operating system support.Ivan Krasin2011-08-181-0/+1
| | | | | | | | | | | | | | This patch adds support of NativeClient (*-*-nacl) OS support to LLVM. It's already supported in autoconf/config.sub. The motivation for this change is to start upstreaming PNaCl work. The whole set of patches include llvm backends (i686, x86_64, ARM), llvm-gcc (probably, would not be upstreamed because it's deprecated) and clang (the work has been just started, the amount of changes is going to be low and the most of the work is expected to be done close to the mainline). llvm-svn: 138005
* Added several architecture names.Sean Callanan2011-07-301-1/+2
| | | | llvm-svn: 136552
* Teach the Triple class about kfreebsd (FreeBSD kernel withDuncan Sands2011-07-261-0/+3
| | | | | | a GNU userspace). llvm-svn: 136085
* switch Triple to take twines instead of stringrefs.Chris Lattner2011-07-241-5/+0
| | | | llvm-svn: 135889
* lib/Support/Triple.cpp: Recognize "-march=ppc32" to llc properly, as quick hack.NAKAMURA Takumi2011-07-221-0/+2
| | | | | FIXME: There is an inconsistency. llvm::Triple does not understand "ppc32" and PowerPC/TargetInfo holds "ppc32". llvm-svn: 135745
* Recognize mipseb as alias for mips for symmetry with mipsel.Joerg Sonnenberger2011-07-071-1/+2
| | | | llvm-svn: 134617
* Fix missing triple support for RTEMS target.Eli Friedman2011-07-061-0/+2
| | | | llvm-svn: 134532
* Add initial *-*-rtems* target, from Joel SherrillDouglas Gregor2011-07-011-0/+1
| | | | llvm-svn: 134282
* ...this is not a good commit day for me.John McCall2011-05-291-7/+0
| | | | llvm-svn: 132294
* On Darwin ARM, set the UNWIND_RESUME libcall to _Unwind_SjLj_Resume.John McCall2011-05-291-0/+7
| | | | | | | This is important for the correct lowering of unwind instructions (which doesn't matter at all) and llvm.eh.resume calls (which does). llvm-svn: 132291
* 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 scei vendorJohn Thompson2011-03-151-0/+3
| | | | llvm-svn: 127705
OpenPOWER on IntegriCloud