summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* Per PR4506, fix the type of size_t on OpenBSD.Eli Friedman2009-07-051-1/+12
| | | | llvm-svn: 74795
* Add an intermediate typedef for __builtin_va_tag to make it a bit easier Eli Friedman2009-07-031-1/+2
| | | | | | | to deal with for AST pretty-printing/rewriting. Patch by Abramo Bagnara. llvm-svn: 74752
* Two fixes to make Clang build on Visual C++ (again), from Alisdair Meredith.Douglas Gregor2009-07-011-5/+5
| | | | llvm-svn: 74606
* Fix for PR4192: fix the definition of int64_t on x86_64 Linux.Eli Friedman2009-07-012-2/+16
| | | | | | | | | | | | | Note that I'm guessing that *BSD and Solaris do the same thing as Linux here, but it's quite possible I'm wrong; if the following testcase gives an error on x86-64 with gcc for any of those operating systems, please tell me: #include <stdint.h> int64_t x; long x; llvm-svn: 74583
* Reapply r74532, and inherit from OSTargetInfo instead of from Target.Torok Edwin2009-06-301-353/+183
| | | | | | 'make test' passes now. llvm-svn: 74539
* Revert 74532 till I figure out why it breaks a bunch of tests.Torok Edwin2009-06-301-183/+353
| | | | llvm-svn: 74536
* Use templates instead of creating a new class for each OS/Target combination.Torok Edwin2009-06-301-353/+183
| | | | | | | | This unifies all the targets supported by an OS into a template. It also cleans up the differences between the darwin targets. Also __LP64__ wasn't needed for *BSD, since x86-64 target defines it anyway. llvm-svn: 74532
* Key decisions about 'bool' vs '_Bool' to be based on a new flag in langoptions.Chris Lattner2009-06-301-1/+1
| | | | | | | | | | | | This is simple enough, but then I thought it would be nice to make PrintingPolicy get a LangOptions so that various things can key off "bool" and "C++" independently. This spiraled out of control. There are many fixme's, but I think things are slightly better than they were before. One thing that can be improved: CFG should probably have an ASTContext pointer in it, which would simplify its clients. llvm-svn: 74493
* Use true/false instead of 1/0.Daniel Dunbar2009-06-291-4/+4
| | | | llvm-svn: 74479
* Don't define __KPRINTF_ATTRIBUTE__ unconditionally on OpenBSD.Daniel Dunbar2009-06-291-1/+0
| | | | llvm-svn: 74467
* OpenBSD support.Daniel Dunbar2009-06-291-0/+46
| | | | | | - Patch by Jonathan Gray! llvm-svn: 74453
* Make the StackProtector bitfield use enums instead of obscure numbers.Bill Wendling2009-06-281-1/+1
| | | | llvm-svn: 74414
* Add stack protector support to clang. This generates the 'ssp' and 'sspreq'Bill Wendling2009-06-281-3/+6
| | | | | | | | function attributes. There are predefined macros that are defined when stack protectors are used: __SSP__=1 with -fstack-protector and __SSP_ALL__=2 with -fstack-protector-all. llvm-svn: 74405
* OpenCL 1.0 Support: support "bool, true, false" tokens when compiling for OpenCLNate Begeman2009-06-251-1/+3
| | | | llvm-svn: 74224
* Fix column checking for SourceManager::getLocation().Argyrios Kyrtzidis2009-06-251-1/+1
| | | | llvm-svn: 74194
* fix the type of wchar_t for windows, PR4417Chris Lattner2009-06-241-1/+1
| | | | llvm-svn: 74083
* Fix warning when building w/o asserts.Daniel Dunbar2009-06-231-0/+1
| | | | llvm-svn: 74020
* Introduce SourceManager::ísBeforeInTranslationUnit() which can compare 2 ↵Argyrios Kyrtzidis2009-06-231-0/+100
| | | | | | source locations and determine which one comes before the other, relative to the translation unit. llvm-svn: 74014
* __APPLE_CC__ should only be set when building for darwin targets.Chris Lattner2009-06-231-0/+1
| | | | llvm-svn: 73934
* In SourceManager::createFileID missed setting ContentCache's FirstFID in ↵Argyrios Kyrtzidis2009-06-231-1/+4
| | | | | | another place. llvm-svn: 73931
* Slight modification to column checking inside SourceManager::getLocation().Argyrios Kyrtzidis2009-06-201-6/+6
| | | | llvm-svn: 73826
* Introduce SourceManager::getLocation() to get a source location out of a ↵Argyrios Kyrtzidis2009-06-201-1/+41
| | | | | | "file:line:column" triplet. llvm-svn: 73823
* follow-on to my patch: some targets (like sparc) do notChris Lattner2009-06-161-0/+2
| | | | | | | have target-specific builtins, and do not set the count. Just default to 0 for these targets. llvm-svn: 73510
* my refactoring of builtins changed target-specific builtins to only beChris Lattner2009-06-161-4/+5
| | | | | | | | | registered when PCH wasn't being used. We should always install (in BuiltinInfo) information about target-specific builtins, but we shouldn't register any builtin identifier infos. This fixes the build of apps that use PCH and target specific builtins together. llvm-svn: 73492
* Base SFINAE error suppression counting on the class of an error, notDouglas Gregor2009-06-151-1/+1
| | | | | | its (possibly-remapped) diagnostics. Thanks, Chris! llvm-svn: 73390
* Update LLVM.Douglas Gregor2009-06-141-8/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | Implement support for C++ Substitution Failure Is Not An Error (SFINAE), which says that errors that occur during template argument deduction do *not* produce diagnostics and do not necessarily make a program ill-formed. Instead, template argument deduction silently fails. This is currently implemented for template argument deduction during matching of class template partial specializations, although the mechanism will also apply to template argument deduction for function templates. The scheme is simple: - If we are in a template argument deduction context, any diagnostic that is considered a SFINAE error (or warning) will be suppressed. The error will be propagated up the call stack via the normal means. - By default, all warnings and errors are SFINAE errors. Add the NoSFINAE class to a diagnostic in the .td file to make it a hard error (e.g., for access-control violations). Note that, to make this fully work, every place in Sema that emits an error *and then immediately recovers* will need to check Sema::isSFINAEContext() to determine whether it must immediately return an error rather than recovering. llvm-svn: 73332
* Sink the BuiltinInfo object from ASTContext into theChris Lattner2009-06-141-6/+4
| | | | | | | | preprocessor and initialize it early in clang-cc. This ensures that __has_builtin works in all modes, not just when ASTContext is around. llvm-svn: 73319
* move the various builtins stuff from libast to libbasic. ThisChris Lattner2009-06-143-5/+99
| | | | | | fixes a layering violation in lib/Basic/Targets.cpp. llvm-svn: 73318
* Add stack alignment to x86_64 target data.Daniel Dunbar2009-06-081-1/+1
| | | | | | | - <rdar://problem/6948443> WARNING: Linking two modules of different data layouts! llvm-svn: 73093
* Minor tweaks to the Windows target.Eli Friedman2009-06-081-0/+4
| | | | llvm-svn: 73083
* PR4346: add "R" asm register constraint.Eli Friedman2009-06-081-0/+1
| | | | llvm-svn: 73081
* Misc minor fixes for clang for the Windows target.Eli Friedman2009-06-081-3/+12
| | | | llvm-svn: 73050
* Remove dead code: 'NewEntry' is not used.Zhongxing Xu2009-06-071-3/+0
| | | | llvm-svn: 73027
* Move CharIsSigned from TargetInfo to LangOptions.Eli Friedman2009-06-052-4/+9
| | | | llvm-svn: 72928
* Move a couple Darwin-specific defines into getDarwinDefines.Eli Friedman2009-06-041-0/+5
| | | | llvm-svn: 72900
* Back out r72764; I should have looked more carefully before committing Eli Friedman2009-06-031-7/+0
| | | | | | this. The correct replacement for "Y" and "Yt" is "x". llvm-svn: 72765
* PR3678: Add support for "Yt" asm register constraint.Eli Friedman2009-06-031-0/+7
| | | | llvm-svn: 72764
* Add floating point details to PIC16 Target.Sanjiv Gupta2009-06-021-1/+11
| | | | llvm-svn: 72713
* Add a couple missing ARM defines.Eli Friedman2009-05-291-0/+2
| | | | llvm-svn: 72583
* A few more tweaks for Solaris; please correct me if it's wrong somehow.Eli Friedman2009-05-221-7/+10
| | | | llvm-svn: 72240
* Improve target support for Solaris.Douglas Gregor2009-05-211-4/+42
| | | | llvm-svn: 72237
* Avoid potential out-of-bounds access in SourceManager::getLineNumber.Daniel Dunbar2009-05-181-1/+13
| | | | | | - Chris, please see added FIXMEs. llvm-svn: 72019
* Targets without long long should reduce the size of intmax_t Eli Friedman2009-05-161-0/+2
| | | | | | accordingly. llvm-svn: 71966
OpenPOWER on IntegriCloud