aboutsummaryrefslogtreecommitdiff
path: root/lib/Basic
AgeCommit message (Collapse)Author
2010-01-20Actually remove the include that r93974 made unnecessary.Chandler Carruth
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93975 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14long long is 64 bits on msp430Anton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93451 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14Pre-emptive bugfixes in the diagnostics code: allow arbitrary punctuationJohn McCall
characters to be escaped and implement a scan-forward function which properly respects brace nesting. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93447 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14Add the %ordinal format modifier for turning '1' into '1st'. Hard-coded forJohn McCall
English right now; would not be impossible to grab a special format string from the diagnostic pool and localize that way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93390 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-13Perform format-expansion on %select results.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93377 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-13Predefine __weak attribute when doing objective-cFariborz Jahanian
rewriting for any target. (refixes radar 7530235). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93331 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-12Define __weak attribute for objective-c pointers inFariborz Jahanian
win32 targets. Fixes radar 7530235. Daniel please review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93246 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-09Hopefully unbreak build with g++ >= 4.3.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93060 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-09Use MacroBuilder for TargetDefines instead of std::vector.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93058 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-09improve support for dragonfly, patch by Sascha Wildner!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93044 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-23move a few more symbols to .rodata/.data.rel.roNuno Lopes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92012 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-22implement -W[no-]fatal-errors, patch by Christian Adåker!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91938 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-22ARM: Remove a FIXME, it's not actually more complicated than that.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91924 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-21ARM: Honor -mfpu= and set __VFP_FP__ and __ARM_NEON__ "correctly".Daniel Dunbar
- Correctly is in quotes, because we are following what I interpreted as GCC's intent (which diverges from practice, naturally). - Also, fix the arch define for arm1136jf-s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91855 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-19ARM: Use front-end specific target features "soft-float" and ↵Daniel Dunbar
"soft-float-abi" to communicate FP mode to target; __SOFTFP__ is set correctly now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91755 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-19Targets: Allow CreateTargetInfo to mutate the target features.Daniel Dunbar
- In particular, it can claim features for itself instead of always passing them on to LLVM. - This allows using the target features as a generic mechanism for passing target specific options to the TargetInfo instance, which may need them for initializing preprocessor defines, etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91753 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-19Add f80 entry for windows targetsAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91746 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-19Use proper alignment for i16/i32 on msp430. This fixes PR5815.Anton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91739 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18ARM: Define __thumb2__ for V6T2 targets and only defineDaniel Dunbar
__USING_SJLJ_EXCEPTIONS__ on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91705 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18ARM: Fix predefines (__ARM_ARCH_..., __REGISTER_PREFIX).Daniel Dunbar
- This should be done leveraging the backend, but I'm a little refactored out. I'll fix it one day, I promise. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91700 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Tweaks for PS3 target.John Thompson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91685 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Removing trailing directory separator, to make stat workJohn Thompson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91684 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16fix PR5689: add support for 'o' and 'V' asm input operandsNuno Lopes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91540 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-11FileManager: Do not cache failed stats, it is easy to construct commonDaniel Dunbar
inconsistent situations if we do, and they are not important for PCH performance (which currently only needs the stats to construct the initial FileManager entries). - No test case, sorry, the machinations are too involved. This occurs when, for example, the build makes a PCH file and has a header map or a -I for a directory that does not yet exist. It is possible we will cache the negative stat on that directory, and then in the build we will never find header files inside that dir. For PCH we don't need these stats anyway for performance, so this also makes PCH files smaller w/ no loss. I hope to eventually eliminate the stat cache entirely. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91082 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-06Add a pretty horrible hack to prevent clang from crashing with inconsistent PCHDaniel Dunbar
files. - The issue is that PCH uses a stat cache, which may reference files which have been deleted or moved. In such cases ContentCache::getBuffer was returning 0 but most clients are incapable of dealing with this (i.e., they don't). For the time being, resolve this issue by just making up some invalid file contents and. Eventually we should detect that we are in an inconsistent situation and error out with a nice message that the PCH is out of date. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90699 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-05Remove 'LangOpts' from Diagnostic (added in ↵Steve Naroff
http://llvm.org/viewvc/llvm-project?view=rev&revision=90642). Simply use the 'LangOpts' member already present in TextDiagnosticPrinter. Sorry for the confusion! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90664 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-05Integrate the following from the 'objective-rewrite' branch:Steve Naroff
http://llvm.org/viewvc/llvm-project?view=rev&revision=71086 Note - This commit only includes the fix for: <rdar://problem/6309338> slightly different error message format for Visual Studio. The fix for <rdar://problem/6845623> from protocol to template. is separate/forthcoming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90642 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-03Minor cleanup to the code-completion-point logic suggested by Chris.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90459 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-02Extend -remap-file=from;to to permit mapping from a non-existentDouglas Gregor
file. This is accomplished by introducing the notion of a "virtual" file into the file manager, which provides a FileEntry* for a named file whose size and modification time are known but which may not exist on disk. Added a cute little test that remaps both a .c file and a .h file it includes to alternative files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90329 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-02Extend the source manager with the ability to override the contents ofDouglas Gregor
files with the contents of an arbitrary memory buffer. Use this new functionality to drastically clean up the way in which we handle file truncation for code-completion: all of the truncation/completion logic is now encapsulated in the preprocessor where it belongs (<rdar://problem/7434737>). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90300 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-02Eliminate the unnecessary FirstFID cache variable from the source manager's ↵Douglas Gregor
ContentCache git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90294 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-01In SourceManager::isBeforeInTranslationUnit, if we are trying to compare two ↵Daniel Dunbar
source locations with no common ancestor in the include stack, determine order by assuming memory buffers preceed files, and then that FileIDs are created in order. The later assumption is patently false, but this was already broken -- this situation is conceptually impossible, my feeling is we should fix SourceManager and friends to make it impossible in practice as well. However, we need to fix PR5662 and perhaps some other things involving memory buffers first. In the short term I'm pretty sure this is reliable. Chris, Argiris, is this going to break anything that wasn't already broken? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90280 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-01pass the reason for failure up from MemoryBuffer and report itChris Lattner
in diagnostics when we fail to open a file. This allows us to report things like: $ clang test.c -I. test.c:2:10: fatal error: error opening file './foo.h': Permission denied #include "foo.h" ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90276 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-01Convert Diagnostic::getCustomDiagID to take a StringRef.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90244 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-28This patch adds a PUNCTUATOR macro (specialization of TOK) in TokenKinds.def ↵Kovarththanan Rajaratnam
and makes use of it in tok::getTokenSimpleSpelling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90042 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-21Add SigAtomicType to TargetInfo, Needed for MSP and PIC Targets, Credit to ↵Edward O'Callaghan
Ken Dyck. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89520 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19Added preliminary support step for PS3John Thompson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89362 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Eliminate TargetInfo::getDefaultLangOptions, this kind of logic is better doneDaniel Dunbar
in the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Move -fnext-runtime defaulting to driver (and change clang-cc default toDaniel Dunbar
-fnext-runtime), instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89058 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Move -fms-extensions defaulting to driver, instead of using ↵Daniel Dunbar
getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89057 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Move char-is-signed defaulting to driver, instead of usingDaniel Dunbar
getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89053 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Add MIPS support to Triple for Linux and the PSP. Credit to Bruno Cardoso Lopes.Edward O'Callaghan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88850 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Add TargetOptions and use it when constructing targets.Daniel Dunbar
- This ended up being hard to factor, sorry for the large diff. - Some post-commit cleanup to come. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88833 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-14Move DISABLE_INLINE to the front of the decl so MSVC can parse it. Patch by ↵Benjamin Kramer
Amine Khaldi! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88797 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-12do not store wchar/char16/char32/intmax width/alignment infoChris Lattner
into TargetInfo, just derive this based on the underlying type. This prevents them from getting out of synch, patch by Ken Dyck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86976 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-11Simplifiy target feature handling by coalescing all the logic intoDaniel Dunbar
InitializeCompileOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86826 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-07teach the various targets what native integer types they have.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86395 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-05Strip off the /clang/tools/clang at the end of the Subversion URL, if it's thereDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86195 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-05Eliminate tablsJohn Thompson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86183 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-05clean up integer preprocessor type definitions, patch by Ken Dyck!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86177 91177308-0d34-0410-b5e6-96231b3b80d8