summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
Commit message (Collapse)AuthorAgeFilesLines
* Add support for a chain of stat caches in the FileManager, rather thanDouglas Gregor2009-10-161-2/+37
| | | | | | | | | only supporting a single stat cache. The immediate benefit of this change is that we can now generate a PCH/AST file when including another PCH file; in the future, the chain of stat caches will likely be useful with multiple levels of PCH files. llvm-svn: 84263
* increase helpfulness of assert message.Chris Lattner2009-10-161-1/+6
| | | | llvm-svn: 84240
* Disallow arbitrary custom inline asm constraints for msp430.Anton Korobeynikov2009-10-151-2/+2
| | | | llvm-svn: 84219
* fix some cfstring related issues: Chris Lattner2009-10-141-4/+0
| | | | | | | | | | | | | 1) -fwritable-string does affect the non-utf16 version of cfstrings just not the utf16 ones. 2) utf16 strings should always be marked constant, as the __TEXT segment is readonly. 3) The name of the global doesn't matter, remove it from TargetInfo. 4) Trust the asmprinter to drop cstrings into the right section, like llvmgcc does now. This fixes rdar://7115750 llvm-svn: 84077
* Unify our diagnostic printing for errors of the form, "we didn't likeDouglas Gregor2009-10-131-0/+1
| | | | | | | | | | what we found when we looked into <blah>", where <blah> is a DeclContext*. We can now format DeclContext*'s in nice ways, e.g., "namespace N", "the global namespace", "'class Foo'". This is part of PR3990, but we're not quite there yet. llvm-svn: 84028
* fix PR4938 by recognizing % as a modifier on outputs,Chris Lattner2009-10-131-0/+3
| | | | | | previously we only recognized it on inputs. llvm-svn: 83939
* "Someone pointed out that in my previous Targets.cpp patch I didn'tMike Stump2009-10-081-0/+1
| | | | | | | handle the long size difference for one of the Windows targets." Patch by John Thompson. llvm-svn: 83592
* Installation of Clang libraries and headers, from Axel Naumann!Douglas Gregor2009-10-081-3/+0
| | | | llvm-svn: 83582
* Provide a common set of routines in Version.h that return SubversionDouglas Gregor2009-10-053-16/+24
| | | | | | | branch/revision information. Use that information in the driver, rather than one-off branch/revision computation. llvm-svn: 83321
* Pre-commit commit to get URL keyword expansion for Clang version informationDouglas Gregor2009-10-051-0/+63
| | | | llvm-svn: 83319
* Handle Eli remark on mingw __declspec macro definitionCedric Venet2009-09-271-1/+1
| | | | llvm-svn: 82894
* Factor Windows target into VS, MinGW and Cygwin variants.Daniel Dunbar2009-09-231-11/+128
| | | | | | - Patch by John Thompson! llvm-svn: 82621
* implement support for __builtin_eh_return_data_regno on x86-32 and x86-64.Chris Lattner2009-09-231-0/+12
| | | | | | This implements PR5034 and rdar://6836445. llvm-svn: 82614
* Reconcile Clang/ARM target data string with llvm-gcc (module eabi weirdness).Daniel Dunbar2009-09-221-3/+20
| | | | llvm-svn: 82578
* Replace the -code-completion-dump option with Douglas Gregor2009-09-221-2/+79
| | | | | | | | | | | -code-completion-at=filename:line:column which performs code completion at the specified location by truncating the file at that position and enabling code completion. This approach makes it possible to run multiple tests from a single test file, and gives a more natural command-line interface. llvm-svn: 82571
* don't stick an uninitialized 'stat' buf into the stat cache, fill itChris Lattner2009-09-181-0/+1
| | | | | | with zeros. This avoids a GCC warning (PR5000) llvm-svn: 82194
* Initial implementation of a code-completion interface in Clang. InDouglas Gregor2009-09-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | essence, code completion is triggered by a magic "code completion" token produced by the lexer [*], which the parser recognizes at certain points in the grammar. The parser then calls into the Action object with the appropriate CodeCompletionXXX action. Sema implements the CodeCompletionXXX callbacks by performing minimal translation, then forwarding them to a CodeCompletionConsumer subclass, which uses the results of semantic analysis to provide code-completion results. At present, only a single, "printing" code completion consumer is available, for regression testing and debugging. However, the design is meant to permit other code-completion consumers. This initial commit contains two code-completion actions: one for member access, e.g., "x." or "p->", and one for nested-name-specifiers, e.g., "std::". More code-completion actions will follow, along with improved gathering of code-completion results for the various contexts. [*] In the current -code-completion-dump testing/debugging mode, the file is truncated at the completion point and EOF is translated into "code completion". llvm-svn: 82166
* Fix typo.Mike Stump2009-09-171-1/+1
| | | | llvm-svn: 82164
* ARM: Incremental improvement to preprocessor defines.Daniel Dunbar2009-09-171-13/+38
| | | | | | - Based on patch by Shantonu. llvm-svn: 82147
* Add ARM register names and aliases.Daniel Dunbar2009-09-171-75/+107
| | | | | | | | - Patch by Shantonu Sen! <rdar://problem/6922650> clang doesn't know about ARM registers for inline asm clobber lists llvm-svn: 82132
* fix some ppc register name issues, patch by Richard Pennington!Chris Lattner2009-09-161-45/+78
| | | | llvm-svn: 82009
* Add TargetInfo::getABI(), and base ARM APCS vs AAPCS choice on that.Daniel Dunbar2009-09-141-1/+9
| | | | llvm-svn: 81735
* ARM target tweaks.Daniel Dunbar2009-09-141-2/+24
| | | | | | | - Change TargetData string to match llvm-gcc. - Some -target-abi support for 'apcs-gnu', most importantly the alignment of double and long long changes. llvm-svn: 81732
* Swizzle the target triple based on -mthumb, and update clang-cc to recognizeDaniel Dunbar2009-09-111-0/+1
| | | | | | thumb-foo-bar as an ARM target. llvm-svn: 81497
* Remove tabs, and whitespace cleanups.Mike Stump2009-09-099-583/+582
| | | | llvm-svn: 81346
* Replace some instances of std::string with StringRefs.Benjamin Kramer2009-09-051-0/+3
| | | | llvm-svn: 81079
* Add basic support for -pthread.Daniel Dunbar2009-09-031-0/+9
| | | | | | - Patch by David Chisnall, with PCH and Darwin support mixed in. llvm-svn: 80883
* Improve diagnostics and recovery when the nested-name-specifier of aDouglas Gregor2009-08-261-0/+1
| | | | | | | | | | | | qualified name does not actually refer into a class/class template/class template partial specialization. Improve printing of nested-name-specifiers to eliminate redudant qualifiers. Also, make it possible to output a nested-name-specifier through a DiagnosticBuilder, although there are relatively few places that will use this leeway. llvm-svn: 80056
* Remove TargetInfo::getTargetPrefix().Daniel Dunbar2009-08-241-27/+9
| | | | llvm-svn: 79907
* Switch TargetInfo to store an llvm::Triple.Daniel Dunbar2009-08-241-27/+27
| | | | | | - Primarily to discourage clients form making decisions based on the string. llvm-svn: 79901
* API changes to match llvm ToT.Chris Lattner2009-08-232-0/+2
| | | | llvm-svn: 79868
* Replace cerr with errs().Benjamin Kramer2009-08-232-23/+20
| | | | llvm-svn: 79854
* Don't install Clang libraries.Douglas Gregor2009-08-231-0/+3
| | | | llvm-svn: 79824
* Issue an error if the user specifies parameters in a function marked as ISR.Sanjiv Gupta2009-08-201-2/+7
| | | | llvm-svn: 79544
* Add TCE target to clang; patch by Mikael Lepistö.Eli Friedman2009-08-191-0/+67
| | | | llvm-svn: 79462
* Switch to SmallString::str from SmallString::c_str.Daniel Dunbar2009-08-191-6/+7
| | | | | | - Several FIXMEs due to non-Twinification of IRBuilder. llvm-svn: 79455
* Convert CreateTargetInfo to use a Triple instead of manul string munging.Daniel Dunbar2009-08-181-72/+66
| | | | | | - Patch by Yonggang Luo (with some formatting tweaks by Eli and myself). llvm-svn: 79320
* Support compilation for the blackfin back-endJakob Stoklund Olesen2009-08-171-0/+81
| | | | llvm-svn: 79271
* improve path handling, patch by Baptiste Lepilleur!Chris Lattner2009-08-121-0/+3
| | | | llvm-svn: 78824
* use the new llvm::Triple parsing stuffola for handling darwin version #'s.Chris Lattner2009-08-121-93/+47
| | | | llvm-svn: 78794
* fix a couple of problems with section attributes:Chris Lattner2009-08-101-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Passing something that isn't a string used to cause: "argument to annotate attribute was not a string literal" make it say "section attribute" instead. 2. Fix the location of the above message to point to the bad argument instead of the section token. 3. Implement rdar://4341926, by diagnosing invalid section specifiers in the frontend rather than letting them slip all the way to the assembler (a QoI win). An example of #3 is that we used to produce something like this: /var/folders/n7/n7Yno9ihEm894640nJdSQU+++TI/-Tmp-//ccFPFGtT.s:2:Expected comma after segment-name /var/folders/n7/n7Yno9ihEm894640nJdSQU+++TI/-Tmp-//ccFPFGtT.s:2:Rest of line ignored. 1st junk character valued 46 (.). Daniel improved clang to use llvm_report_error, so now we got: $ clang t.c -c fatal error: error in backend: Global variable 'x' has an invalid section specifier 'sadf': mach-o section specifier requires a segment and section separated by a comma. with no loc info. Now we get: $ clang t.c -fsyntax-only t.c:4:30: error: argument to 'section' attribute is not valid for this target: mach-o section specifier requires a segment and section separated by a comma int x __attribute__((section("sadf"))); ^ which is nice :) llvm-svn: 78586
* Add armv7 support.Mike Stump2009-08-041-2/+8
| | | | llvm-svn: 78092
* Hook in s390x stuff into clangAnton Korobeynikov2009-07-161-0/+69
| | | | llvm-svn: 76099
* codegen string literals using private linkage now like llvm-gcc, eliminatingChris Lattner2009-07-161-8/+0
| | | | | | some target hooks. llvm-svn: 75895
* Basic support for C++0x unicode types. Support for literals will follow in ↵Alisdair Meredith2009-07-141-0/+4
| | | | | | an incremental patch llvm-svn: 75622
* add netbsd support, patch by Krister Kalfridsson!Chris Lattner2009-07-131-0/+23
| | | | llvm-svn: 75492
* add push/pop semantics for diagnostics. Patch by Louis Gerbarg!Chris Lattner2009-07-121-1/+16
| | | | llvm-svn: 75431
* Correct FreeBSD target info, fixing PR4514.Duncan Sands2009-07-081-1/+3
| | | | | | Patch by Roman Divacky. llvm-svn: 75003
* pic16 preproc defs.Sanjiv Gupta2009-07-071-0/+5
| | | | llvm-svn: 74893
* More tweaks to types for OpenBSD. Patch by Jonathan Gray.Eli Friedman2009-07-051-1/+14
| | | | llvm-svn: 74805
OpenPOWER on IntegriCloud