summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
Commit message (Collapse)AuthorAgeFilesLines
...
* Wire up -mrdrnd for X86.Benjamin Kramer2012-07-071-4/+27
| | | | | | | For some reason GCC decided to call the feature rdrnd instead of rdrand, which requires translating it for LLVM. llvm-svn: 159897
* Remove unreachable default case to pacify clang's -Wcovered-switch-default.Benjamin Kramer2012-07-061-1/+0
| | | | llvm-svn: 159829
* MIPS: Define __mips_dsp_rev / __mips_dspr2 / __mips_dsp macrosSimon Atanasyan2012-07-051-0/+23
| | | | | | if -mdsp or -mdspr2 options are provided. llvm-svn: 159774
* MIPS: Add -mdsp/-mno-dsp and -mdspr2/-mno-dspr2 command line options support.Simon Atanasyan2012-07-051-1/+1
| | | | llvm-svn: 159769
* MIPS: Define __mips16 macro if -mips16 option is provided.Simon Atanasyan2012-07-051-0/+8
| | | | llvm-svn: 159753
* MIPS: Replace the pair of boolean flags by enumeration to hold selected ↵Simon Atanasyan2012-07-051-24/+26
| | | | | | float ABI. llvm-svn: 159752
* MIPS: Add -mips16 / -mno-mips16 command line support.Simon Atanasyan2012-07-051-1/+2
| | | | llvm-svn: 159747
* A few more cleanups for the GNU family of ObjC runtimes.David Chisnall2012-07-041-1/+4
| | | | llvm-svn: 159708
* Rename the GCC Objective-C runtime to gcc from gnu-fragile and the GNUstepDavid Chisnall2012-07-031-6/+6
| | | | | | runtime to gnustep from gnu. Fix EH for the GCC runtime. llvm-svn: 159684
* Add additional architecture defines for PPC targets.Hal Finkel2012-07-031-9/+49
| | | | | | Patch by Andy Gibbs. llvm-svn: 159665
* Share ConvertUTF8toWide() between Lex and CodeGen.Nico Weber2012-07-032-0/+55
| | | | llvm-svn: 159634
* Documentation cleanup: Delete a duplicated/malformed doc comment.James Dennett2012-07-021-2/+0
| | | | llvm-svn: 159628
* Update the %diff modifer to have an alternate string print when a template treeRichard Trieu2012-06-291-7/+11
| | | | | | | | | | is selected. This will allow more flexibility when converting diagnostics to use template type diffing. Also updated the internal manual and test cases for correctly keeping the bold attribute and for tree printing. llvm-svn: 159463
* Support MIPS DSP Rev1 intrinsics. Simon Atanasyan2012-06-281-1/+10
| | | | | | This patch was reviewed in the llvm-commits list by Jim Grosbach. llvm-svn: 159366
* Fix for r159256 on Windows.Axel Naumann2012-06-271-0/+4
| | | | llvm-svn: 159262
* From Vassil Vassilev:Axel Naumann2012-06-271-0/+13
| | | | | | | add interface for removing a FileEntry from the cache. Forces a re-read the contents from disk, e.g. because a tool (like cling) wants to pick up a modified file. llvm-svn: 159256
* Add template type diffing to Clang. This feature will provide a betterRichard Trieu2012-06-261-1/+78
| | | | | | | | | | | | comparison between two templated types when they both appear in a diagnostic. Type elision will remove indentical template arguments, which can be disabled with -fno-elide-type. Cyan highlighting is applied to the differing types. For more formatting, -fdiagnostic-show-template-tree will output the template type as an indented text tree, with differences appearing inline. Template tree works with or without type elision. llvm-svn: 159216
* Remove a goofy CMake hack and use the standard CMake facilities toChandler Carruth2012-06-211-15/+15
| | | | | | | | | express library-level dependencies within Clang. This is no more verbose really, and plays nicer with the rest of the CMake facilities. It should also have no change in functionality. llvm-svn: 158888
* Introduce ObjCRuntime::hasWeakClassImport() and use it in the appropriateJohn McCall2012-06-201-2/+3
| | | | | | | | | places. I've turned this off for the GNU runtimes --- I don't know if they support weak class import, but it's easy enough for them to opt in. Also tweak a comment per review by Jordan. llvm-svn: 158860
* Restructure how the driver communicates information about theJohn McCall2012-06-203-0/+132
| | | | | | | | | | | | | | | | | | | | | | | | target Objective-C runtime down to the frontend: break this down into a single target runtime kind and version, and compute all the relevant information from that. This makes it relatively painless to add support for new runtimes to the compiler. Make the new -cc1 flag, -fobjc-runtime=blah-x.y.z, available at the driver level as a better and more general alternative to -fgnu-runtime and -fnext-runtime. This new concept of an Objective-C runtime also encompasses what we were previously separating out as the "Objective-C ABI", so fragile vs. non-fragile runtimes are now really modelled as different kinds of runtime, paving the way for better overall differentiation. As a sort of special case, continue to accept the -cc1 flag -fobjc-runtime-has-weak, as a sop to PLCompatibilityWeak. I won't go so far as to say "no functionality change", even ignoring the new driver flag, but subtle changes in driver semantics are almost certainly not intended. llvm-svn: 158793
* Revert predefined decl tracking.Meador Inge2012-06-191-1/+0
| | | | | | | | | | r158085 added some logic to track predefined declarations. The main reason we had predefined declarations in the input was because the __builtin_va_list declarations were injected into the preprocessor input. As of r158592 we explicitly build the __builtin_va_list declarations. Therefore the predefined decl tracking is no longer needed. llvm-svn: 158732
* Fix the location of the fixit for -Wnewline-eof.Jordan Rose2012-06-191-2/+3
| | | | | | | It turns out SourceManager treating the "one-past-the-end" location as invalid, but then failing to set the invalid flag properly. llvm-svn: 158699
* Documentation cleanup: escaped # characters in Doxygen comments.James Dennett2012-06-171-3/+3
| | | | llvm-svn: 158614
* clang/lib/Basic/FileManager.cpp: Detect the root directory with PathV2. It ↵NAKAMURA Takumi2012-06-161-2/+4
| | | | | | should be better fix for PR10331, or, "clang X:\foo.c" fails. llvm-svn: 158596
* Explicitly build __builtin_va_list.Meador Inge2012-06-161-42/+30
| | | | | | | The target specific __builtin_va_list types are now explicitly built instead of injecting strings into the preprocessor input. llvm-svn: 158592
* Documentation cleanup: delete doc comments from source files where they areJames Dennett2012-06-152-13/+0
| | | | | | broken duplicates of comments that are in the corresponding header files. llvm-svn: 158550
* Documentation cleanup: escape # in a Doxygen comment.James Dennett2012-06-151-1/+1
| | | | llvm-svn: 158549
* Documentation cleanup: escape @ in a Doxygen comment.James Dennett2012-06-151-2/+2
| | | | llvm-svn: 158548
* Add PPC support for translating gcc-style -mcpu options into LLVM ↵Hal Finkel2012-06-111-0/+49
| | | | | | | | | | | | | | -target-cpu options. This functionality is based on what is done on ARM, and enables selecting PPC CPUs in a way compatible with gcc's driver. Also, mirroring gcc (and what is done on x86), -mcpu=native support was added. This uses the host cpu detection from LLVM (which will also soon be updated by refactoring code currently in backend). In order for this to work, the target needs a list of valid CPUs -- we now accept all CPUs accepted by LLVM. A few preprocessor defines for common CPU types have been added. llvm-svn: 158334
* Add XOP feature flag.Craig Topper2012-06-091-8/+28
| | | | llvm-svn: 158284
* Switch LineTableInfo to use FileID instead of int for file references,Douglas Gregor2012-06-081-8/+8
| | | | | | from Tom Honermann! llvm-svn: 158211
* Add pedantic warning -Wempty-translation-unit (C11 6.9p1).Jordan Rose2012-06-061-0/+1
| | | | | | | | | | | | | | | | | | | In standard C since C89, a 'translation-unit' is syntactically defined to have at least one "external-declaration", which is either a decl or a function definition. In Clang the latter gives us a declaration as well. The tricky bit about this warning is that our predefines can contain external declarations (__builtin_va_list and the 128-bit integer types). Therefore our AST parser now makes sure we have at least one declaration that doesn't come from the predefines buffer. Also, remove bogus warning about empty source files. This doesn't catch source files that only contain comments, and never fired anyway because of our predefines. PR12665 and <rdar://problem/9165548> llvm-svn: 158085
* Mips: Define __mips_hard_float macro additional to __mips_single_floatSimon Atanasyan2012-06-051-6/+7
| | | | | | when single float ABI is selected. llvm-svn: 157996
* Make disabling SSE levels also disable AVX and FMA.Craig Topper2012-06-031-6/+13
| | | | llvm-svn: 157907
* Make AES and PCLMUL features imply SSE2 as that's needed to get the right ↵Craig Topper2012-06-031-3/+4
| | | | | | types defined. llvm-svn: 157906
* Add fma feature flag for Intel FMA instructions.Craig Topper2012-06-031-2/+21
| | | | llvm-svn: 157904
* Add builtin for pclmulqdq instruction.Craig Topper2012-05-311-4/+22
| | | | llvm-svn: 157733
* SSE4A should not imply LZCNT and POPCNT. FMA4 should imply SSE4A. Add ↵Craig Topper2012-05-301-3/+5
| | | | | | missing break at the end of btver1 feature list. llvm-svn: 157680
* Define __SSE4A__ when targeting new AMD CPUs.Benjamin Kramer2012-05-291-1/+11
| | | | | | This doesn't really fit the existing SSELevel so it gets an extra flag. llvm-svn: 157630
* Sparc is bigendian.Roman Divacky2012-05-291-1/+0
| | | | llvm-svn: 157626
* Only emit one set of braces for __VERSION__, getClangFullRepositoryVersion ↵Benjamin Kramer2012-05-261-2/+1
| | | | | | | | already adds some. No test as the output is highly dependend on the local configuration. llvm-svn: 157520
* Replace PTX back-end with NVPTX back-end in all places where Clang caresJustin Holewinski2012-05-241-140/+30
| | | | | | NV_CONTRIB llvm-svn: 157403
* Teach Clang about the NVPTX backend.Peter Collingbourne2012-05-201-0/+98
| | | | llvm-svn: 157173
* CUDA: add CodeGen support for global variable address spaces.Peter Collingbourne2012-05-201-2/+8
| | | | | | | | | Because in CUDA types do not have associated address spaces, globals are declared in their "native" address space, and accessed by bitcasting the pointer to address space 0. This relies on address space 0 being a unified address space. llvm-svn: 157167
* Hexagon V5 FP support.Sirish Pande2012-05-101-2/+11
| | | | llvm-svn: 156567
* Synchronize the representations of DeclarationName and Selector soDouglas Gregor2012-05-041-9/+9
| | | | | | | | that bridging between the two is free. Saves ~4k of code size, although I don't see any measurable performance difference (unfortunately). llvm-svn: 156187
* [PCH] When validating that the files coming from PCH did not change, alsoArgyrios Kyrtzidis2012-05-032-14/+43
| | | | | | | | | | | validate that we didn't override the contents of any of such files. If this is detected, emit a diagnostic error and recover gracefully by using the contents of the original file that the PCH was built from. Part of rdar://11305263 llvm-svn: 156107
* Enable AVX on AMD Bulldozer processors.Craig Topper2012-05-011-1/+1
| | | | llvm-svn: 155900
* Define __ANDROID__ macro on -androideabi targets.Evgeniy Stepanov2012-04-261-0/+2
| | | | llvm-svn: 155632
* Enable AVX/AVX2 for Sandy Bridge, Ivy Bridge, and Haswell CPUs.Craig Topper2012-04-261-4/+2
| | | | llvm-svn: 155624
OpenPOWER on IntegriCloud