ef8225444452a1486bd721f3285301fe84643b00 |
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
uiltins.cpp
iagnostic.cpp
iagnosticIDs.cpp
ileManager.cpp
ileSystemStatCache.cpp
penMPKinds.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
ersion.cpp
irtualFileSystem.cpp
arnings.cpp
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
ndroid.mk
uiltins.cpp
MakeLists.txt
iagnostic.cpp
iagnosticIDs.cpp
ileManager.cpp
ileSystemStatCache.cpp
dentifierTable.cpp
odule.cpp
penMPKinds.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
irtualFileSystem.cpp
arnings.cpp
|
651f13cea278ec967336033dd032faef0e9fc2ec |
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
ndroid.mk
ttributes.cpp
uiltins.cpp
MakeLists.txt
iagnostic.cpp
iagnosticIDs.cpp
ileManager.cpp
ileSystemStatCache.cpp
dentifierTable.cpp
odule.cpp
penMPKinds.cpp
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
ersion.cpp
irtualFileSystem.cpp
|
1fab7c3e3bd97a909a80b1bfea1909c6e7347fc0 |
12-Feb-2014 |
Stephen Hines <srhines@google.com> |
Merge remote-tracking branch 'upstream/release_34' into merge-20140211 Conflicts: lib/Basic/Targets.cpp lib/Sema/SemaDeclAttr.cpp Change-Id: I17ca7161f32007272ee82036d237d051847dd02e
|
dd6669dbb872a69a42a0d8fd77cd48a971cabcc9 |
09-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r196724: ------------------------------------------------------------------------ r196724 | tnorthover | 2013-12-08 07:24:55 -0800 (Sun, 08 Dec 2013) | 5 lines ARM: teach Sema that "r" can match 64-bit values We already support using "r" on 64-bit values (a GPRPair is allocated), but Sema doesn't know this yet so issues a warning. This should fix it. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@196746 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5fc0070c015443745ea4705765d4332079a0f95e |
03-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r196115: ------------------------------------------------------------------------ r196115 | joerg | 2013-12-02 08:12:05 -0800 (Mon, 02 Dec 2013) | 2 lines Assume ARMv6 for NetBSD for now for strex/ldrex. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@196202 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
85ad3893a967faf9c76571d0991acab7c9c6bf06 |
02-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r196114: ------------------------------------------------------------------------ r196114 | joerg | 2013-12-02 08:09:34 -0800 (Mon, 02 Dec 2013) | 2 lines NetBSD uses long derived size_t / ssize_t in all ARM ABIs. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@196134 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
604470b7431605cd798a8e20220b730efaf3a7c5 |
01-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r195970: ------------------------------------------------------------------------ r195970 | joerg | 2013-11-29 16:38:16 -0800 (Fri, 29 Nov 2013) | 2 lines NetBSD uses signed wchar_t on ARM platforms. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@196009 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
287d8b32ee7ee0e65674c433c9fe3bbcf1aa834c |
20-Nov-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r195149: ------------------------------------------------------------------------ r195149 | grosbach | 2013-11-19 12:18:39 -0800 (Tue, 19 Nov 2013) | 6 lines ARM: embedded v7 'darwin' doesn't get min-version defines. Make sure armv7 doesn't get the iOS deployment version definitions when it's being used for non-iOS. rdar://15497681 ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195225 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
769187a95a608f5aafdf438a67f335324a7b155e |
19-Nov-2013 |
Jiangning Liu <jiangning.liu@arm.com> |
Clean up predefined macros for AArch64 to follow ACLE 2.0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195068 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fb21ecfa483bc679d06e8a21d154684bd5183637 |
18-Nov-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Adding an assert to help catch possible buffer underruns. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195024 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0de6bc8ea32e2813aac5f98c348ce735a5bdca08 |
15-Nov-2013 |
Tom Stellard <thomas.stellard@amd.com> |
R600: Add processor type for Hawaii git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194751 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f2941ec5bfcce36feffac514582d168b4e0ef811 |
13-Nov-2013 |
Reid Kleckner <reid@kleckner.net> |
Only provide MS builtins when -fms-extensions is on We already have builtins that are only available in GNU mode, so this mirrors that. Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D2128 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194615 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
838f9337a1af51fb02cfe0abeccba5069619cb05 |
12-Nov-2013 |
Daniel Sanders <daniel.sanders@imgtec.com> |
[mips][msa] Enable inlinse assembly for MSA. Like GCC, this re-uses the 'f' constraint and a new 'w' print-modifier: asm ("ldi.w %w0, 1", "=f"(result)); Unlike GCC, the 'w' print-modifer is not _required_ to produce the intended output. This is a consequence of differences in the internal handling of the registers in each compiler. To be source-compatible between the compilers, users must use the 'w' print-modifier. MSA registers (including control registers) are supported in clobber lists. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194476 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1816219b01c744b2500a917348fc5df4447d6849 |
12-Nov-2013 |
Robert Lytton <robert@xmos.com> |
XCore target Type defines. Change SizeType, PtrDiffType, IntPtrType, WCharType, WIntType to follow the XMOS llvm-gcc front end's settings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194461 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2a7ff77d54c9783eb53a59cd57e9b2330cdd5119 |
12-Nov-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Remove C++11ism. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194446 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
3347b497157d36cf280d1d9f52956faa6e702f34 |
12-Nov-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Rather than duplicating extension diagnostics to allow them to cause a substitution failure, allow a flag to be set on the Diagnostic object, to mark it as 'causes substitution failure'. Refactor Diagnostic.td and the tablegen to use an enum for SFINAE behavior rather than a bunch of flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194444 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
dda91e0c4b794b1054a6672a6267942ec72d387f |
11-Nov-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Partially revert r193640. Stack alignment should not be determined by the floating point register mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194426 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9b79630004fe0a748e0328a19de25840b37d4aa1 |
11-Nov-2013 |
Tim Northover <tnorthover@apple.com> |
Darwin(ish): we don't want __ARM_EABI__ even on v7a embedded targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194408 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8daa7fe574fcc6b4f64c35516a8cce53c3d044b4 |
11-Nov-2013 |
Joerg Sonnenberger <joerg@bec.de> |
NetBSD 6.99.26 switched to default rounding mode, so adjust __FLT_EVAL_METHOD__ accordingly. Add test case for this and the SSE2 variances on NetBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194377 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
86250895597e288c86ef08c2e824956ea9835fed |
04-Nov-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Include non-explicit submodules in exported module list This change fixes Richard's testcase for r193815. Now we include non-explicit submodules into the list of exports. The test failed previously because: - recursive_visibility_a1.inner is not imported (only recursive_visibility_a1 is), - thus the 'inner' submodule is not showing up in any of the import lists, - and because of this getExportedModules() is not returning the correct module set -- it only considers modules that are imported. The fix is to make Module::getExportedModules() include non-explicit submodules into the list of exports. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194018 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
a2420960fded369f2ff4127ba0389be4d0e6c0c9 |
04-Nov-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Driver: Add support for -march=bdver3 on x86. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193985 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8b1ab400d40b96f4634eb0c29986218c2905fda4 |
01-Nov-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Simplify computation of visible module set. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193850 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
bc64d35c4151dc34c21d0fc971b3aee0d28d83a3 |
31-Oct-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Clang modules: collect exports recursively This change makes Module::buildVisibleModulesCache() collect exported modules recursively. While computing a set of exports, getExportedModules() iterates over the set of imported modules and filters it. But it does not consider the set of exports of those modules -- it is the responsibility of the caller to do this. Here is a certain instance of this issue. Module::isModuleVisible says that CoreFoundation.CFArray submodule is not visible from Cocoa. Why? - Cocoa imports Foundation. - Foundation has an export restriction: "export *". - Foundation imports CoreFoundation. (Just the top-level module.) - CoreFoundation exports CoreFoundation.CFArray. To decide which modules are visible from Cocoa, we collect all exported modules from immediate imports in Cocoa: > visibleModulesFro(Cocoa) = exported(Foundation) + exported(CoreData) + exported(AppKit) To find out which modules are exported, we filter imports according to restrictions: > exported(Foundation) = filterByModuleMapRestrictions(imports(Foundation)) Because Foundation imports CoreFoundation (not CoreFoundation.CFArray), the CFArray submodule is considered not exported from Foundation, and is not visible from Cocoa (according to Module::isModuleVisible). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193815 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
3bb1b5c953fc38d4b87525258cf27b7c908988b1 |
31-Oct-2013 |
Amara Emerson <amara.emerson@arm.com> |
[AArch64] Add some CPU targets for "generic", A-53 and A-57. Enables the clang driver to begin targeting specific CPUs. Introduced a "generic" CPU which will ensure that the optional FP feature is enabled by default when it gets to LLVM, without needing any extra arguments. Cortex-A53 and A-57 are also introduced with tests, although backend handling of them does not yet exist. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193740 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
266998656224d42c29ad9f372f750cc9e1772eaf |
30-Oct-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Delete unused functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193674 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
550ed2077e11ac183380478769c8ddc932ce3168 |
29-Oct-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Align the stack to 16-bytes for -mfp64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193640 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4d1c2364d62fa932fe55b094fbcf594575226d12 |
29-Oct-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Move setDescriptionString to base class MipsTargetInfoBase and call it at the end of handleTargetFeatures. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193636 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
423170442b443fd3f2a93dad0d89666b3a85545f |
29-Oct-2013 |
Tom Stellard <thomas.stellard@amd.com> |
R600: Add Sea Islands GPUs git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193622 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
909f35a884045c658e5c4565499f113ee63dfc1d |
29-Oct-2013 |
Bernard Ogden <bogden@arm.com> |
ARM: Add -m[no-]crc to dis/enable CRC subtargetfeature from clang Allow users to disable or enable CRC subtarget feature. Differential Revision: http://llvm-reviews.chandlerc.com/D2037 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193600 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5794b53ad5b38b53c9eaf3a172354e63081ceb2f |
28-Oct-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Allow a new syntax in a module requires-declaration: requires ! feature The purpose of this is to allow (for instance) the module map for /usr/include to exclude <tgmath.h> and <complex.h> when building in C++ (these headers are instead provided by the C++ standard library in this case, and the glibc C <tgmath.h> header would otherwise try to include <complex.h>, resulting in a module cycle). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193549 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
f779e65390ad331ff5ea68de40b0281f607b397c |
24-Oct-2013 |
Bernard Ogden <bogden@arm.com> |
Add driver support for FP, SIMD and crypto defaults. Although we wire up a bit for v8fp for macro setting purposes, we don't set a macro yet. Need to ask list about that. Change-Id: Ic9819593ce00882fbec72757ffccc6f0b18160a0 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193367 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
51f997dfc00baa764be5a4308cfbb888974eb449 |
24-Oct-2013 |
Bernard Ogden <bogden@arm.com> |
Clean up char/numeric comparisons in ARM getTargetDefines Change-Id: Ie07228411b68252adcd5cf80b27ccd2eb3b031d9 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193366 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c427249cb79b77c3cd7a0855f854d2ff81618ddf |
24-Oct-2013 |
Bernard Ogden <bogden@arm.com> |
Teach clang driver about Cortex-A53 and Cortex-A57. Adds some Cortex-A53 strings where they were missing before. Cortex-A57 is entirely new to clang. Doesn't touch code only used by Darwin, in consequence of which one of the A53 lines has been removed. Change-Id: I5edb58f6eae93947334787e26a8772c736de6483 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193364 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
66b5dac8b70229dfe7c7cc882de21b1265a6cdea |
24-Oct-2013 |
Tim Northover <tnorthover@apple.com> |
ARM-Darwin: Use the *-*-darwin-eabi triple for v6m & v7m archs These arch arguments are used for embedded targets (obviously) which need a different calling convention to iOS. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193328 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c6c9cf4b186edd8afa8503c58562d445df127ea6 |
21-Oct-2013 |
Silviu Baranga <silviu.baranga@arm.com> |
Set the default hardware division features for ARM cpus. Also set it as default for A32 armv8. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193075 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1db2e279114348d276e2dea03b8d6175743505e7 |
21-Oct-2013 |
Silviu Baranga <silviu.baranga@arm.com> |
Add the __ARM_ARCH_EXT_IDIV__ predefine. It is set to 1 if we have hardware divide in the mode that we are compiling in (depending on the target features), not defined if we don't. Should be compatible with the GCC conterpart. Also adding a -hwdiv option to overide the default behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193074 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ddb2ad21d2c059b82e2ddbbb5eb8b325944b9970 |
18-Oct-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Define __mips_fpr and _MIPS_FPSET macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192969 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3d11cedeb5ed610dbfb0da733d65d8e95ed217da |
16-Oct-2013 |
Eric Christopher <echristo@gmail.com> |
Rename HandleTargetFeatures->handleTargetFeatures to match everything else in the class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192851 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
165432092b7a329d51c32365067237bfdb71267f |
16-Oct-2013 |
Eric Christopher <echristo@gmail.com> |
Add preprocessor support for powerpc vsx. The test should be expanded upon for more powerpc checking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192849 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f217400fd599ad0f7fd72e711f90e7e5a46c3c2f |
16-Oct-2013 |
Eric Christopher <echristo@gmail.com> |
Fix comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192847 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
15dbacc7cb0e01256345d85efdf1d43eec71b9f9 |
16-Oct-2013 |
Yunzhong Gao <Yunzhong_Gao@playstation.sony.com> |
Enabling 3DNow! prefetch instruction support for a few AMD processors in the clang front end. This change will allow the __PRFCHW__ macro to be set on these processors and hence include prfchwintrin.h in x86intrin.h header. Support for the intrinsic itself seems to have already been added in r178041. Differential Revision: http://llvm-reviews.chandlerc.com/D1934 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192829 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9fcbd5e55a8029a0ca8a5d64457278ec716a8705 |
10-Oct-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: For 'default' and 'shared' family of methods, infer their self's type as their result type. // rdar://15145218 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192377 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
aa58f15d824096639ec2c5dcab903cbdfe0e14b4 |
07-Oct-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: A typical implementation of 'default' methods in Foundation does not infer 'instancetype' for methods' result type. // rdar://15145218 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192129 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
af9454635939bf070733d95d72284494dda6791d |
05-Oct-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add support for -mcx16, and predefine __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 when it is enabled. Also enable it on the same architectures that GCC does. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192045 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
31e7636a957e33fca2874a185f192cedd14c546d |
01-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert commits r190613, r190560 and r190557. The added a cmake invocation to null builds, making them a lot slower. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191784 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
d195bc38fd424b0c928e3c354038a8ca6e2ccac3 |
01-Oct-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
[OpenMP] Added parsing and semantic analysis for firstprivate clause git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191730 91177308-0d34-0410-b5e6-96231b3b80d8
penMPKinds.cpp
|
8712ded79d0e80e6a4158682f78626637ad90a7a |
01-Oct-2013 |
Weiming Zhao <weimingz@codeaurora.org> |
Fix PR 12730: Add _GCC_HAVE_SYNC_COMPARE_AND_SWAP macros for ARM git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191707 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5ada7a5e9747e03e8c3725b1b4d00e2a9f448e9e |
29-Sep-2013 |
Ed Schouten <ed@80386.nl> |
Add character set related __STDC_* definitions. Clang uses UTF-16 and UTF-32 for its char16_t's and char32_t's exclusively. This means that we can define __STDC_UTF_16__ and __STDC_UTF_32__ unconditionally. While there, define __STDC_MB_MIGHT_NEQ_WC__ for FreeBSD. FreeBSD's wchar_t's don't encode characters as ISO-10646; the encoding depends on the locale used. Because the character set used might not be a superset of ASCII, we must define __STDC_MB_MIGHT_NEQ_WC__. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191631 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1b9c5374a3cd33b0e281f494f0e322aef035abca |
27-Sep-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
SourceManager: Open code isInMainFile. - We really shouldn't compute line numbers for every file that is asked if it's the main file, it destroys the lazy computation. - Invalid locations are no longer accounted to the main file, no other functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191535 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a8f7d9dd926d61c92dbe194e9b6f51a9c015cea5 |
24-Sep-2013 |
Yunzhong Gao <Yunzhong_Gao@playstation.sony.com> |
Adding -mtbm and -mno-tbm command line options to the clang front end for the x86 TBM instruction set. Also adding a __TBM__ macro if the TBM feature is enabled. Otherwise there should be no functionality change to existing features. Phabricator code review is located here: http://llvm-reviews.chandlerc.com/D1693 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191326 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ddd2dfc1d3f4a36cbe8cd775c588623a17049f9f |
24-Sep-2013 |
Daniel Jasper <djasper@google.com> |
Module use declarations (II) Review: http://llvm-reviews.chandlerc.com/D1546. I have picked up this patch form Lawrence (http://llvm-reviews.chandlerc.com/D1063) and did a few changes. From the original change description (updated as appropriate): This patch adds a check that ensures that modules only use modules they have so declared. To this end, it adds a statement on intended module use to the module.map grammar: use module-id A module can then only use headers from other modules if it 'uses' them. This enforcement is off by default, but may be turned on with the new option -fmodules-decluse. When enforcing the module semantics, we also need to consider a source file part of a module. This is achieved with a compiler option -fmodule-name=<module-id>. The compiler at present only applies restrictions to the module directly being built. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191283 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
fc12c4aa20876bdf91bff98dc50eb68b4dd04b80 |
24-Sep-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Support -mnan=2008 option. Define "__mips_nan2008" macros and pass this option to the assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191282 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bbac9aacc4742102765c1538130d09c079b14c71 |
21-Sep-2013 |
Petar Jovanovic <petar.jovanovic@imgtec.com> |
[Mips] Allocate NaClTargetInfo for MIPSEL NaCl A patch to AllocateTarget function to recognize llvm::Triple::NaCl for MIPSEL and return NaClTargetInfo. Additional test has been added to check if the expected macros get defined. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191124 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b83f5a77335ca8a5b41ba4e17aa8d4bb6248c1e4 |
19-Sep-2013 |
Ben Langmuir <ben.langmuir@intel.com> |
Add C intrinsics for Intel SHA Extensions Intrinsics added shaintrin.h, which is included from x86intrin.h if __SHA__ is enabled. SHA implies SSE2, which is needed for the __m128i type. Also add the -msha/-mno-sha option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190999 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b22352e7c4eb3e1b7880e6754f96f95ee6d6cf84 |
19-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Use curly braces all the way through long if/else chain for consistency and readability. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190982 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a6cbc2701237c89a8d6fd9897066ebca798664dc |
19-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Disabling sse2 should disable aes and pclmul support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190977 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a346eb1188419d3f1698092edfbd66890b74163c |
18-Sep-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: For consistency, also infer 'instancetype' for known family of methods with related result type; such as 'init' methods. // rdar://14987948 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190956 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
520ec1e553ffa955276462e4230c1b128fa433af |
18-Sep-2013 |
Joey Gouly <joey.gouly@arm.com> |
[ARMv8] Add builtins for CRC instructions. Patch by Bradley Smith! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190931 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
85bfef69f96425b07a300e513797953165434cb8 |
17-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Push contents of X86TargetInfo::setFeatureEnabled down to a static function called by the virtual version and all the places in getDefaultFeatures. This way getDefaultFeatures doesn't make so many virtual calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190847 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
319d81f23504b61d8c31d0551af9b31f0c61ef8b |
17-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Mark setSSELevel/setMMXLevel/setXOPLevel as static since they don't access anything in the class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190846 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2440fb1f91557912f8c43cb72201170254ae09f4 |
16-Sep-2013 |
Amara Emerson <amara.emerson@arm.com> |
Add error checking to reject neon_vector_type attribute on targets without NEON. Patch by Artyom Skrobov. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190801 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
585c84c5afd91f57b84b0236aa28620438cfe636 |
16-Sep-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add a define for the ObjFW runtime ABI version. This removes __has_feature(objc_msg_lookup_stret), as it is not required anymore after this patch. Patch by Jonathan Schleifer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190791 91177308-0d34-0410-b5e6-96231b3b80d8
bjCRuntime.cpp
|
84f007b17399ef90f234ef0cef6e3f2495a12f10 |
16-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Make F16C feature imply AVX. Matches GCC behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190776 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
57b1da1588a3f5785ad8bd5d9f2d795d685e1058 |
14-Sep-2013 |
Cameron Esfahani <dirty@apple.com> |
Clean up some Triple usage in clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190737 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c57ea687835fa5c6270b6275b98e2010fae41a00 |
13-Sep-2013 |
Preston Gurd <preston.gurd@intel.com> |
Update Atom Silvermont (SLM) support by adding enabled features. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190718 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5df4045db5e10408da7e33b0df7df553da2fee68 |
13-Sep-2013 |
Renato Golin <renato.golin@linaro.org> |
Add more Cortex CPUs and tests git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190703 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1302f9fec0928a0f3d8c3485901a0a8c99157c24 |
13-Sep-2013 |
Renato Golin <renato.golin@linaro.org> |
Fix Neon detection for Cortex-A class, plus adds some more CPUs to default features git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190702 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1eef85246b411b55c493098266746d0d83c241ea |
13-Sep-2013 |
David Tweed <david.tweed@arm.com> |
Certain multi-platform languages, such as OpenCL, have the concept of address spaces which is both (1) a "semantic" concept and (2) possibly a hardware level restriction. It is desirable to be able to discard/merge the LLVM-level address spaces on arguments for which there is no difference to the current backend while keeping track of the semantic address spaces in a funciton prototype. To do this enable addition of the address space into the name-mangling process. Add some tests to document this behaviour against inadvertent changes. Patch by Michele Scandale! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190684 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
17e95c8aac18cac3e040079a120b4a129975ae9d |
12-Sep-2013 |
Jordan Rose <jordan_rose@apple.com> |
[CMake] Put controversial always-recheck-revision-number behind an option. CMake does not have the ability to perform actions before calculating dependencies, so it can't know whether it needs to rebuild clangBasic to update for a new revision number. CLANG_ALWAYS_CHECK_VC_REV (off by default) will cause clangBasic to always be dirty by deleting the generated SVNVersion.inc after use; otherwise, SVNVersion.inc will always be updated, but only included in the final binary when clangBasic is rebuilt. It'd be great to find a better way to do this, but hopefully this is still an improvement over the complete lack of version information before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190613 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
23443cd5d1be4a0fbfdc4f99173449c9f1a3dcbe |
12-Sep-2013 |
Jordan Rose <jordan_rose@apple.com> |
[CMake] Fix repository version checking dependencies harder. Just always regenerate SVNVersion.inc. Don't worry about it not changing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190560 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
7f9a8e9c88cd93b98b8871363717269f43ffb8aa |
12-Sep-2013 |
Jordan Rose <jordan_rose@apple.com> |
[CMake] Always include the Clang repo version, just like the autoconf build. Now that LLVM's helper script GetSVN.cmake actually works consistently, there's no reason not to use it. This does mean that the clangBasic target is potentially always dirty, because CMake-generated projects do not necessarily recalculate dependencies after running each target. This should end the issues of the AST format changing and breaking old module files; CMake-Clang should now detect that the version changed just like Autoconf-Clang has. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190557 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
56bed97d750b5a67707f266cc06e641ac5222612 |
11-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Fix a bug where -msse followed by -mno-sse would leave MMX enabled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190496 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3f46e6f45907b7004e2c8dfec1a84877d6d262d6 |
10-Sep-2013 |
Alexey Samsonov <samsonov@google.com> |
Delete unused static class members git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190394 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e24463067cd8d270e67cc926341e43e6b6f019a |
10-Sep-2013 |
David Tweed <david.tweed@arm.com> |
Fix minor coding style issue in r190296 pointed out by Richard Smith. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190390 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
89a5e796bedcfbf6afd03654e75b9f7aa0a0b4f4 |
10-Sep-2013 |
Craig Topper <craig.topper@gmail.com> |
Separate popcnt and sse4.2 feature control somewhat to match gcc behavior. Enabling sse4.2 will implicitly enable popcnt unless popcnt is explicitly disabled. Disabling sse4.2 will not disable popcnt if popcnt is explicitly enabled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190387 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8bc56022db2d9b16aab25ce3b6fccda9dd8991fc |
09-Sep-2013 |
David Tweed <david.tweed@arm.com> |
The OpenCL standard specifies the sizes and alignments of various types than other C-family languages, as well as specifying errno is not set by the math functions. Make the clang front-end set those appropriately when the OpenCL language option is set. Patch by Erik Schnetter! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190296 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
35451d9a00b2a3b40689f6e4d4e259a6d786b395 |
09-Sep-2013 |
Stepan Dyatkovskiy <stpworld@narod.ru> |
Additional fix for PR16752 and for commit 190044: -- For TargetInfo::getRealTypeByWidth also added support for IEEEQuad float type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190294 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
325047fdb5770c97149a977b64ac6cce5c3be427 |
06-Sep-2013 |
David Blaikie <dblaikie@gmail.com> |
Unbreak the Clang -Werror build after r190183. Best guess at the right answer here - no guarantees of fitness for any particular purpose. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190203 91177308-0d34-0410-b5e6-96231b3b80d8
penMPKinds.cpp
|
deb77991a2bef594285864d72cb2bf90dec706ff |
05-Sep-2013 |
Sylvestre Ledru <sylvestre@debian.org> |
Fix the profile of the function (fix commit 190048) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190051 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3309a78379839bf877067f4a54b1413448d22bad |
05-Sep-2013 |
Sylvestre Ledru <sylvestre@debian.org> |
Fix bug #17104 - Target info for GNU/kFreeBSD were missing. As a result, Clang doesn't define the pre-processor macros that are expected on this platform. Thanks to Robert Millan for the patch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190048 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7b7bef1ec355fb46643349d77c266b913f36b656 |
05-Sep-2013 |
Stepan Dyatkovskiy <stpworld@narod.ru> |
Add new methods for TargetInfo: getRealTypeByWidth and getIntTypeByWidth for ASTContext names are almost same(invokes new methods from TargetInfo): getIntTypeForBitwidth and getRealTypeForBitwidth. As first commit for PR16752 fix: 'mode' attribute for unusual targets doesn't work properly Description: Troubles could be happened due to some assumptions in handleModeAttr function (see SemaDeclAttr.cpp). For example, it assumes that 32 bit integer is 'int', while it could be 16 bit only. Instead of asking target: 'which type do you want to use for int32_t ?' it just hardcodes general opinion. That doesn't looks pretty correct. Please consider the next solution: 1. In Basic/TargetInfo add getIntTypeByWidth and getRealTypeByWidth virtual methods. By default current behaviour could be implemented here. 2. Fix handleModeAttr according to new methods in TargetInfo. This approach is implemented in the patch attached to this post. Fixes: 1st Commit (Current): Add new methods for TargetInfo: getRealTypeByWidth and getIntTypeByWidth for ASTContext names are almost same(invokes new methods from TargetInfo): getIntTypeForBitwidth and getRealTypeForBitwidth 2nd Commit (Next): Fix SemaDeclAttr, handleModeAttr function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190044 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
b98ce37c69b42569d15848978dac24106f842e14 |
30-Aug-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add support for -march=slm, aka Intel Atom Silvermont. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189670 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e8519c31a6ef853b627d557702ac1890f18ce2c9 |
30-Aug-2013 |
Charles Davis <cdavis5x@gmail.com> |
Add ms_abi and sysv_abi attribute handling. Based on a patch by Benno Rice! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189644 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d0f2921c3211299a80c043a3251e6b34dddba061 |
29-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: remove dead code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189592 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
46c8fca7b32a7613f9b37b46c381dd064b773b30 |
29-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Make getDiagnosticsInGroup helper method a static function in the cpp file and move the WarningOption struct into an anonymous namespace instead of clang namespace since it no longer needs to be forward declared in the header. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189569 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
354f20a8720732aa1745d1ff9595382cee324ee2 |
29-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Move individual group name strings from the OptionTable into one big char array. Then only store offsets into it in the OptionTable. Saves about 4K from the clang binary and removes 400 relocation entries from DiagnosticIDs.o. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189568 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
0e28a257727f092fbb2d544fd9aaf3b20a323456 |
28-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Reorder and shrink size of NameLen field in diagnostic group table. Shaves ~4K from clang binary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189445 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
b1aa16a18563ebb6824fbe7267420942c802a8ca |
28-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Merge diagnostic group tables to reduce data size and relocation entries. The individual group and subgroups tables are now two large tables. The option table stores an index into these two tables instead of pointers. This reduces the size of the options tabe since it doesn't need to store pointers. It also reduces the number of relocations needed. My build shows this reducing DiagnosticsIDs.o and the clang binary by ~20.5K. It also removes ~400 relocation entries from DiagnosticIDs.o. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189438 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
ef072033876e295ec5d3402f8730a3ae358ad815 |
28-Aug-2013 |
Reid Kleckner <reid@kleckner.net> |
Delete CC_Default and use the target default CC everywhere Summary: Makes functions with implicit calling convention compatible with function types with a matching explicit calling convention. This fixes things like calls to qsort(), which has an explicit __cdecl attribute on the comparator in Windows headers. Clang will now infer the calling convention from the declarator. There are two cases when the CC must be adjusted during redeclaration: 1. When defining a non-inline static method. 2. When redeclaring a function with an implicit or mismatched convention. Fixes PR13457, and allows clang to compile CommandLine.cpp for the Microsoft C++ ABI. Excellent test cases provided by Alexander Zinenko! Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D1231 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189412 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9a3d2bd6da5028567cbfda65bec886b1bcea45e2 |
27-Aug-2013 |
Tom Stellard <thomas.stellard@amd.com> |
R600: Add local address pointer size to DataLayout git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189302 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
81cde9e8915486f83c933d5b148d26b75a338455 |
23-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Update now that llvm uses the same feature names as the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189142 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5389b84a780ac17b63c10ad97cd5e3aaa41595b7 |
21-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move -mfpmath handling to -cc1 and implement it for x86. The original idea was to implement it all on the driver, but to do that the driver needs to know the sse level and to do that it has to know the default features of a cpu. Benjamin Kramer pointed out that if one day we decide to implement support for ' __attribute__ ((__target__ ("arch=core2")))', then the frontend needs to keep its knowledge of default features of a cpu. To avoid duplicating which part of clang handles default cpu features, it is probably better to handle -mfpmath in the frontend. For ARM this patch is just a small improvement. Instead of a cpu list, we check if neon is enabled, which allows us to reject things like -mcpu=cortex-a9 -mfpu=vfp -mfpmath=neon For X86, since LLVM doesn't support an independent ssefp feature, we just make sure the selected -mfpmath matches the sse level. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188939 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
078a333b7e61bb529f8a65181d100ea561f9f528 |
21-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove dead code. setFeatureEnabled is never called with "32" or "64". The driver never passes it and mips' getDefaultFeatures sets the Features map directly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188913 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bc1e54587bf1ed18abadc566423777ddb3be78ac |
21-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move the logic for selecting the last feature in the command line to the driver. This is a partial revert of r188817 now that the driver handles -target-feature in a single place. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188910 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
29f26de50897f88eeee343c70b10fb33122f4c74 |
21-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Don't disable SSE4A when disabling AVX. Thanks for Craig Topper for noticing it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188902 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bca2c4fab5c67a9121c96f15fb5caf09c25cf8f6 |
21-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Add avx512cd, avx512er, avx512pf feature flags and enable them on KNL CPU. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188867 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b7a95d2941869f2dfd0d2f0e805f794b46dd4b55 |
21-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Replace avx-512 with avx512f to match llvm side and what gcc patches appear to be using. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188860 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c84ed54f9786638c228fdc9b4db9920fa676d48d |
20-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Centralize the logic for handling -m* options and fix pr16943. This moves the logic for handling -mfoo -mno-foo from the driver to -cc1. It also changes -cc1 to apply the options in order, fixing pr16943. The handling of -mno-mmx -msse is now an explicit special case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188817 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ade7cd45d5bf510c8599b805691e6402edb0d203 |
20-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove duplicated error checking. The driver validates its options, so we don't need to redo the work in "clang -cc1". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188806 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
020b1e28b281d5242db9c8d9d939a71fa7deb929 |
20-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove dead code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188802 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f6fe72b70706bd301142923fee5ecca42cd3e8a1 |
20-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Refactor the x86 feature handling. This removes the very long chains of Feature["avx"] = Feature["sse42"] = ... = true; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188799 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
42f98732d6f14584522304cff570b7ee24660c54 |
20-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Change 'avx512' to 'avx-512' to match llvm backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188762 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
10c2c68e5610a58f3dbd2daed303b21e15a83720 |
20-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Add AVX-512 feature flag and knl cpu to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188758 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ed218d05aa3d429208b0eb2204707c75b87d2fee |
20-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Revert r188756 because some other changes snuck in with it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188757 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dab7845798d673cabeef792451354aeb394cdd54 |
20-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Add AVX-512 feature flag and knl cpu to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188756 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d588f5c448bd0f38b3950c7fb0571e1875cdc505 |
19-Aug-2013 |
Bob Wilson <bob.wilson@apple.com> |
Bump the value of the __APPLE_CC__ predefined macro up to 6000. The previous value was set to match some ancient version of Apple's GCC. The value should be higher than anything used by Apple's GCC, but we don't intend for this value to be updated in the future. We have other macros to identify compiler versions. <rdar://problem/14749599> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188700 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5f15f4daf0e225ea8463fe2ef522c009c95ffc9c |
13-Aug-2013 |
Robert Lytton <robert@xmos.com> |
Add XCore target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188258 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c613b67f4f3e5d11d6af6426fd9b8b6a197d2b6b |
12-Aug-2013 |
Jack Carter <jack.carter@imgtec.com> |
[Mips] MSA frontend option support This patch adds -mmsa and -mno-msa to the options supported by clang to enable and disable support for MSA. When MSA is enabled, a predefined macro '__mips_msa' is defined to 1. Patch by Daniel Sanders git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188184 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
82ccd75a0358d6f5d5ed43e34ef7590eb6edf37c |
09-Aug-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove "static" on simple temporary StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188088 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
4ac73c7514f9e836b4d9781738f333c5cb91cb63 |
08-Aug-2013 |
Stephen Hines <srhines@google.com> |
Merge commit '51e75aecf4fb303b91c9e54fd88e3509e5acc7a6' into merge-20130807 Conflicts: lib/Basic/Targets.cpp lib/Sema/SemaDeclAttr.cpp Change-Id: If457223ecbee9e43c73d15333bf10d36590d05c4
|
8d3794e06a63578093bd71c3c2520bd01e6197a3 |
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: Add another family of factory methods which can be migrated to instancetype. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187672 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
f647b69147c6e640bbccf501783fafc495bbefb2 |
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: Fixes public buildbot failures, in my previous patch which was reverted in r187657 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187661 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
6803dbe1ec26539395951b75acbe595ad3e8cc8e |
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
revert patch I added in r187655. It still breaks public buildbot. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187657 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
906c7f78ee9026c1dc40e062667341f1dd194959 |
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migration. Check-in patch reverted in r187634. Also removed check for "NS" prefix for class name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187655 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
cd683986e991f0e60afd6bc6f336cfc1fd844193 |
02-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert "ObjectiveC migrator. Migrate to instancetype return type for mehods with certain prefix selector matching their class names' suffix." This reverts commit r187626. It is breaking the bots. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187634 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
59944677b0576c19a08db92a6b45619077a00baa |
02-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. Migrate to instancetype return type for mehods with certain prefix selector matching their class names' suffix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187626 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
0fda0f75f053ad9afdb2bb8d4ea72c5e6a49d657 |
01-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use llvm::sys::fs::UniqueID for windows and unix. This unifies the unix and windows versions of FileManager::UniqueDirContainer and FileManager::UniqueFileContainer by using UniqueID. We cannot just replace "struct stat" with llvm::sys::fs::file_status, since we want to be able to construct fake ones, and file_status has different members on unix and windows. What the patch does is: * Record only the information that clang is actually using. * Use llvm::sys::fs::status instead of stat and fstat. * Use llvm::sys::fs::UniqueID * Delete the old windows versions of UniqueDirContainer and UniqueFileContainer since the "unix" one now works on windows too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187619 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
b793f0d3448a15277cd6b6cc4ba558ded39a8084 |
01-Aug-2013 |
Tim Northover <tnorthover@apple.com> |
AArch64: initial NEON support Patch by Ana Pazos - Completed implementation of instruction formats: AdvSIMD three same AdvSIMD modified immediate AdvSIMD scalar pairwise - Completed implementation of instruction classes (some of the instructions in these classes belong to yet unfinished instruction formats): Vector Arithmetic Vector Immediate Vector Pairwise Arithmetic - Initial implementation of instruction formats: AdvSIMD scalar two-reg misc AdvSIMD scalar three same - Intial implementation of instruction class: Scalar Arithmetic - Initial clang changes to support arm v8 intrinsics. Note: no clang changes for scalar intrinsics function name mangling yet. - Comprehensive test cases for added instructions To verify auto codegen, encoding, decoding, diagnosis, intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187568 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c8051e6d276b916f4a4244ad353c5a9c1d2c58e4 |
30-Jul-2013 |
Alexander Kornienko <alexfh@google.com> |
Simplified SourceManager::translateLineCol a bit. Reviewers: rsmith Reviewed By: rsmith CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1183 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187386 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
4488835d1c78221553909447cf87d7e4ff7f99fb |
29-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Update for llvm api change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187379 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3dadc85330d8f548b49f97d7e2fa62c73f7463dd |
29-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Convert a use of status with llvm::sys::fs::getUniqueID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187367 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
aefb1d3312a63ac8d289a2e84747fe61a7f61823 |
29-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Convert a use of stat with sys::fs::status. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187364 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
146d57fd5135a134bcdaaf402157c070cde9e4a1 |
29-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix handling of "clang c:foo" On windows, c:foo is a valid file path, but stat fails on just "c:". This causes a problem for clang since its file manager wants to cache data about the parent directory. There are refactorings to be done in here, but this gives clang the correct behavior and testing first. Patch by Yunzhong Gao! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187359 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
ea7fb0ce25acc04664a2e7c2b24af03cef2c0d1f |
26-Jul-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
[PowerPC] Support powerpc64le as a syntax-checking target. This patch provides basic support for powerpc64le as an LLVM target. However, use of this target will not actually generate little-endian code. Instead, use of the target will cause the correct little-endian built-in defines to be generated, so that code that tests for __LITTLE_ENDIAN__, for example, will be correctly parsed for syntax-only testing. Code generation will otherwise be the same as powerpc64 (big-endian), for now. The patch leaves open the possibility of creating a little-endian PowerPC64 back end, but there is no immediate intent to create such a thing. The new test case variant ensures that correct built-in defines for little-endian code are generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187180 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b775100fea6d8955149897dae1adca50ca471d17 |
26-Jul-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
When we perform dependent name lookup during template instantiation, it's not sufficient to only consider names visible at the point of instantiation, because that may not include names that were visible when the template was defined. More generally, if the instantiation backtrace goes through a module M, then every declaration visible within M should be available to the instantiation. Any of those declarations might be part of the interface that M intended to export to a template that it instantiates. The fix here has two parts: 1) If we find a non-visible declaration during name lookup during template instantiation, check whether the declaration was visible from the defining module of all entities on the active template instantiation stack. The defining module is not the owning module in all cases: we look at the module in which a template was defined, not the module in which it was first instantiated. 2) Perform pending instantiations at the end of a module, not at the end of the translation unit. This is general goodness, since it significantly cuts down the amount of redundant work that is performed in every TU importing a module, and also implicitly adds the module containing the point of instantiation to the set of modules checked for declarations in a lookup within a template instantiation. There's a known issue here with template instantiations performed while building a module, if additional imports are added later on. I'll fix that in a subsequent commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187167 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
7185d6272b8dc75d5492a6ea0ed43d7631554b61 |
25-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the mblaze backend from clang. Approval in here http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/064169.html git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187143 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
65f1a4c931bc17e51c751a5e9c6a71a9e52d5b8c |
24-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C migrator: some cleanup. Expose static type of init/alloc/retain with instance type as well. Ad-hoc cases are coming next. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187068 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
11638f7b922aa0182ab2028ec819001ed2fe8085 |
24-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjC migrator: more knobs toward doing instancetype migration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187000 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
8d09216f13478b20f9d9088af22146e28c0cc4ce |
23-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjC migrator: Define family of methods which are candidate for migrating to 'instancetype'. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186981 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
264d206244bde858471e4b6211aeba28fd8ce7cb |
23-Jul-2013 |
Eli Bendersky <eliben@google.com> |
Add a -fno-math-builtin option to the Clang -cc1 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186899 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
8bfffa51d773d2411cf7b8ac513ef1f50e1a4773 |
21-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Replace 'unsigned short' with 'uint16_t' in a packed data structure for consistency with other fields and to be explicit about bit count. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186796 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
cbfb8d7ca40975acfa3382f5f62c40965fe316c4 |
21-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Revert r186649 because it wasn't unnecessary and add a comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186795 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
cfaa5525b8eea6c5f7767010e04e323f76bed1ab |
20-Jul-2013 |
David Majnemer <david.majnemer@gmail.com> |
DiagnosticIDs: Forbid Diag ID from being valid Diag ID is used throughout clang as a sentinel id meaning "this is an invalid diagnostic id." Confusingly, Diag ID maps to a valid, usable, diagnostic id. Instead, start diagnostic ids at ID one. Incidently, remove an unused element from StaticDiagInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186760 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
5c92b9ab4e4dce3233ea3e400a02c443f9afd372 |
19-Jul-2013 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
[SystemZ] Add -march= command-line option git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186694 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a4f5252bfb766c29e8a0de7500870946d6f9354c |
19-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Remove unnecessary IsFirst variable from debug codde in GetDiagInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186649 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
4fa7eab771ab8212e1058bd1a91061ff120c8fbb |
19-Jul-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
OpenMP: basic support for #pragma omp parallel git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186647 91177308-0d34-0410-b5e6-96231b3b80d8
penMPKinds.cpp
|
d965f95daa97097c8ddc5e1165ceae585a888719 |
16-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Update for llvm API change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186448 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystemStatCache.cpp
|
b960232518a1cd79c5f64ab5ef54c88e34660191 |
15-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Use llvm::array_lengthof to replace sizeof(array)/sizeof(array[0]). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186300 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
466877a29a6b7549b8b1bd5b59df58ee79cc5f46 |
14-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Replace C++0x in a comment with C++11 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186287 91177308-0d34-0410-b5e6-96231b3b80d8
peratorPrecedence.cpp
|
97a03cf921ccc16ef9d16d965a5ef28631090f6a |
11-Jul-2013 |
Eli Bendersky <eliben@google.com> |
Simplify GetBuiltinNames by hoising the NoBuiltins argument out of it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186106 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
163fbf810eaffc2c7b0170d91b6196b032911957 |
08-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Use SmallVectorImpl::reverse_iterator instead of SmallVector to avoid specifying the vector size. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185784 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
09d19efaa147762f84aed55efa7930bb3616a4e5 |
04-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Use SmallVectorImpl instead of SmallVector for iterators and references to avoid specifying the vector size unnecessarily. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185610 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
b1baad643c287a3656e9bbda08aab143e6c00873 |
03-Jul-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
[PowerPC] FreeBSD does not require f128 in its data layout string. Long double is 64 bits on FreeBSD PPC, so the f128 entry is superfluous. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185582 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b2f6f4764e4d7da70b9ed99aa5bbb346018feedc |
03-Jul-2013 |
Roman Divacky <rdivacky@freebsd.org> |
Dont define __LONG_DOUBLE_128__ unless LongDoubleWidth is really 128bits width. It's not the case on ie. FreeBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185572 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
18a295d96d66c2d99b089882366966e460ed5072 |
01-Jul-2013 |
Anton Korobeynikov <asl@math.spbu.ru> |
Fix MSP430 builtin types. Patch by Job Noorman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185362 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9df0823a4b82794f573e333115ad4dfff3ab0a34 |
29-Jun-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Driver: Push triple objects around instead of going to std::string all the time. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185261 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
cbed3bfe79bbd16ced68078c7385bd21151f44cd |
27-Jun-2013 |
Joey Gouly <joey.gouly@arm.com> |
Add support for passing v8fp options via -mfpu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185075 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4ec8d5b63d3e2a2c0d9f35243e5f798a89cd97bd |
26-Jun-2013 |
Joey Gouly <joey.gouly@arm.com> |
Add support for passing '-target armv8' through the Driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184970 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c6fa1153f882c01decb676ca1208705ae2e2508a |
25-Jun-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Fix a couple of PPC predefined macros that I spotted while driving by this code. These aren't technically standard predefines for the platform but apparantly lots of folks use them as they show up within LLVM's own codebase. ;] This may even fix some self host issues w/ the JIT!!! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184830 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0ac428eb8ae01995d70a8704862aafaea7c16c53 |
21-Jun-2013 |
Justin Holewinski <jholewinski@nvidia.com> |
[NVPTX] Add NVPTX register constraints git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184578 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bc3f628815b3841dc99109e7f67f9afa7793bc94 |
20-Jun-2013 |
Lawrence Crowl <crowl@google.com> |
This patch adds new private headers to the module map. Private headers may be included from within the module, but not from outside the module. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184471 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
e4bce7a4250e3d646ceab372ebed71ca7e79cf28 |
18-Jun-2013 |
Bob Wilson <bob.wilson@apple.com> |
size_t on Darwin AAPCS targets is "unsigned long". <rdar://problem/14136459> Some embedded targets use ARM's AAPCS with iOS header files that define size_t as unsigned long, which conflicts with the usual AAPCS definition of size_t as unsigned int. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184171 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e1e03424469ac00811f70ff17b4441ad5c75dff6 |
17-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use atomic instructions on Bitrig armv6. Patch by Patrick Wildt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184113 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
04491635b1b497c08f6b04afbf83887718a6d667 |
15-Jun-2013 |
Ed Schouten <ed@80386.nl> |
Emit native implementations of atomic operations on FreeBSD/armv6. Just like on Linux, FreeBSD/armv6 assumes the system supports ldrex/strex unconditionally. It is also used by the kernel. We can therefore enable support for it, like we do on Linux. While there, change one of the unit tests to explicitly test against armv5 instead of armv7, as it actually tests whether libcalls are emitted. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184040 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2049840b0ffe8ee4bf39051cfa8ca08440c8f667 |
12-Jun-2013 |
Stephen Hines <srhines@google.com> |
Merge commit '1342a4ef62dd7b839c6f09348b246a4f00282f29' into merge_20130612
|
7044668ecb518496e463ea2dacae100d4badfd19 |
10-Jun-2013 |
Adrian Prantl <aprantl@apple.com> |
cleanup (address some more review comments for r183474): - reduce default buffer size to 64, which will still be large enough to hold any property names found in the wild. - get rid of the /*static*/ comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183697 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
80e8ea92d6dcaa05165dcb4730485db82dcd4629 |
08-Jun-2013 |
Adrian Prantl <aprantl@apple.com> |
address some comments on r183474: - factor the name construction part out from constructSetterName - rename constructSetterName to the more appropriate constructSetterSelector no functionality change intended. rdar://problem/14035789 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183582 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
4ff3225c1f343c3e0d461a0e387c7c6012cff5ba |
07-Jun-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Thread the 'Invalid' out parameter through SourceManager::getSLocEntry() and callees of SourceManager::getSLocEntryByID(). Also add an 'Invalid' check in SourceManager::computeMacroArgsCache(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183538 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
221a8908e4521de533bace49566b5281df9b1924 |
04-Jun-2013 |
Bob Wilson <bob.wilson@apple.com> |
Do not report -Wasm-operand-widths for ARM output operands. <rdar://14050337> We're getting reports of this warning getting triggered in cases where it is not adding any value. There is no asm operand modifier that you can use to silence it, and there's really nothing wrong with having an LDRB, for example, with a "char" output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183172 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c89f02afb018316a0c36bf62b2cb75d420f2fff3 |
31-May-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Disable non-standard library builtins in non-gnu language modes. Fixes PR16138. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183015 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
45e1f0e3e7a2030e2e95863cf2bcceb7eb2476ff |
25-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make isBeforeInTranslationUnit consistent in the face of failures to get a valid FileID (V2). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182698 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ecdbbfa1cd26c0b0f322366973c7dae51c1e83df |
25-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make isBeforeInTranslationUnit consistent in the face of failures to get a valid FileID. Suggested by Jordan. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182695 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5b8e132a9ab2232fae55ee481bf4901b0a7005da |
25-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add some safety checks in a couple of SourceManager functions. This is to address crash in rdar://13932308 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182681 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9779fdd271bb6a938bdee93f901e4ef7b1a88610 |
24-May-2013 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Replace Count{Leading,Trailing}Zeros_{32,64} with count{Leading,Trailing}Zeros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182675 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5ac8c4f449e291d5a1a34777e58f4218794f4646 |
19-May-2013 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
OpenBSD/sparc64 uses long long for int64_t and intmax_t. Other operating systems, including FreeBSD and NetBSD, use long. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182215 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c50c6ff49aa3648ae031349de6f09439f52425f0 |
16-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[Lexer] Improve Lexer::getSourceText() when the given range deals with function macro arguments. This is a modified version of a patch by Manuel Klimek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182055 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b5afadd210609294c9c8ec6a9456b1cf53eff690 |
16-May-2013 |
David Fang <fang@csl.cornell.edu> |
fix PR 15726: ptrdiff_t should be int on PowerPC Darwin git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182029 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fcec0c991edbb011a1eeb85d8de836502f799aed |
15-May-2013 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Use correct types for SPARC v9. It's an LP64 platform. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181867 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
69db555a7a4d0aa11d65001ffc25669c354a5de0 |
14-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use atomic instructions on linux thumb v7. This matches gcc's behaviour. The patch also explicitly parses the version so that this keeps working when we add support for v8. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181750 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
620c0afe5ea7185688d066de9e3b3680067934d3 |
13-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use atomic instructions on ARM linux. This is safe given how the pre-v6 atomic ops funcions in libgcc are implemented. This fixes pr15429. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181728 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6af701f29be43e49a25ab098c79940ae4cbb69c7 |
13-May-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
OpenMP threadprivate with qualified names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181683 91177308-0d34-0410-b5e6-96231b3b80d8
penMPKinds.cpp
|
b491e684395ee19123abdd73b75776fea966d8cf |
03-May-2013 |
Stephen Hines <srhines@google.com> |
Update Clang for merge to r180944. Change-Id: Ic42c9b2576c8da6a73092734c392ef5b3cf949c1
ndroid.mk
|
b8409215523e5478b8b0aa9cdcd10038cf7651fe |
06-May-2013 |
Ulrich Weigand <ulrich.weigand@de.ibm.com> |
Add SystemZ support This patch then adds all the usual platform-specific pieces for SystemZ: driver support, basic target info, register names and constraints, ABI info and vararg support. It also adds new tests to verify pre-defined macros and inline asm, and updates a test for the minimum alignment change. This version of the patch incorporates feedback from reviews by Eric Christopher and John McCall. Thanks to all reviewers! Patch by Richard Sandiford. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181211 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6b20351a1d6178addfaa86716aaba36f2e9ea188 |
06-May-2013 |
Ulrich Weigand <ulrich.weigand@de.ibm.com> |
Allow targets to define minimum alignment for global variables This patch adds a new common code feature that allows platform code to request minimum alignment of global symbols. The background for this is that on SystemZ, the most efficient way to load addresses of global symbol is the LOAD ADDRESS RELATIVE LONG (LARL) instruction. This instruction provides PC-relative addressing, but only to *even* addresses. For this reason, existing compilers will guarantee that global symbols are always aligned to at least 2. [ Since symbols would otherwise already use a default alignment based on their type, this will usually only affect global objects of character type or character arrays. ] GCC also allows creating symbols without that extra alignment by using explicit "aligned" attributes (which then need to be used on both definition and each use of the symbol). To enable support for this with Clang, this patch adds a TargetInfo::MinGlobalAlign variable that provides a global minimum for the alignment of every global object (unless overridden via explicit alignment attribute), and adds code to respect this setting. Within this patch, no platform actually sets the value to anything but the default 1, resulting in no change in behaviour on any existing target. This version of the patch incorporates feedback from reviews by Eric Christopher and John McCall. Thanks to all reviewers! Patch by Richard Sandiford. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181210 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ff920eec4d449bee560d8d99636ad0eb50cd9d8d |
04-May-2013 |
Tim Northover <Tim.Northover@arm.com> |
AArch64: teach Clang about __clear_cache intrinsic libgcc provides a __clear_cache intrinsic on AArch64, much like it does on 32-bit ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181111 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d99990df0b4aca43a0315b2928ff1b8baf704052 |
04-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Revert r177218. Per discussion in cfe-commits, asserting may be a better way than introducing a special test flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181073 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cc2b653c319599f502425d2c3de29865d47bb9e4 |
04-May-2013 |
Douglas Gregor <dgregor@apple.com> |
Remove DiagnosticConsumer::clone(), a bad idea that is now unused. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181070 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a4a90cabfa15c900016a7cfaea51a6d4e8ebf4db |
04-May-2013 |
Douglas Gregor <dgregor@apple.com> |
When building a module, forward diagnostics to the outer diagnostic consumer. Previously, we would clone the current diagnostic consumer to produce a new diagnostic consumer to use when building a module. The problem here is that we end up losing diagnostics for important diagnostic consumers, such as serialized diagnostics (where we'd end up with two diagnostic consumers writing the same output file). With forwarding, the diagnostics from all of the different modules being built get forwarded to the one serialized-diagnostic consumer and are emitted in a sane way. Fixes <rdar://problem/13663996>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181067 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
83eba02c2ea333015335e2f74c4d11c5315b655d |
03-May-2013 |
Stephen Hines <srhines@google.com> |
Merge remote-tracking branch 'upstream/master' into merge-20130502
|
363f99d0cd6c00e54dde2bc66a3af234ed805b2c |
03-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Initialize WarnOnSpellCheck. Clang always calls setWarnOnSpellCheck, but we shouldn't require every client to do so. Issue noticed by Enea Zaffanella. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181021 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
63063f5dd7e6cee865f513d3c3f283fc20de18d0 |
03-May-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add support for -march=btver2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181006 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
44f72d34a947c654f88ea212b7fe5834615bca11 |
24-Apr-2013 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add some more required SPARC v9 predefined macros. Solaris/AuroraUX only need __arch64__, the BSDs need the other variants. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180172 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6576a0d1e26f617d29d54ed99b16099d93a05264 |
19-Apr-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add comment to describe cleverness. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179806 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
5ddf70f1e736d4919c147cf938c8f20b0d17dd00 |
18-Apr-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Reject asm output constraints that consist of modifiers only. Fixes PR15759. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179756 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
87f9d81d0ab806dcf6ca50a0c068dcb2ba7f51b3 |
18-Apr-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[Modules] Use global index to improve typo correction performance Typo correction for an unqualified name needs to walk through all of the identifier tables of all modules. When we have a global index, just walk its identifier table only. rdar://13425732 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179730 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
56e1f1f7abda394b81a5df7f75d3c6e0a570d6c0 |
16-Apr-2013 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add support for sparcv9 targets. The SPARC v8 and SPARC v8 architectures are very similar, so use a base class to share most information between them. Include operating systems with known SPARC v9 ports. Also fix two issues with the SPARC v8 data layout string: SPARC v8 is a big endian target with a 64-bit aligned stack. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179596 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
321ae79aae228aa069795e78449a95fa35e2abfd |
14-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Support -mmicromips / -mno-micromips command line options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179489 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d96e315fb82950e105188055151d665c03e781ed |
14-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Follow-up to r179481. Consider "single-float" as a separate independent of float ABI feature in the MipsTargetInfoBase class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179486 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ecc65238c98ba21d08763da7b7972d617677e908 |
13-Apr-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getDecomposedIncludedLoc, that returns the "included/expanded in" decomposed location of the given FileID. The main benefit is to speed-up SourceManager::isBeforeInTranslationUnit which is common to query the included/expanded location of the same FileID multiple times. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179435 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c0783dc18a78b55e9486b72fa0b193dbf1b65fbb |
08-Apr-2013 |
Eli Bendersky <eliben@google.com> |
The PNaCl target no longer permits __attribute__((regparm)). Remove the custom lowering code dealing with it, disallow it in PNaclTargetInfo and adjust tests accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179059 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dabcbf95483a59f2342b5c29112a8f4f8b8ecf1b |
05-Apr-2013 |
Tim Northover <Tim.Northover@arm.com> |
AArch64: bring predefines in line with most recent ACLE document The prefixes and names used are now identical to 32-bit ARM, which is also expected to remain unchanged. If we made this change after a release, we'd probably have to support both variants for a while, but I think since AArch64 exists only on trunk now, it's acceptable to simply swap them now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178870 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d1b33945f3254de9b02063cd203374856492ed02 |
05-Apr-2013 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Add support for __GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4,8} on x86. This fixes std::thread with libstdc++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178816 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3b848ec836c94ed6deb850f332638f085280f8e6 |
01-Apr-2013 |
Tom Stellard <thomas.stellard@amd.com> |
R600: Add missing Southern Islands GPU to setCPU() function git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178498 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
affa3af144eb1ae1b5e6e1c9ca0f979bc6982990 |
30-Mar-2013 |
Justin Holewinski <jholewinski@nvidia.com> |
Remove old NVPTX cpus and add new NVPTX cpus git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178419 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fe6b2713656c2d1bf559be357f0e0bf2d09bebd6 |
30-Mar-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add support for gcc-compatible -mfprnd -mno-fprnd PPC options gcc provides -mfprnd and -mno-fprnd for controlling the fprnd target feature; support these options as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178414 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1bfc28c48c1b86a05d2e07b403107ef3da5a0f8e |
29-Mar-2013 |
Michael Liao <michael.liao@intel.com> |
Add RDSEED intrinsic support defined in AVX2 extension git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178331 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
829d187e2100d2cfd85acefc2e867d12336e393f |
28-Mar-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add support for gcc-compatible -mpopcntd -mno-popcntd PPC options gcc provides -mpopcntd and -mno-popcntd for controlling the popcntd target feature; support these options as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178235 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f4320ab08da5e4c927ef326c68d5081f5f2a2268 |
28-Mar-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add support for gcc-compatible -mmfcrf -mno-mfcrf PPC options gcc provides -mmfcrf and -mno-mfcrf for controlling what we call the mfocrf target feature. Also, PPC is now making use of the static function AddTargetFeature used by the Mips Driver code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178227 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
72339a0d160720c6301d629761e701e5fad56f5e |
26-Mar-2013 |
Michael Liao <michael.liao@intel.com> |
Add PRFCHW intrinsic support - Add head 'prfchwintrin.h' to define '_m_prefetchw' which is mapped to LLVM/clang prefetch builtin - Add option '-mprfchw' to enable PRFCHW feature and pre-define '__PRFCHW__' macro git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178041 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7aac45a08236891bffdf1959dee2f340a0387725 |
26-Mar-2013 |
Douglas Gregor <dgregor@apple.com> |
<rdar://problem/13358795> Teach CMake to check Subversion version information at build time, not configure time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177939 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ersion.cpp
|
b63d8d2609985c26835c3890a3a929af6a4a6d1e |
25-Mar-2013 |
Matt Beaumont-Gay <matthewbg@google.com> |
Fix a layering violation introduced in r177705. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177922 91177308-0d34-0410-b5e6-96231b3b80d8
penMPKinds.cpp
|
c640058aa7f224a71ce3b1d2601d84e1b57f82d3 |
22-Mar-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
OpenMP threadprivate directive parsing and semantic analysis git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177705 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
penMPKinds.cpp
|
906d66acc5cf2679453e10a4f0a67feedd765b21 |
20-Mar-2013 |
Douglas Gregor <dgregor@apple.com> |
<rdar://problem/12368093> Extend module maps with a 'conflict' declaration, and warn when a newly-imported module conflicts with an already-imported module. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177577 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
970e441671be130c9a12b7eda2a0b795008812a5 |
20-Mar-2013 |
Douglas Gregor <dgregor@apple.com> |
Make sure that Module::ConfigMacrosExhaustive gets initialized and deserialized correctly. This fixes regressions introduced in r177466 that caused several module tests to fail sporadically. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177481 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
63a726870b486e0470c3a4b11cf62bab8be00b73 |
20-Mar-2013 |
Douglas Gregor <dgregor@apple.com> |
<rdar://problem/10796651> Introduce configuration macros into module maps. Configuration macros are macros that are intended to alter how a module works, such that we need to build different module variants for different values of these macros. A module can declare its configuration macros, in which case we will complain if the definition of a configation macro on the command line (or lack thereof) differs from the current preprocessor state at the point where the module is imported. This should eliminate some surprises when enabling modules, because "#define CONFIG_MACRO ..." followed by "#include <module/header.h>" would silently ignore the CONFIG_MACRO setting. At least it will no longer be silent about it. Configuration macros are eventually intended to help reduce the number of module variants that need to be built. When the list of configuration macros for a module is exhaustive, we only need to consider the settings for those macros when building/finding the module, which can help isolate modules for various project-specific -D flags that should never affect how modules are build (but currently do). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177466 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
15d68882f5fa4afae8333e75b2bfd5e2834c8aaf |
19-Mar-2013 |
Stephen Hines <srhines@google.com> |
Merge branch 'upstream' into merge_2013_03_18 Conflicts: lib/Sema/SemaDeclAttr.cpp Change-Id: I05e70941163ec5a461eba43ef78f6738cd5a1e69
|
c1d22393628a145e54396c0ac66e9625d13a7658 |
13-Mar-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[Modules] Resolve top-headers of modules lazily. This allows resolving top-header filenames of modules to FileEntries when we need them, not eagerly. Note that that this breaks ABI for libclang functions clang_Module_getTopLevelHeader / clang_Module_getNumTopLevelHeaders but this is fine because they are experimental and not widely used yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176975 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
e8a1efcafbea9a40fe12454d27baa30488475862 |
12-Mar-2013 |
Matthew Curtis <mcurtis@codeaurora.org> |
Remove driver support for Hexagon V2 and V3 Driver will now error when trying to compile for V2 or V3. Removal of V2 and V3 support will allow us to simplify the hexagon back-end. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176859 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f3ddf639697d9be7f0429f3672a32c9fbac3653d |
07-Mar-2013 |
Guy Benyei <guy.benyei@intel.com> |
Add 'e' to the SPIR data layout - SPIR is little endian for now. Add 32/64 bit specific target defines for SPIR. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176629 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bd3aca04d304b9f31240b94af0aad818f6f932ab |
06-Mar-2013 |
Stephen Hines <srhines@google.com> |
Update build rules for Clang merge to version 176138. Change-Id: Ib028329a591e6175998d969f11b5404bf3f19e81
ndroid.mk
|
450b86c0c9ff8307f5145ced621914600196c500 |
06-Mar-2013 |
Stephen Hines <srhines@google.com> |
Merge commit 'b58f810669d9c17bcc025b7560de01d162856f34' into merge_20130226 Conflicts: include/clang/Basic/LangOptions.def lib/Sema/SemaDeclAttr.cpp Change-Id: Ia10b4d3b2c949a72d328cb58b113f90237d4a5d5
|
971023066ce2a20aa693cc981412d015bac304b9 |
05-Mar-2013 |
Jack Carter <jack.carter@imgtec.com> |
Mips specific inline assembler constraint 'R' 'R' An address that can be sued in a non-macro load or store. Including missing positive test case and fixed typo for r176453. Thanks to Richard Smith for catching this! Jack git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176506 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fc55345144f636f7687fd37649f0302914981fff |
04-Mar-2013 |
Bob Wilson <bob.wilson@apple.com> |
Tidy up lists of Cortex-A series processors, adding entries for A7. Also fix a missing entry for cortex-r5 in one copy of getLLVMArchSuffixForARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176457 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d2ab6d371e2bb93ced857041b9173ad50bbcbfcd |
04-Mar-2013 |
Jack Carter <jack.carter@imgtec.com> |
Mips specific inline assembler constraint 'R' 'R' An address that can be sued in a non-macro load or store. This patch includes a positive test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176453 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fd07591ea5bcdb7fdd391dc64488d3551619ed3d |
04-Mar-2013 |
Tom Stellard <thomas.stellard@amd.com> |
R600: Use the GPU type to determine the correct DataLayout v2 v2: - Add R600_DOUBLE_OPS for RV670 - s/CPU/GPU/ Reviewed-by: Alex Deucher <alexander.deucher@amd.com> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176440 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fc09336a5965040736f9bc63a70416003972364e |
01-Mar-2013 |
Stefanus Du Toit <stefanus.dutoit@rapidmind.com> |
Fix typos: [Dd]iagnosic -> [Dd]iagnostic These all appear in comments or (ironically) diagnostics output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176383 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
838a920fda4408d1b12faca704da2b848a6efcc1 |
01-Mar-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add one more sanity check in SourceManager::getFileIDLoaded(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176333 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7db4bb9226f303392934c91869afdeb4d153ca95 |
01-Mar-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In SourceManager::getFileIDLoaded(), add some sanity checks to make sure we don't enter an infinite loop. rdar://13120919 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176331 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e9616a4972a4c2fdc28128c057f21d7a79516c86 |
27-Feb-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Add two new aliases for MIPS ABI names 32 (means o32 abi) and 64 (means n64 abi) to improve compatibility with GNU tools. Patch by Jia Liu <proljc@gmail.com>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176187 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2564f811ba107cb314a594d730aa3357b6181b62 |
27-Feb-2013 |
Ted Kremenek <kremenek@apple.com> |
Refine SourceManager's isBeforeInTranslationUnit() cache to have more entries. isBeforeInTranslationUnit() uses a cache to reduce the expensive work to compute a common ancestor for two FileIDs. This work is very expensive, so even caching the latest used FileIDs was a big win. A closer analysis of the cache before, however, shows that the cache access pattern would oscillate between a working set of FileIDs, and thus caching more pairs would be profitable. This patch adds a side table for extending caching. This side table is bounded in size (experimentally determined in this case from a simple Objective-C project), and when the table gets too large we fall back to the single entry caching before as before. On Sketch (a small example Objective-C project), this optimization reduces -fsyntax-only time on SKTGraphicView.m by 5%. This is for a project that is already using PCH. Fixes <rdar://problem/13299847> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176142 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f9067c6b56b7ea89a43c8c2d5a0ca2c8487ea987 |
24-Feb-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Moving initialization into the initializer list and correcting capitalization, as suggested by Chandler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176001 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a8f7a97a22d1ed92fd3309f071c0121c22e52aa3 |
23-Feb-2013 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Implement __builtin_eh_return_data_regno() for ARM and MIPS. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175954 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7728cddd7866fadd07f1191eee40985e3cdbc6bf |
23-Feb-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Revert r175912, "Add support for coldcc to clang" at John's request. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175936 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4c67aa96401b67b5200e701cff87485067ab0792 |
22-Feb-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Add support for coldcc to clang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175912 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f512acee01617c9da8079ed88ded3bb9f2418349 |
22-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace some typically large vectors with SmallVector. This may seem counter-intuitive but the POD-like optimization helps when the vectors grow into multimegabyte buffers. SmallVector calls realloc which knows how to twiddle virtual memory bits and avoids large copies. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175906 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
66874fb18afbffb8b2ca05576851a64534be3352 |
21-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Use None rather than Optional<T>() where possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175705 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
90a7820de7685cec75fcd47e98f0f9623c0f0477 |
20-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Revert "intmax_t is long long on Darwin, not long." 'long' and 'long long' are different for the purposes of mangling. This caused <rdar://problem/13254874>. This reverts commit c2f994d31ec85e9af811af38eb1b28709aef0b2c. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175681 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dc84cd5efdd3430efb22546b4ac656aa0540b210 |
20-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Include llvm::Optional in clang/Basic/LLVM.h Post-commit CR feedback from Jordan Rose regarding r175594. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175679 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
ersionTuple.cpp
|
a905c4fd256396b589013304d9793cc199b8a0c6 |
20-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
intmax_t is long long on Darwin, not long. <rdar://problem/11540697> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175588 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
21a0004d80f50808ee343ae70092f6260a4c9477 |
19-Feb-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[modules] Refactor code from ASTReader::makeModuleVisible() into a new function, Module::getExportedModules() so it can be reused. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175548 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
6637b0607127f0df5a4f4c8180c02c1e041d4682 |
19-Feb-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Fixing a typo where FixIts was accidentally self-assigning instead of assigning in the parameter Fixits. This fixes several failed assertions with MSVC debug builds. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175483 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6a93c86fc73d84a40d3460be04444669c8439e20 |
18-Feb-2013 |
Tim Northover <Tim.Northover@arm.com> |
AArch64: add atomic support parameters to TargetInfo This allows Clang to detect and deal wih __atomic_* operations properly on AArch64. Previously we produced an error when encountering them at high optimisation levels. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175438 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
223f0ff6a9a5d0eaf63b98b3aa92888b4c088868 |
09-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Remove some stray uses of <ctype.h> functions. These are causing assertions on some MSVC builds. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174805 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
799f3c13fbeacedda24549c41e72c07905208661 |
08-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
CharInfo: Add missing "using namespace clang::charinfo" in .cpp file. Should fix the MSC bot. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174769 91177308-0d34-0410-b5e6-96231b3b80d8
harInfo.cpp
|
3f6f51e28231f65de9c2dd150a2d757b2162cfa3 |
08-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. Nearly all of these changes are one-to-one replacements; the few that aren't have to do with custom identifier validation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174768 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
dentifierTable.cpp
argetInfo.cpp
|
9893902eceba7f01dd1521349d33866f77254d78 |
08-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Pull Lexer's CharInfo table out for general use throughout Clang. Rewriting the same predicates over and over again is bad for code size and code maintainence. Using the functions in <ctype.h> is generally unsafe unless they are specified to be locale-independent (i.e. only isdigit and isxdigit). The next commit will try to clean up uses of <ctype.h> functions within Clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174765 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
harInfo.cpp
|
d46b7ec911ce1cb837397d5e12fe9928f63de6ab |
07-Feb-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add a *San + modules FIXME. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174565 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
|
2821e180094459cbdef37e7d7c12bb406d5b82ba |
01-Feb-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
Add some missing PPC cpus git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174215 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3c6aaeb26202b41173dd9ea982833fe975147d80 |
01-Feb-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add -mqpx and -mno-qpx feature flags to toggle use of the PPC QPX vector instruction set I've renamed the altivec test to ppc-features (because now there is more than one feature to test). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174204 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5ccd3d0214b9d765a1bb41872da27d3c5530ab2b |
01-Feb-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add PPC A2Q core and BG/Q preprocessor definitions The a2q core is the variant of the a2 core used on the BG/Q supercomputers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174151 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
199402b9e081dedc28e19ab6e727470b34f2f64d |
01-Feb-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
Enable -fno-altivec, -mno-altivec for PowerPC. Introduces these negation forms explicitly and uses them to control a new "altivec" target feature for PowerPC. This allows avoiding generating Altivec instructions on processors that support Altivec. The new test case verifies that the Altivec "lvx" instruction is not used when -fno-altivec is present on the command line. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174140 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c264e16a42b3f6c36521857a29ea0949d9781c22 |
31-Jan-2013 |
Tim Northover <Tim.Northover@arm.com> |
Add support for AArch64 target. In cooperation with the LLVM patch, this should implement all scalar front-end parts of the C and C++ ABIs for AArch64. This patch excludes the NEON support also reviewed due to an outbreak of batshit insanity in our legal department. That will be committed soon bringing the changes to precisely what has been approved. Further reviews would be gratefully received. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174055 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
566f06311f315087a27e882aafc05cb505912c27 |
30-Jan-2013 |
Filipe Cabecinhas <me@filcab.net> |
Changed to static_cast, due to post-commit review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173980 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
825648a9e2de81f58e425690c2f4bd50404fa433 |
30-Jan-2013 |
Filipe Cabecinhas <me@filcab.net> |
Cast to remove the narrowing conversion error in c++11. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173978 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
877761c56d850a6cc5f9246bf248c8a4dc2b0554 |
30-Jan-2013 |
Richard Trieu <rtrieu@google.com> |
Handle passing non-Qualtypes to %diff better. Instead of asserting, fall back to printing the default case. This is a fix for PR15023. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173965 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cb5620c9b213f4bd323912159fdddda35e258a14 |
30-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Move UTF conversion routines from clang/lib/Basic to llvm/lib/Support This is required to use them in TableGen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173924 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
onvertUTF.c
onvertUTFWrapper.cpp
|
adeb7822cb7947194fef0e12d2d6583ccb8240b5 |
26-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
<limits.h> includes <linux/limits.h> on Linux, no need to special-case it git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173578 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
713b7c011869f177dc76e6df4f7f44b1bd073bb0 |
26-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Since we're stuck with realpath for the header <-> module mapping, factor the realpath calls into FileManager::getCanonicalName() so we can cache the results of this epically slow operation. 5% speedup on my modules test, and realpath drops out of the profile. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173542 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
b8b2c9da87e7d70a1679db026f40548b3192b705 |
25-Jan-2013 |
John McCall <rjmccall@apple.com> |
First pass at abstracting out a class for the target C++ ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173514 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
b0fc94ceaf1462a56068bbe400e6f22ef96ac681 |
22-Jan-2013 |
Adhemerval Zanella <azanella@linux.vnet.ibm.com> |
PowerPC: fix __builtin_eh_return_data_regno return git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173188 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cd376b63c42214c7851ca917e7da9d30f9e84fa4 |
09-Jan-2013 |
Stephen Hines <srhines@google.com> |
Update Clang for merge to r171906. clang-tblgen-rules.mk - New AttrDump.inc target lib/AST/Android.mk lib/Analysis/Android.mk lib/Basic/Android.mk lib/Lex/Android.mk lib/Parse/Android.mk lib/Sema/Android.mk lib/StaticAnalyzer/Checkers/Android.mk Change-Id: If31b4c9123f730ab851f11b00b0688166b14b4b2
ndroid.mk
|
15bb58edc9d053aa49c28167deb41ff0409ddabc |
21-Jan-2013 |
Stephen Hines <srhines@google.com> |
Merge commit 'd130fd2e141f1fef412c2d58e7385370801bd718' into merge-llvm Conflicts: lib/Basic/Targets.cpp Change-Id: I90a669a33ffe4de8b32c8459016fd0b2a55da0ad
|
dbee9491716f98d226b3b15cd96dacb01ea69c54 |
18-Jan-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Enable inlining of atomic ops on mips32 and mips64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172855 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4f45bc099f2665bc6e4bcbb169aa452390dbf3fe |
18-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Add support for -fsanitize-blacklist git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172808 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
argets.cpp
|
b6cbe517237c3c223beb064d60d5b49e56d65c06 |
14-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Implement parsing, AST, (de-)serialization, and placeholder global metadata for linking against the libraries/frameworks for imported modules. The module map language is extended with a new "link" directive that specifies what library or framework to link against when a module is imported, e.g., link "clangAST" or link framework "MyFramework" Importing the corresponding module (or any of its submodules) will eventually link against the named library/framework. For now, I've added some placeholder global metadata that encodes the imported libraries/frameworks, so that we can test that this information gets through to the IR. The format of the data is still under discussion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172437 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
cfa88f893915ceb8ae4ce2f17c46c24a4d67502f |
12-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove useless 'llvm::' qualifier from names like StringRef and others that are brought into 'clang' namespace by clang/Basic/LLVM.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172323 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
odule.cpp
argets.cpp
|
c3cd6f7a5d33ad44f6c9cf4faa7046c77baa128e |
12-Jan-2013 |
Matt Beaumont-Gay <matthewbg@google.com> |
Fix -Wunused-comparison for comparisons in arguments to function-like macros. Previously, -Wunused-comparison ignored comparisons in both macro bodies and macro arguments, but we would still emit a -Wunused-value warning for either. Now we correctly emit -Wunused-comparison for expressions in macro arguments. Also, add isMacroBodyExpansion to SourceManager, to go along with isMacroArgExpansion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172279 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7266cf6464bc3ec65044c5783df739cfe7b6cd61 |
10-Jan-2013 |
Guy Benyei <guy.benyei@intel.com> |
Enable intel_ocl_bicc for x86_64 target only. Remove fix from 171969 that enabled this extension for multiple targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172052 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
390a70f718871933cbfd751f8c3dfde28a762a18 |
05-Jan-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Fix data layout string. Add 64 to the list of native integer widths and add stack alignment information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171588 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
35abfcd3285ad82fa269b8f2468dee01a4dceb52 |
02-Jan-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
DiagnosticIds: Fix offset/ID calculation, no impact outside this code. Patch by Will Dietz: Minor touchup so the values of Offset/ID reflect their intention. Previously, the sum (Offset+ID) was correct, but Offset/ID individually were wrong. Caught by investigating unsigned overflow reported by -fsanitize=integer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171421 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
1a090f1b239889d0b48e1413152e88ed07e6e09d |
02-Jan-2013 |
Anshuman Dasgupta <adasgupt@codeaurora.org> |
Correct Hexagon DataLayout string. Fixes bug 14744. Patch by Krzysztof Parzyszek! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171415 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4e24f0f711e2c9fde79f19fa1c80deaab3f3b356 |
02-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
s/CXX0X/CXX11/g, except for __GNU_EXPERIMENTAL_CXX0X__, and update a few nearby 'C++0x' comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171372 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
3b844ba7d5be205a9b4f5f0b0d1b7978977f4b8c |
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Rewrite #includes for llvm/Foo.h to llvm/IR/Foo.h as appropriate to reflect the migration in r171366. Re-sort the #include lines to reflect the new paths. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171369 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
80ad52f327b532bded5c5b0ee38779d841c6cd35 |
02-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
s/CPlusPlus0x/CPlusPlus11/g git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171367 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
odule.cpp
peratorPrecedence.cpp
argets.cpp
|
38980086c0f791e8c23cc882574f18e5b4a87db6 |
25-Dec-2012 |
Guy Benyei <guy.benyei@intel.com> |
Add intel_ocl_bicc calling convention as a function attribute to clang. The calling convention is already implemented in LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171056 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ab13751d76be4473e9317d3885cb351b79f18492 |
21-Dec-2012 |
Quentin Colombet <qcolombet@apple.com> |
Add ARM cortex-r5 subtarget as available mcpu git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170909 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
65548b305a29748d8365b10040a9681ba9423c78 |
20-Dec-2012 |
Daniel Jasper <djasper@google.com> |
Remove namespace qualifier that lead to build breakage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170759 91177308-0d34-0410-b5e6-96231b3b80d8
peratorPrecedence.cpp
|
909610266e67ce40a9d8a4df8be81b3de999b120 |
20-Dec-2012 |
Daniel Jasper <djasper@google.com> |
Move operator precedence calculation to new header Thereby, it can be reused by clang-format and others. Review: http://llvm-reviews.chandlerc.com/D229 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170757 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
peratorPrecedence.cpp
|
ad017fa7a4df7389d245d02a49b3c79ed70bedb9 |
20-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Revert r170500. It over-zealously converted *ALL* things named Attributes, which is wrong here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170721 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
5b9268f26ac53a74d2c504279fe577d988d5615d |
20-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix code that attempted to produce a diagnostic with one DiagnosticEngine, then produce a note for that diagnostic either with a different DiagnosticEngine or after calling DiagnosticEngine::Reset(). That didn't make any sense, and did the wrong thing if the original diagnostic was suppressed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170636 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
094dbf917127a1228147587076d59ca45b7c258d |
19-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170500 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
d53c2d30cf89eca5c165d682f6cc1261f54674fd |
16-Dec-2012 |
Craig Topper <craig.topper@gmail.com> |
Don't use SourceLineCache in getColumnNumber if LastLineNoResult is past the end of the cache. Fixes PR14570. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170281 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e72f4d93ed44e00e1b1433768f0515b9c4f38562 |
14-Dec-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Targets.cpp: [cygwin] Add the predefined macro "_X86_", according to newer version of cygwin/w32api. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170188 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8a03357d13daa40d341e5724ed47039b4d8af140 |
13-Dec-2012 |
Guy Benyei <guy.benyei@intel.com> |
Remove little endian specification from SPIR data layout - SPIR doesn't define endiannes in the data layout. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170125 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
27fa2364b05ab26138c2ecf0eac1937b7fc6c037 |
13-Dec-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Initial support for FreeBSD on ARM. Patch by Andrew Turner. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170096 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
21fa5d182f7b0b65c8233d6e228fc374d6d6e8bb |
12-Dec-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
PR14581: Make SourceLocation::printToString work, or it will always return an empty string. No test case, this is debugging code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169980 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
1b257afbae854c6817f26b7d61c4fed8ff7aebad |
11-Dec-2012 |
Douglas Gregor <dgregor@apple.com> |
Use @import rather than @__experimental_modules_import, since the latter is rather a mess to type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169919 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
bd5da3ca593fbf354fd19c2894eee50694c96788 |
11-Dec-2012 |
Guy Benyei <guy.benyei@intel.com> |
Add SPIR32/SPIR64 targets to Clang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169917 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a07b59e5e9b55033239c80552094421a01b75c8a |
11-Dec-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Speed up looking up static diagnostic infos. Instead of doing a binary search over the whole diagnostic table (which weighs a whopping 48k on x86_64), use the existing enums to compute the index in the table. This avoids loading any unneeded data from the table and avoids littering CPU caches with it. This code is in a hot path for code with many diagnostics. 1% speedup on -fsyntax-only gcc.c, which emits a lot of warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169890 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
e5d30e3b403539b10aaa52f03875a2243bf88904 |
11-Dec-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Extend stat query APIs to explicitly specify if the query is for a file or directory, allowing just a stat call if a file descriptor is not needed. Doing just 'stat' is faster than 'open/fstat/close'. This has the effect of cutting down system time for validating the input files of a PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169831 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
fff3248e69c478cfb4d1a1ffdefb808d5885535b |
09-Dec-2012 |
Aaron Ballman <aaron@aaronballman.com> |
Virtual method overrides can no longer have mismatched calling conventions. This fixes PR14339. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169705 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6e399b42b5356d8ee59eb5dc4da8c89a0d0b7ae1 |
08-Dec-2012 |
David Chisnall <csdavec@swan.ac.uk> |
long double should be 64 bits on FreeBSD/MIPS64. It possibly should be on Linux too, as I think we inherited it from there. The ABI spec says 128-bit, although I think SGI's compiler on IRIX may be the only thing ever to support this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169674 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
12f37e411462b8388eb1309357bd62257debacac |
07-Dec-2012 |
DeLesley Hutchins <delesley@google.com> |
Fix analysis based warnings so that all warnings are emitted when compiling with -Werror. Previously, compiling with -Werror would emit only the first warning in a compilation unit, because clang assumes that once an error occurs, further analysis is unlikely to return valid results. However, warnings that have been upgraded to errors should not be treated as "errors" in this sense. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169649 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
441d9f7a36d3289eed0299823f05f70f810364ee |
04-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Adapt to LLVM commit 169291 which streamlines the usage of NaCl/NativeClient in the triple. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169292 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
55fc873017f10f6f566b182b70f6fc22aefa3464 |
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all of Clang's files under 'lib', and fix up the broken headers uncovered. This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files. I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169237 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
iagnostic.cpp
iagnosticIDs.cpp
ileManager.cpp
dentifierTable.cpp
odule.cpp
ourceManager.cpp
argetInfo.cpp
okenKinds.cpp
ersion.cpp
|
6e6330c07a42ace74637d0ad7356a2fa20de81ec |
01-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Don't emit a warning with an input/output parameter. We assume the user knows what they're doing here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169059 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e2dbaa9f78be2b09b0723d1b614286412808b5d3 |
01-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Don't warn if the input size is less than the register size. Also don't warn if the output size is greater than the register size. No truncation occurs with those. Reword warning to make it clearer what's the problem is. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169054 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
74632aab3ad87c89823421d8239a47b6697b6e79 |
30-Nov-2012 |
Quentin Colombet <qcolombet@apple.com> |
Add ARM cortex-a5 subtarget git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168958 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
398b8e86ab421592f9e72b92c4558ea865b26e86 |
30-Nov-2012 |
Quentin Colombet <qcolombet@apple.com> |
Revert commit revision r168953, to change the commit message, which was empty git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168956 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b3233f5ed4411af458dc66fa566df2ba7510d26f |
29-Nov-2012 |
Quentin Colombet <qcolombet@apple.com> |
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168953 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6902e4146d426998ff6a94b16776c1b3f805a048 |
27-Nov-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Fix the definition of the vfork() builtin on Haiku. PR14378. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168674 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
f5824998702fad8eb2450e992b48d710a59723ff |
26-Nov-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Add missing "break". Thanks to Craig for spotting it. I'm looking at ways to fix the relevant test so it can catch this sort of mistake. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168618 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7baa711e61258a762db42e449e424bd0928318a6 |
17-Nov-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Enable inlining of 4 byte atomic ops on ppc32, 8 byte atomic ops on ppc64. Also fixes a bit/byte mismatch when checking if a target supports atomic ops of a certain size. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168260 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
faf3538605ef3c5ba475639424f6f94ec4aa5179 |
17-Nov-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Add missing features for misc x86 CPUs to CPU feature translation. Patch by Jung-uk Kim. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168239 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
612db2aa100453710ce9eb9032268ae30b902d4e |
17-Nov-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Clean up X86 target feature translation code slightly. No intended functional change. Patch by Jung-uk Kim. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168237 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
49a87549f4dc95ecb3d8a593b71df7c167a51f85 |
16-Nov-2012 |
Douglas Gregor <dgregor@apple.com> |
Since CreateTargetInfo is taking ownership of the target options, pass it as a pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168136 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
62221b17c90457df9ca0ff20bb54d634e8951def |
15-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -cc1 option -fno-diagnostics-use-presumed-location, a handy mode for working with preprocessed testcases. This causes source locations in diagnostics to point at the spelling location instead of the presumed location, while still keeping the semantic effects of the line directives (entering and leaving system-header mode, primarily). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168004 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
825d386c1d66c2444117c0142c4d79246aaaa9bd |
14-Nov-2012 |
Eric Christopher <echristo@gmail.com> |
Remove the cellspu port. Approved by Chris Lattner. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167983 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f634bdfbf42758f7d49b468df09efa3686f7b699 |
12-Nov-2012 |
Bill Wendling <isanbard@gmail.com> |
The register constraint could mean a 16- or 8-bit register. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167735 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
68fd608c2c0866064e974c3d43778c47c1cbb080 |
12-Nov-2012 |
Bill Wendling <isanbard@gmail.com> |
Check that the input size is correct for the given constraint. The 'a', 'c', and 'd' constraints on i386 mean a 32-bit register. We cannot place a 64-bit value into the 32-bit register. Error out instead of causing the compiler to spew general badness. <rdar://problem/12415959> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167717 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
18f236886b02e999bea6ceff3aa90951198007cb |
11-Nov-2012 |
Nico Weber <nicolasweber@gmx.de> |
Remove unneeded includes from IdentifierTable git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167694 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
463eb89d5e36b05d74c14b937384076d745b3b84 |
10-Nov-2012 |
Michael Liao <michael.liao@intel.com> |
Add clang support of RTM from TSX - New options '-mrtm'/'-mno-rtm' are added to enable/disable RTM feature - Builtin macro '__RTM__' is defined if RTM feature is enabled - RTM intrinsic header is added and introduces 3 new intrinsics, namely '_xbegin', '_xend', and '_xabort'. - 3 new builtins are added to keep compatible with gcc, namely '__builtin_ia32_xbegin', '__builtin_ia32_xend', and '__builtin_ia32_xabort'. - Test cases for pre-defined macro and new intrinsic codegen are added. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167665 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9410928fb8434e8d26364cee45ebc1b798aafe41 |
09-Nov-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a SourceLocation::printToString() that returns in a std::string what dump() writes to stderr; for debugging purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167629 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
ef7bceadf4b43c953855013577afac4c2fcb1d62 |
08-Nov-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Set TLSSupported to false on Haiku. Haiku does not support this (yet). Leaving it set to true leads to configure scripts detecting __thread being available and Clang emitting code for it, resulting in binaries the runtime_loader will refuse to load. Patch by Jonathan Schleifer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167576 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6a1f49423baf6fa0358f396f0d926a3263cb5ff9 |
06-Nov-2012 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Windows doesn't define S_IFIFO. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167468 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
ce36ecd5a509af8fc5924d21694df36e8bc94a95 |
05-Nov-2012 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Add support for reading named pipes as the main file. - The whole {File,Source}Manager is built around wanting to pre-determine the size of files, so we can't fit this in naturally. Instead, we handle it like we do STDIN, where we just replace the main file contents upfront. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167419 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
ca1b62a33cacee20d3bd756210d3211dd663209e |
05-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Rename LangOptions members for address sanitizer and thread sanitizer from *Sanitizer to Sanitize* in preparation for later patches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167405 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
31ba273ef83d648ac78d96a4205ffad6b3e430a6 |
31-Oct-2012 |
Seth Cantrell <seth.cantrell@gmail.com> |
isLegalUTF8() was giving the wrong answer invalid but not caught by isLegalUTF8(): 0xED 0x75 0x84 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167063 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
dbaf4bc5864d80a3f3e51700219c30900cde7300 |
29-Oct-2012 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
This patch adds alignment information for long double to the 64-bit PowerPC ELF subtarget. The existing description string is moved from PPC64TargetInfo to its DarwinTargetInfo subclass, to avoid any changes to the Darwin ABI. PPC64TargetInfo now has two possible description strings: one for FreeBSD, which requires 8-byte alignment, and a default string that requires 16-byte alignment. I've added a test for PPC64 Linux to verify the 16-byte alignment. If somebody wants to add a separate test for FreeBSD, that would be great. Note that there is a companion patch to update the alignment information in LLVM, which I am committing now as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166927 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e6b3dbae38f62164cab3989380cd940242d80120 |
29-Oct-2012 |
Ulrich Weigand <ulrich.weigand@de.ibm.com> |
Handle '*' and '#' asm constraint modifiers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166924 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
50d46caf00c743312e0ea1f87a693d504b12ef51 |
26-Oct-2012 |
Bill Wendling <isanbard@gmail.com> |
Recommit Eric's code to validate ASM string's constraints and modifiers. This code checks the ASM string to see if the output size is able to fit within the variable specified as the output. For instance, scalar-to-vector conversions may not really work. It's on by default, but can be turned off with a flag if you think you know what you're doing. This is placed under a flag ('-Wasm-operand-widths') and flag group ('-Wasm'). <rdar://problem/12284092> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166737 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b16abb1bd8ed94c7994836de24915703e6a4e81a |
25-Oct-2012 |
David Tweed <david.tweed@arm.com> |
Modify the targets to set appropriate calling convention defaults and C variables when using a gnueabihf or aapcs-vfp target. Tested by me and Wei-Ren Chen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166679 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c6cd9afd15f0f83ee07844e592d2a698416f33ca |
25-Oct-2012 |
Bill Wendling <isanbard@gmail.com> |
Revert r166647 to rethink the patch... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166655 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a0b9ce03880b7dbab766ec80817eb17a20eba508 |
25-Oct-2012 |
Bill Wendling <isanbard@gmail.com> |
Add some support for diagnosing possibly mismatched constraint, type size and modifiers. (From an idea by Eric...) <rdar://problem/12284092> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166647 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
02c23ebf41ae2f70da0ba7337e05c51fbfe35f7f |
24-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Make DiagnosticOptions intrusively reference-counted, and make sure the various stakeholders bump up the reference count. In particular, the diagnostics engine now keeps the DiagnosticOptions object alive. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166508 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4d3ee9bc48dc1e6aea0b0d451a4b98e20b04ce00 |
22-Oct-2012 |
Daniel Dunbar <daniel@zuster.org> |
Fix pre-commit refacto failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166431 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
849289e531a97895784ab86b550e43d190618dff |
22-Oct-2012 |
Daniel Dunbar <daniel@zuster.org> |
driver/Darwin: Follow up to last patch, M-class CPUs are AAPCS but not EABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166430 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0872a06d1ee1a3b62ef833f955051418d18006a1 |
20-Oct-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
When associating file ranges of macro arguments with their macro expansion ranges, make sure to check all the FileID entries that are contained in the spelling range of the expansion for the macro argument. Fixes rdar://12537982 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166359 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d9cad403c0f76cbbcc53efbfeee3d59f9f0b6e09 |
19-Oct-2012 |
Craig Topper <craig.topper@gmail.com> |
Teach getColumnNumber to use the line cache to get the start of the line if its on the same line as the last call to getLineNumber. Prevents needing to scan backwards for the new line. Fixes PR14106. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166265 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
57016dda61498294120b1a881d9e6606337b29d9 |
17-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Serialize TargetOptions into an AST file, and make sure that we keep target options around so they can be accessed at any point (rather than keeping them transient). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166072 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
263366f9241366f29ba65b703120f302490c39ff |
17-Oct-2012 |
Derek Schuff <dschuff@google.com> |
Add pnaclcall convention to Native Client targets. Because PNaCl bitcode must be target-independent, it uses some different bitcode representations from other targets (e.g. byval and sret for structures). This means that without additional type information, it cannot meet some native ABI requirements for some targets (e.g. passing structures containing unions by value on x86-64). To allow generation of code which uses the correct native ABIs, we also support triples such as x86_64-nacl, which uses target-dependent IR (as opposed to le32-nacl, which uses byval and sret). To allow interoperation between the two types of code, this patch adds a calling convention attribute to be used in code compiled with the target-dependent triple, which will generate code using the le32-style bitcode. This calling convention does not need to be explicitly supported in the backend because it determines bitcode representation rather than native conventions (the backend just needs to undersand how to handle byval and sret for the Native Client OS). This patch implements __attribute__((pnaclcall)) to generate calls in bitcode according to the le32 bitcode conventions, an attribute which is accepted by any Native Client target, but issues a warning otherwise. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166065 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9a022bb007a3e77e1ac1330f955a239cfb1dd0fb |
15-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Teach TargetInfo to hold on to the TargetOptions with which it was created. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165943 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
2b49d1f0ad790a8a5d514af1be211591a746cb73 |
15-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce the notion of excluded headers into the module map description. Previously, one could emulate this behavior by placing the header in an always-unavailable submodule, but Argyrios guilted me into expressing this idea properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165921 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
6505a29cfd629e1a4820282b4cf3871efc1e696f |
13-Oct-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Add TargetInfo for r600. Patch by Tom Stellard. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165850 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
186ec9c2e6db6fd5827f2078d2a6b82085be54d3 |
13-Oct-2012 |
Ted Kremenek <kremenek@apple.com> |
Silence dead store warning. It is conceptually possible we will add more code that references SourceFile, so removing the dead store doesn't seem appropriate for the long term. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165837 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7da46f949f6ec63d7c7dcda5f49588261c669ffb |
11-Oct-2012 |
Derek Schuff <dschuff@google.com> |
Properly factor Native Client defines to support NaCl as an OS with x86/ARM architecture git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165722 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
babaf31d401310464db93627ef6b195a7ffb1029 |
11-Oct-2012 |
Derek Schuff <dschuff@google.com> |
Make X86_64ABIInfo clean for ABIs with 32 bit pointers, such as X32 and Native Client git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165715 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
146e5a4a787a2ebfe89a6b74e7c22d850bf1c858 |
11-Oct-2012 |
Manman Ren <mren@apple.com> |
X86: add F16C support in Clang Support the following intrinsics: _mm_cvtph_ps, _mm256_cvtph_ps, _mm_cvtps_ph, _mm256_cvtps_ph rdar://12407875 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eae5a820bced67465c8517793a1602dfaeed8a06 |
10-Oct-2012 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Fix PR 11709: Change the definition of va_list to meet AAPCS requirement AAPCS ABI Section 7.1.4 [1] specifies that va_list should be defined as struct __va_list { void *__ap;}; And in C++, it is defined in namespace std. [1] http://infocenter.arm.com/help/topic /com.arm.doc.ihi0042d/IHI0042D_aapcs.pdf Patch by Weiming Zhao. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165609 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
82bfa19fe3be324b13fdbcda46304b52c500f0d4 |
02-Oct-2012 |
Aaron Ballman <aaron@aaronballman.com> |
Allowing individual targets to determine whether a given calling convention is allowed or ignored with warning. This allows for correct name mangling for x64 targets on Windows, which in turn allows for linking against the Win32 APIs. Fixes PR13782 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165015 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cfaab00963234237b46b52996e9d72b20540e97f |
30-Sep-2012 |
Bob Wilson <bob.wilson@apple.com> |
Add ARM VFPv4 feature and enable it by default for Swift. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164906 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
336bfa3fb496228a8ab4070def5b4297e5f88358 |
30-Sep-2012 |
Bob Wilson <bob.wilson@apple.com> |
Add armv7s and some other arm variants supported by Mach-O files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164905 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e2ac16b09ea66ad955752381b82fb8719d003e5e |
29-Sep-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In the Module class, add a reference to the corresponding AST file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164873 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
1c84c68b6d7a92416493ab6c36f630de48c65d08 |
28-Sep-2012 |
Daniel Jasper <djasper@google.com> |
Set Diag.ErrorOccurred even if a DiagnosticConsumer does not want it in diagnostic count. If a DiagnosticConsumer sub-class overwrites IncludeInDiagnosticCounts, this should change diagnostic counts. However, it currently also influences Diag.ErrorOccurred, which in turn influences the behavior of parsing and semantic analysis (in a way that can make it crash). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164824 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
4d7e0ced7f16a04aabe2d8d91cbbb52fb1162810 |
25-Sep-2012 |
Alexander Kornienko <alexfh@google.com> |
Macro history (de-)serialization. Deserialization currently reads only the latest macro definition. Needs more work. Summary: Passes all tests (+ the new one with code completion), but needs a thorough review in part related to modules. Reviewers: doug.gregor Reviewed By: alexfh CC: cfe-commits, rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D41 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164610 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
615a092a511cd2dfe1a5364ebf5f80e55e33034d |
22-Sep-2012 |
Jordan Rose <jordan_rose@apple.com> |
Use llvm::getOrdinalSuffix to print ordinal numbers in diagnostics. Just a refactoring of common infrastructure. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164443 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
087c65fb270d7f465f221b543731f89343032e90 |
20-Sep-2012 |
Alexander Potapenko <glider@google.com> |
Disable source fortification on Darwin with AddressSanitizer. ASan doesn't play well with -D_FORTIFY_SOURCE, which is enabled by default starting at OS X 10.7 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164299 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7de32964026e4c5ff32cbca484ffb24e73393d87 |
19-Sep-2012 |
Hal Finkel <hfinkel@anl.gov> |
Add e500mc and e5500 to the list of valid PPC CPU names. Patch by Tobias von Koch! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164176 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2df67ea86f64c2a94b973d8fda2e3c1fd53fc84d |
13-Sep-2012 |
Silviu Baranga <silviu.baranga@arm.com> |
This patch introduces A15 as a target in Clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163804 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9f0b1324a5352713337c75ef4a5acffd96609c6c |
11-Sep-2012 |
Stephen Hines <srhines@google.com> |
Merge branch 'upstream' into merge-2012_09_10
|
8b0703d641f8a523eec31dd2352c4a650b6738b9 |
08-Sep-2012 |
Anton Korobeynikov <asl@math.spbu.ru> |
Do not construct StringRef from NULL argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163465 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
70a5cca8e7353e2e3bd16b7e6a47a35695803d5d |
08-Sep-2012 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide some ACLE C defines. This should fix PR13796 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163464 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e5f0588840b20897631cc8110344fd2745ef4caa |
08-Sep-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
When a bad UTF-8 encoding or bogus escape sequence is encountered in a string literal, produce a diagnostic pointing at the erroneous character range, not at the start of the literal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163459 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
onvertUTFWrapper.cpp
|
2675b8ed4063ee1d2553cb4acad54d86b2d2047c |
06-Sep-2012 |
Enrico Granata <egranata@apple.com> |
Enabling the UTF conversion routines that were previously conditionally ifdef'ed out. This change is required to support enhancements in the LLDB data formatters git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163331 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
31ba6135375433b617a8587ea6cc836a014ebd86 |
06-Sep-2012 |
Roman Divacky <rdivacky@freebsd.org> |
Dont cast away const needlessly. Found by gcc48 -Wcast-qual. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163325 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5b86ffd219bdee7720217d5755b772726668b242 |
05-Sep-2012 |
Abramo Bagnara <abramo.bagnara@gmail.com> |
Allow disabling of wchar_t type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163221 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
94a7142f74bb4a9daa53c22087b19d4568073109 |
02-Sep-2012 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Rename ANDROIDEABI to Android. Most of the code guarded with ANDROIDEABI are not ARM-specific, and having no relation with arm-eabi. Thus, it will be more natural to call this environment "Android" instead of "ANDROIDEABI". Note: We are not using ANDROID because several projects are using "-DANDROID" as the conditional compilation flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163088 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
600a513a0ff19c7dbedc4292866caddeceb94f57 |
29-Aug-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Define __mips64 / __mips64__ macros for MIPS 64-bit targets. The patch suggested by Brad Smith. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162858 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1d8ae1d7066e1e4a413c791648e3287827f3db06 |
29-Aug-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Use getTargetDefines() virtual function in MipsTargetInfoBase successors to define all macros for MIPS targets. Remove redundant virtual function getArchDefines(). Two virtual functions for this task are really too much. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162853 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d4935a0fbe0d210e33313e8b3dd6e363491612cd |
29-Aug-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Factor out MIPS macro definitions common for all MIPS targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162852 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
260e5067f3cca1630c6ed88757a15b23622b52d1 |
29-Aug-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Define _MIPS_ARCH and _MIPS_ARCH_<cpu name> macros for MIPS targets. The patch suggested by Logan Chien. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162840 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
80ea4bc944eb01c220eeaa004b21ad709ba928e1 |
24-Aug-2012 |
Stephen Hines <srhines@google.com> |
Merge branch 'upstream' into merge_2 Conflicts: lib/Sema/SemaDeclAttr.cpp Change-Id: If47d0d39459760017258502b4d9e859ac36a273b
|
9e63dc582b3bfb9ab2e80631b5311b070a73dff8 |
17-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Avoid binding a reference to a dereferenced null pointer, if we try to emit a diagnostic before we have a source manager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162070 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8c019df55885e8dbe2819a6c719f5b58f83028f8 |
17-Aug-2012 |
Eric Christopher <echristo@apple.com> |
Remove FIXME, the constraints contain more options than the current available documentation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162065 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a0dfca1f030b06c7f547238f63bfedc969994fcc |
17-Aug-2012 |
Eric Christopher <echristo@apple.com> |
Add a missing 'break' to ensure that we reject inline assembly constraints we don't recognize. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162064 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c95ad0061f093de2f73b8aab58ff3f0444d0123f |
15-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix undefined behavior: reference bound to dereferenced null pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161899 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
00aae5243d965aa7bcee81a39ba0900c7869be21 |
14-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix undefined behavior: don't bind a dereferenced null pointer to a reference. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161832 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6bd3291605a3034b858c8aeecc6990fa4f979f6c |
10-Aug-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
Frontend: define _LP64 in a target-independent way Instead of adding it to each individual subclass in Targets.cpp, simply check the appropriate target values. Where before it was only on x86_64 and ppc64, it's now also defined on mips64 and nvptx64. Also add a bunch of negative tests to ensure it is *not* defined on any other architectures while we're here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7094dee95f8c915d27097ac18b47d1ef31fd72ed |
10-Aug-2012 |
Joerg Sonnenberger <joerg@bec.de> |
Add missing cctype includes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161660 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
dentifierTable.cpp
|
42f74f21ece01dc8573d5377859d327fbb23b26c |
09-Aug-2012 |
Eli Friedman <eli.friedman@gmail.com> |
clang support for Bitrig (an OpenBSD fork); patch by David Hill. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161546 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f0e956bb379be086b03580af4d341467c3546c04 |
08-Aug-2012 |
Hans Wennborg <hans@hanshq.net> |
Revert part of r161175 which was wrong for OpenBSD's PowerPC target. Contributed by Brad Smith <brad@comstyle.com> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161481 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ee959355b93c0648fea88dc986d196e3705407dc |
03-Aug-2012 |
Shih-wei Liao <sliao@google.com> |
Apply changes to migrate to CLANG-160673-20120724. Change-Id: I00d23ac9b893c62dca281ec771eeb5f911854bae
ndroid.mk
|
08fc8eb5a1cc9c01af67e016ab21c9b905711eb1 |
03-Aug-2012 |
Shih-wei Liao <sliao@google.com> |
Merge with Clang upstream r160673 (Jul 24th 2012) Conflicts: lib/Sema/SemaDeclAttr.cpp Change-Id: I37f02f20642a037b9da8d35fefa01986cd250b14
|
5e601dcb398f8af5465d0d1a97a7fcf38d6932ec |
02-Aug-2012 |
Hans Wennborg <hans@hanshq.net> |
Add OpenBSD arch targets for powerpc, arm, mips64, mips64el and sparc. Contributed by Brad Smith <brad@comstyle.com> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161175 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e48667f2ca71842fa000e9fddd241309a611578b |
01-Aug-2012 |
Hans Wennborg <hans@hanshq.net> |
TLS is not supported on OpenBSD This fixes PR13502 and adds a test to keep track of which targets support TLS and which do not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161124 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
98be86038b1e891a05583061c55dfa974150eb2c |
31-Jul-2012 |
Manuel Klimek <klimek@google.com> |
Fixes a segfault in Tooling when using pch's: Clear the FileManager's stat cache in between running translation units, as the stat cache loaded from a pch is only valid for one compiler invocation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161047 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
e43031344b17cdb345957c4acc9d39d26f86efd3 |
27-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Add a function to convert a single Unicode code point to a UTF8 sequence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160890 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
onvertUTFWrapper.cpp
|
866abce3b93ab01bac00e0383a753819893b868a |
27-Jul-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
clang/lib: [CMake] Reformat, alphabetize lists. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160850 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
a5a4cba88796cb1b8365ed523e8b6fdce9e512bd |
24-Jul-2012 |
Francois Pichet <pichet2000@gmail.com> |
Change the way KEYNOMS is defined to be more comprehensible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160663 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
dfd110ce5e64077ec94df195233e7a39895bf15e |
22-Jul-2012 |
Francois Pichet <pichet2000@gmail.com> |
char16_t and char32_t are defined via typedef in MSVC 11 RC. So introduce a way to disable keywords under Microsoft mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160612 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
f9e9af7df0cea6e997ac04131c7af6ca4384b0cc |
14-Jul-2012 |
Chad Rosier <mcrosier@apple.com> |
Add a per target max vector alignment field (e.g., 32-byte alignment for x86 due to AVX). Currently, if no aligned attribute is specified the alignment of a vector is inferred from its size. Thus, very large vectors will be over-aligned with no benefit. Target owners should set this target max. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160209 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
5561977175c04dc2bae53b0f577a5c1ca83b96ff |
13-Jul-2012 |
Richard Trieu <rtrieu@google.com> |
Modify tree printing mode for template type diffing. If a diagnostic has multiple %diff's, only print the first tree and fallback to inline printing for the rest of the diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160193 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f7226fbe677a9c7578fa0613491ed15c6dc6a5e1 |
12-Jul-2012 |
John McCall <rjmccall@apple.com> |
Add the ObjFW runtime. Patch by Jonathan Schleifer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160102 91177308-0d34-0410-b5e6-96231b3b80d8
bjCRuntime.cpp
|
f9181a787102de3cd2005e9714d899c06c612a9c |
12-Jul-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
clang/lib/Basic/CMakeLists.txt: Add missing dependency, ClangDiagnosticComment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160096 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
a5ef44ff5d93a3be6ca67782828157a71894cf0c |
11-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Enable comment parsing and semantic analysis to emit diagnostics. A few diagnostics implemented -- see testcases. I created a new TableGen file for comment diagnostics, DiagnosticCommentKinds.td, because comment diagnostics don't logically fit into AST diagnostics file. But I don't feel strongly about it. This also implements support for self-closing HTML tags in comment lexer and parser (for example, <br />). In order to issue precise diagnostics CommentSema needs to know the declaration the comment is attached to. There is no easy way to find a decl by comment, so we match comments and decls in lockstep: after parsing one declgroup we check if we have any new, not yet attached comments. If we do -- then we do the usual comment-finding process. It is interesting that this automatically handles trailing comments. We pick up not only comments that precede the declaration, but also comments that *follow* the declaration -- thanks to the lookahead in the lexer: after parsing the declgroup we've consumed the semicolon and looked ahead through comments. Added -Wdocumentation-html flag for semantic HTML errors to allow the user to disable only HTML warnings (but not HTML parse errors, which we emit as warnings in -Wdocumentation). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160078 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
ff398965a5abfaf5bc47bc022876f56a28e5b9a7 |
11-Jul-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce a flag in SourceManager to treat non-system source files as "volatile", meaning there's a high enough chance that they may change while we are trying to use them. This flag is only enabled by libclang. Currently "volatile" source files will be stat'ed immediately before opening them, because the file size stat info may not be accurate since when we got it (e.g. from the PCH). This avoids crashes when trying to reference mmap'ed memory from a file whose size is not what we expect. Note that there's still a window for a racing issue to occur but the window for it should be way smaller than before. We can consider later on to avoid mmap completely on such files. rdar://11612916 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160074 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
c6d64a26c28bbeee50e06c94c4f4c08e610327b7 |
11-Jul-2012 |
Jordan Rose <jordan_rose@apple.com> |
Emit -verify diagnostics even when we have a fatal error. Previously we'd halt at the fatal error as expected, but not actually emit any -verify-related diagnostics. This lets us catch cases that emit a /different/ fatal error from the one we expected. This is implemented by adding a "force emit" mode to DiagnosticBuilder, which will cause diagnostics to immediately be emitted regardless of current suppression. Needless to say this should probably be used /very/ sparingly. Patch by Andy Gibbs! Tests for all of Andy's -verify patches coming soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160053 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
9903e94bee8fbbec6d44fe2de91ccee46f40187f |
11-Jul-2012 |
Justin Holewinski <justin.holewinski@gmail.com> |
Fix handling of curly braces in NVPTX inline asm Fixes bug 13322 Patch by Dmitry Mikushin git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160050 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
be779598aa70a71c56e5d576947ade53e249c602 |
11-Jul-2012 |
Axel Naumann <Axel.Naumann@cern.ch> |
LLVM_ON_WIN32 case: use the proper key in the UniqueFiles map. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160041 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
5ba0559f2f0ddd62de16547af514dbaf93b79585 |
10-Jul-2012 |
Axel Naumann <Axel.Naumann@cern.ch> |
Improve r159256 following Chandler's comments: Implement UniqueFileContainer::erase(), camelCase, add comment on future optimizations of the cache versus de-optimizations of invalidations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159997 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
5409d28b6167032696f4915bb765a6f7db579f3f |
10-Jul-2012 |
Richard Trieu <rtrieu@google.com> |
Properly update the FormattedArgs vector when the template type diffing falls back to regular type printing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159976 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
84f30809a2ce02183609a738aaa116d832e61da3 |
07-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Wire up -mrdrnd for X86. For some reason GCC decided to call the feature rdrnd instead of rdrand, which requires translating it for LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159897 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1c9ae1ce8304a581d87d03bb84d89db477f61dba |
06-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove unreachable default case to pacify clang's -Wcovered-switch-default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159829 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a1b62273f8cb823e74e7b67685c0c681efb8ff9d |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Define __mips_dsp_rev / __mips_dspr2 / __mips_dsp macros if -mdsp or -mdspr2 options are provided. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159774 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d797a85866fd5ce62850dd145396b451364032a3 |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Add -mdsp/-mno-dsp and -mdspr2/-mno-dspr2 command line options support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159769 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1176bcdb21945c7913d684973887e6f588a49236 |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Define __mips16 macro if -mips16 option is provided. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159753 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bbd9916bd91eafb97cc73c2def158b6e5c124d1b |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Replace the pair of boolean flags by enumeration to hold selected float ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159752 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0b273efa37a38deab77dadf72540c9c07c63f8cf |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Add -mips16 / -mno-mips16 command line support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159747 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a422cd0ed4da8cb5a172498f29bb02065707c6ce |
04-Jul-2012 |
David Chisnall <csdavec@swan.ac.uk> |
A few more cleanups for the GNU family of ObjC runtimes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159708 91177308-0d34-0410-b5e6-96231b3b80d8
bjCRuntime.cpp
|
11d3f4cc27e6b923fc32481dc1bb5ec46c7d1f4b |
03-Jul-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Rename the GCC Objective-C runtime to gcc from gnu-fragile and the GNUstep runtime to gnustep from gnu. Fix EH for the GCC runtime. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159684 91177308-0d34-0410-b5e6-96231b3b80d8
bjCRuntime.cpp
|
39d5fa131ff0f2de0f04b16dca086c51102cb1bf |
03-Jul-2012 |
Hal Finkel <hfinkel@anl.gov> |
Add additional architecture defines for PPC targets. Patch by Andy Gibbs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159665 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
941e47cef26fb6300a8d3e366f7c5694277e5849 |
03-Jul-2012 |
Nico Weber <nicolasweber@gmx.de> |
Share ConvertUTF8toWide() between Lex and CodeGen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159634 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
onvertUTFWrapper.cpp
|
ec221bc2a5736458bc2281fd1e3b8cdcd3735193 |
03-Jul-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: Delete a duplicated/malformed doc comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159628 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
529cdf4c2ef0985dd6f4b7b68ab76e6a1a5082d5 |
29-Jun-2012 |
Richard Trieu <rtrieu@google.com> |
Update the %diff modifer to have an alternate string print when a template tree 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159463 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fbf7005138d199bad238f0dd1ff509931a24ab10 |
28-Jun-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Support MIPS DSP Rev1 intrinsics. This patch was reviewed in the llvm-commits list by Jim Grosbach. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159366 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
446ba14432b68e5d37472180fcd4d8144207c5c5 |
27-Jun-2012 |
Axel Naumann <Axel.Naumann@cern.ch> |
Fix for r159256 on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159262 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
3ce42c37b0ef6b10538f5040a33d19a6e6988d05 |
27-Jun-2012 |
Axel Naumann <Axel.Naumann@cern.ch> |
From Vassil Vassilev: 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159256 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
246b6aa6763de8c617d564ef33123a8f3293a80e |
26-Jun-2012 |
Richard Trieu <rtrieu@google.com> |
Add template type diffing to Clang. This feature will provide a better 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159216 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b0d8671f95fe08a220118bca29063ba4d11a9dac |
21-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove a goofy CMake hack and use the standard CMake facilities to 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158888 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
0b92fcb1353d2d8b31b6c485e6caa14568aca43b |
20-Jun-2012 |
John McCall <rjmccall@apple.com> |
Introduce ObjCRuntime::hasWeakClassImport() and use it in the appropriate 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158860 91177308-0d34-0410-b5e6-96231b3b80d8
bjCRuntime.cpp
|
260611a32535c851237926bfcf78869b13c07d5b |
20-Jun-2012 |
John McCall <rjmccall@apple.com> |
Restructure how the driver communicates information about the 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158793 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
bjCRuntime.cpp
ersionTuple.cpp
|
9416d42468eacaae0ea85ab8ed134f5df1a1d142 |
19-Jun-2012 |
Meador Inge <meadori@codesourcery.com> |
Revert predefined decl tracking. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158732 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2e413f977d13d83b5baf7b5e4e93fe7c390959ca |
19-Jun-2012 |
Jordan Rose <jordan_rose@apple.com> |
Fix the location of the fixit for -Wnewline-eof. It turns out SourceManager treating the "one-past-the-end" location as invalid, but then failing to set the invalid flag properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158699 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b8950b8e11272a3b9776568ea423bff016bc996d |
17-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: escaped # characters in Doxygen comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158614 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
759a4b40cab9dd04683a548f998ebe2e443ca6b4 |
16-Jun-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
clang/lib/Basic/FileManager.cpp: Detect the root directory with PathV2. It should be better fix for PR10331, or, "clang X:\foo.c" fails. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158596 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
c5613b26a24a33d7450e3d0bf315c6ccc920ce7b |
16-Jun-2012 |
Meador Inge <meadori@codesourcery.com> |
Explicitly build __builtin_va_list. The target specific __builtin_va_list types are now explicitly built instead of injecting strings into the preprocessor input. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158592 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d3e8eda9a685e95c29ccea52977c0e32a422e563 |
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: delete doc comments from source files where they are broken duplicates of comments that are in the corresponding header files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158550 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ileManager.cpp
|
7285a06a0655ed93e313305182f67edb73890247 |
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: escape # in a Doxygen comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158549 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6557d1304c84233edd854288d4f80b987ad10ed9 |
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: escape @ in a Doxygen comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158548 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
02a84277864e5476b12c0ec687ed09f0b2922471 |
12-Jun-2012 |
Hal Finkel <hfinkel@anl.gov> |
Add PPC support for translating gcc-style -mcpu options into LLVM -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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158334 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b6af69ec6c93f4eba67b638a3f0fece23ad6954b |
10-Jun-2012 |
Craig Topper <craig.topper@gmail.com> |
Add XOP feature flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158284 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
47d9de678162202786aa5f8aa153a7c58a4cebd4 |
08-Jun-2012 |
Douglas Gregor <dgregor@apple.com> |
Switch LineTableInfo to use FileID instead of int for file references, from Tom Honermann! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158211 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d73ef135ba029db59c0b5649e6117845d9e39600 |
06-Jun-2012 |
Jordan Rose <jordan_rose@apple.com> |
Add pedantic warning -Wempty-translation-unit (C11 6.9p1). 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> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158085 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3dbcc889c1ce291b7aa227597d22c009d5c489e3 |
05-Jun-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Mips: Define __mips_hard_float macro additional to __mips_single_float when single float ABI is selected. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157996 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
31380fb01042b814c0fdac532a07531ee9c52946 |
04-Jun-2012 |
Craig Topper <craig.topper@gmail.com> |
Make disabling SSE levels also disable AVX and FMA. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157907 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a7463c34448cbbd6d5262532b4baec78e27931ea |
03-Jun-2012 |
Craig Topper <craig.topper@gmail.com> |
Make AES and PCLMUL features imply SSE2 as that's needed to get the right types defined. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157906 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2ae950726990c09f790931edcf9e6763851ee077 |
03-Jun-2012 |
Craig Topper <craig.topper@gmail.com> |
Add fma feature flag for Intel FMA instructions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157904 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3c0bc15afbcbbf6942a64798ba8a23bb8d9a77d9 |
31-May-2012 |
Craig Topper <craig.topper@gmail.com> |
Add builtin for pclmulqdq instruction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157733 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
90ea0363ef3701b8df8d1c437749297c7ef60e19 |
30-May-2012 |
Craig Topper <craig.topper@gmail.com> |
SSE4A should not imply LZCNT and POPCNT. FMA4 should imply SSE4A. Add missing break at the end of btver1 feature list. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157680 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4dfa5ad7b1f70520f02c754750209138e94b6eb5 |
29-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Define __SSE4A__ when targeting new AMD CPUs. This doesn't really fit the existing SSELevel so it gets an extra flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157630 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2ae3a474447eede3a94a356b243a40c35c5582d2 |
29-May-2012 |
Roman Divacky <rdivacky@freebsd.org> |
Sparc is bigendian. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157626 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
242cb065057558e2e189e9ea289f3a51059e862d |
26-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Only emit one set of braces for __VERSION__, getClangFullRepositoryVersion already adds some. No test as the output is highly dependend on the local configuration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157520 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
2c585b991596859f39860b6094247ba027a03530 |
24-May-2012 |
Justin Holewinski <jholewinski@nvidia.com> |
Replace PTX back-end with NVPTX back-end in all places where Clang cares NV_CONTRIB git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157403 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
edb66f38dbdc501342aa1f17c8a15a34ed73584d |
21-May-2012 |
Peter Collingbourne <peter@pcc.me.uk> |
Teach Clang about the NVPTX backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157173 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4dc34ebf2a0716bf77ba110dab6777a3fc4397dd |
20-May-2012 |
Peter Collingbourne <peter@pcc.me.uk> |
CUDA: add CodeGen support for global variable address spaces. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157167 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5f9688b7c7fdeafdf530056d49f82d2ec6ca457f |
10-May-2012 |
Sirish Pande <spande@codeaurora.org> |
Hexagon V5 FP support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156567 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
51603be62ba78adeb64246b222583dcde4b20b2a |
04-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Synchronize the representations of DeclarationName and Selector so that bridging between the two is free. Saves ~4k of code size, although I don't see any measurable performance difference (unfortunately). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156187 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
d54dff026b02303a35147224de72bb44cbb53c79 |
03-May-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] When validating that the files coming from PCH did not change, also 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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156107 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
70d9b16e951db66152a1d5ecd723edab01267514 |
01-May-2012 |
Craig Topper <craig.topper@gmail.com> |
Enable AVX on AMD Bulldozer processors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155900 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3206403316fa505fbacea92c99ae13c5b664bc3e |
26-Apr-2012 |
Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
Define __ANDROID__ macro on -androideabi targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155632 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fd93630cce9b9bce6b4d735e1277be2c7e3a7fbf |
26-Apr-2012 |
Craig Topper <craig.topper@gmail.com> |
Enable AVX/AVX2 for Sandy Bridge, Ivy Bridge, and Haswell CPUs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155624 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4ddcf3b08da0e92bf73049912d40e79c23d17148 |
25-Apr-2012 |
Chris Lattner <sabre@nondot.org> |
OpenBSD: Remove incorrect -pthread preprocessor define _POSIX_THREADS and replace with _REENTRANT. Also remove undef _POSIX_THREADS in phread.h. Patch by Brad Smith! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155535 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fa784da5b9039ead42323bfe9ae6d33ab3c5c6b3 |
24-Apr-2012 |
Shih-wei Liao <sliao@google.com> |
Merge with CLANG upstream r155088. Conflicts: lib/Basic/Targets.cpp Change-Id: Id80f069ae25e623967b705e9fa11cfd94dd2461c
|
6603ff85d415c2aa72579f1a247012b75bfc2a19 |
23-Apr-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert r155363, due to the underlying patches in LLVM causing regression test suite failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155371 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ac28eca18a9f0a343c78ba90b02dfe52302c1f19 |
23-Apr-2012 |
Sirish Pande <spande@codeaurora.org> |
Hexagon V5 (floating point) support in cfe. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155363 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
103f41d0e72a9e52a07e19cbde58c3afc8735098 |
18-Apr-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert some Hexagon builtin commits to match reverts done to LLVM in r155047. See the LLVM log for the primary motivation: http://llvm.org/viewvc/llvm-project?rev=155047&view=rev Primary commit r154828: - Several issues were raised in review, and fixed in subsequent commits. - Follow-up commits also reverted, and which should be folded into the original before reposting: - r154837: Re-add the 'undef BUILTIN' thing to fix the build. - r154928: Fix build warnings, re-add (and correct) header and license - r154937: Typo fix. Please resubmit this patch with the relevant LLVM resubmission. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155048 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8b2a5d2ac07229ce64cc04204118ce0296ea0ea7 |
18-Apr-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Followup to r154606. Expand list of accepted MIPS target features in the MipsTargetInfoBase::setFeatureEnabled() routine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154998 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
93a49944e0e68e32bc22d45d44ee136b34beffb3 |
16-Apr-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c modern translator: buildit objc bool type for rewriter project will be BoolTy. // rdar://11231426. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154861 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
7ac715fd3118362f14574c312b044d22e3afeee9 |
16-Apr-2012 |
Sirish Pande <spande@codeaurora.org> |
Hexagon V5(Floating Point) support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154828 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
10e1629dc339af33989e6fcabb3fd2214d6322bc |
12-Apr-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Initialize MIPS CPU's name by default value. Otherwise MipsTargetInfoBase::getDefaultFeatures() might return an invalid features set with an empty feature name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154606 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d2953ce57a4f1b0a6884b3d6b35266ab4f79fa7f |
06-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SourceManager: Vectorize ComputeLineNumbers for SSE2. This method is very hot, it is called when emitting diagnostics, in -E mode and for many #pragma handlers. It scans through the whole source file to count newlines, records and caches them in a vector. The speedup from vectorization isn't very large, as we fall back to bytewise scanning when we hit a newline. There might be a way to avoid leaving the sse loop but everything I tried didn't work out because a call to push_back clobbers xmm registers. About 2% speedup on average on "clang -E > /dev/null" of all .cpp files in clang's lib/Sema. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154204 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9091389771f46e531c9c42012f8e0ab5c072e336 |
05-Apr-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Move some MIPS target macro definitions from class Mips32TargetInfoBase to the base class MipsTargetInfoBase. These macros are applicable for both 32/64-bits targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154116 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7a938fa66be42710b034a79106de337a275fd265 |
04-Apr-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Create a new -mfpmath= option, which is used to control whether clang uses Neon instructions for single-precision FP. -mfpmath=neon is analogous to passing llc -mattr=+neonfp. -mfpmath=[vfp|vfp2|vfp3|vfp4] is analogous to passing llc -mattr=-neonfp. rdar://11108618 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154046 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0ea6164a7ff685f64ddfe3ec983a2b052ea91afb |
03-Apr-2012 |
Eric Christopher <echristo@apple.com> |
Add more constraint registers for mips. Patch by Jack Carter. Testcase cleanup by me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153921 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6903313102c4e1ca598305850cc209b62711b1b6 |
29-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM backend knows about cortex-m4. The front end should too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153678 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dde3bdb62cd6b0a961ec51a03f494e3aedccb453 |
29-Mar-2012 |
Jan Wen Voung <jvoung@google.com> |
Define __LITTLE_ENDIAN__ for le32, since "le" stands for little endian. Add a test for this too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153616 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fb02784df0a218532018d8c54e3ca7e78c2f5f0a |
28-Mar-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Fix the type of wchar_t on Solaris. Patch by Dmitri Shubin! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153585 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d1f853d73d7374a410d9458b04add71eb98d22b9 |
27-Mar-2012 |
Eric Christopher <echristo@apple.com> |
Add better support for $fp and $sp for mips inline asm support. Patch by Jack Carter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153530 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d316862f4fb281ec08a2e45cd3e5580574adb889 |
24-Mar-2012 |
Shih-wei Liao <sliao@google.com> |
Merge branch 'upstream' into sliao_d
|
ad8d8a31b010ceac4cad2553f16fc1a77c4b2e5e |
24-Mar-2012 |
Akira Hatanaka <ahatanaka@mips.com> |
Add support for MIPS' floating ABIs (hard, soft and single) to clang driver. Patch by Simon Atanasyan. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153348 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c0765a06ddf3dc7e975c4010a9a3ed5859e1d5c8 |
14-Mar-2012 |
Aaron Ballman <aaron@aaronballman.com> |
No longer defining LP64 in 64-bit builds on platforms which are not LP64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152740 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3054f097f813d19090bdb23645dcd48df71d1a89 |
13-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
[Basic] Fix up DiagnosticBuilder::{FlushCounts,Emit} to be inline. - This is much more important than it appears at first glance... The intended design of DiagnosticBuilder was that it never escape and that all its members would get lowered to registers by the compiler. By fixing Emit here, the compiler can completely eliminate the DiagnosticBuilder object and never need to push those registers back into it. Unfortunately, Sema has broken DiagnosticBuilder in other ways (by introducing SemaDiagnosticBuilder), so we don't get the fill impact of this, but it is still good for 30k reduction in code size. I'll work on fixing the SemaDiagnosticBuilder problems next. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152669 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
efe9c0dffc174d92c255e1ec77f791ef007102dc |
13-Mar-2012 |
Roman Divacky <rdivacky@freebsd.org> |
Fix the long double to be of width/align 64. Rename va_list_test to powerpc_types and add testing for the (long) double there. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152647 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
981e279b95f3a71e2268124b1abaae050ec200dc |
13-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
[Basic] Stop using a SmallVector<> for Diagnostic. This drops Clang binary size by ~%.3/~100k in my build -- simply by eliminating the horrible code bloat coming from the .clear() of the SmallVector<FixItHint>, which does a std::~string, etc. - My understanding is we don't ever emit arbitrary numbers of fixits, so I just moved us to using a statically sized array like we do for arguments and ranges. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152639 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e3d175da72f9c29ae18ff8aae53b992402895b63 |
13-Mar-2012 |
Roman Divacky <rdivacky@freebsd.org> |
Long double is just double on FreeBSD/{PPC,PPC64}. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152632 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e45b9b71b9ead9873c50ccd149a10f554f71bd9f |
12-Mar-2012 |
James Molloy <james.molloy@arm.com> |
Use ZeroLengthBitfieldAlignment for AAPCS, as well as APCS-GNU. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152552 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0be8fb5bdfe7e07a57f07a740649ec8bfb690284 |
12-Mar-2012 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo in comment, 'langauge' -> 'language'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152547 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
49d517467c3dcd2c67e8a6c740ba5160e37625f7 |
08-Mar-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
When checking the encoding of an 8-bit string literal, don't just check the first codepoint! Also, don't reject empty raw string literals for spurious "encoding" issues. Also, don't rely on undefined behavior in ConvertUTF.c. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152344 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
fddfbdbf143864c15ddfbda53e7c4851426bfefa |
07-Mar-2012 |
Andrew Trick <atrick@apple.com> |
More git-svn compatible version string, by request. If you're using git-svn, the clang and llvm repository will typically map to a different revision. Before we had: clang version 3.1 (trunk 152167 trunk 152162) After this change: clang version 3.1 (trunk 152167) (llvm/trunk 152162) So it's self-descriptive with an extra parens group. Which is more compatible with version string parsers is probably debatable, but this style was requested. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152183 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
30660a898545416f0fea2d717f16f75640001e38 |
06-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Add new code migrator support for migrating existing Objective-C code to use the new Objective-C NSArray/NSDictionary/NSNumber literal syntax. This introduces a new library, libEdit, which provides a new way to support migration of code that improves on the original ARC migrator. We now believe that most of its functionality can be refactored into the existing libraries, and thus this new library may shortly disappear. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152141 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
91932089c31e1233f0c478b03412e90a65e07ad2 |
05-Mar-2012 |
Stephen Hines <srhines@google.com> |
Merge branch 'upstream' into merge-20120305 Conflicts: lib/Basic/Targets.cpp Change-Id: Ib76c138030a701355ce39a6eda1a89a79f401667
|
713575afdac1f31de39b4a730143b8d96eeadb6d |
05-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
TargetInfo: create less temporary strings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152029 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
178a9b8b22cb77b4291bf076c0cd8d6561c7e711 |
02-Mar-2012 |
Hal Finkel <hfinkel@anl.gov> |
Fix an ABI problem with ptrdiff_t and intptr_t on PPC32 ptrdiff_t on PPC32 on Linux, etc. should be int not long. This does not matter for C, but it does matter for C++ because of name mangling. The preprocessor test has been changed accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151935 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
edd1caec02d5a698594ed4070574974b6b2b49e8 |
02-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use tabs instead of spaces. No, really, make doesn't work with spaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151920 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
f8e5d4cf39220e9b7c7ee744f634fce6dec28a76 |
02-Mar-2012 |
Jia Liu <proljc@gmail.com> |
clang -v support for separate clang.git and llvm.git, patch by Andrew Trick. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151910 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
b4f0bd6864f33bc2fd8246f1f841d87e60c4ffc8 |
02-Mar-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Add the Solaris support directory to the header search when using libc++. Unconditionally define __C99FEATURES__ when using C++ on Solaris. This is a (hopefully temporary) work around for libc++ exposing C99-but-not-C++98 features in C++98 mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151889 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f15e1143dcb39396a1b62e509e59cacaabbc4880 |
01-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Moving tagging of '__experimental_modules_import' IdentifierInfo out of IndentifierTable::get() and into IdentifierTable's constructor. This gets a 0.7% reducing on lexing time for Cocoa.h, and about the same for PCH generation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151854 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
32ad2ee2618745ce3da51c2ae066ed5f21157c07 |
01-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Change @import to @__experimental_modules_import. We are not ready to commit to a particular syntax for modules, and don't have time to push it forward in the near future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151841 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
165329c1d134d000904d6e08b1d166bf34e05517 |
28-Feb-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Some more Solaris fixes. Now successfully building libc++ on Solaris with clang (and linking clang against it). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151632 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a6c10681e57c292e16a18bdb9891c8db6ebe5c83 |
26-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move FullSourceLoc::dump into the .cpp file, the used attribute made us emit this into every TU that includes SourceLocation.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151493 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
341785ec52f87c0803ba52dc88faac4e136f8593 |
22-Feb-2012 |
Bill Wendling <isanbard@gmail.com> |
More ArrayRef-ification of methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151152 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a4c29b6e55c9d4ef44a51c45c6785e8b4fe9deed |
21-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] Recover gracefully if the ASTReader detects that a file is different from the one stored in the PCH/AST, while trying to load a SLocEntry. We verify that all files of the PCH did not change before loading it but this is not enough because: - The AST may have been 1) kept around, 2) to do queries on it. - We may have 1) verified the PCH and 2) started parsing. Between 1) and 2) files may change and we are going to have crashes because the rest of clang cannot deal with the ASTReader failing to read a SLocEntry. Handle this by recovering gracefully in such a case, by initializing the SLocEntry with the info from the PCH/AST as well as reporting failure by the ASTReader. rdar://10888929 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151004 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c93dc7889644293e318e19d82830ea2acc45b678 |
20-Feb-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
Basic: import IntrusiveRefCntPtr<> into clang namespace The class name is long enough without the llvm:: added. Also bring in RefCountedBase and RefCountedBaseVPTR. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150958 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
48fad493cb452b7c735f29639959ec42c1a9212c |
17-Feb-2012 |
David Chisnall <csdavec@swan.ac.uk> |
On Solaris, define some standard macros that the Solaris headers require in order to not be broken (by Solaris standards). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150822 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6c44886ed05d7804bfd7b80857b81fd3477079f6 |
15-Feb-2012 |
David Blaikie <dblaikie@gmail.com> |
Provide common include for all diagnostic headers. Reviewed by Ted Kremenek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150616 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
d49cb20288b2dbc222aaf5673c1a4738c151b7bf |
15-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Store the warning option corresponding to a diagnostics as an index into the option table instead of storing the name. Another 8 bytes + relocation removed from every diagnostic on x86_64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150615 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
ceb15656fbab9ee1da319afa4934b8f6a5964758 |
15-Feb-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove the unuseful -fdiagnostics-show-name This option was added in r129614 and doesn't have any use case that I'm aware of. It's possible that external tools are using these names - and if that's the case we can certainly reassess the functionality, but for now it lets us shave out a few unneeded bits from clang. Move the "StaticDiagNameIndex" table into the only remaining consumer, diagtool. This removes the actual diagnostic name strings from clang entirely. Reviewed by Chris Lattner & Ted Kremenek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150612 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
b089c4d91ac70f7ddfd3a36cd605d7982eefe41d |
11-Feb-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Set UserLabelPrefix and MCountName correctly for DragonFly BSD. Patch by Sascha Wildner. Setting UserLabelPrefix correctly fixes PR11949. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150280 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f94d392847fb183b3012dbcb2e372b586c80b9fb |
09-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Kill the brief and full explanation fields from StaticDiagInfoRec. They were unused and wasted space for nothing. - per PR11952. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150199 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
dfaee4922b990fbf33808b91b961dc27df585030 |
08-Feb-2012 |
Chad Rosier <mcrosier@apple.com> |
Fix indentation and an 80-column violation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150010 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d7a3e2c5f61cd4893f95b69a424fe4def3aa0f69 |
07-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Revert my patches which removed Diagnostic.h includes by moving some operator overloads out of line. This seems to negatively affect compile time onsome ObjC tests (which use a lot of partial diagnostics I assume). I have to come up with a way to keep them inline without including Diagnostic.h everywhere. Now adding a new diagnostic requires a full rebuild of e.g. the static analyzer which doesn't even use those diagnostics. This reverts commit 6496bd10dc3a6d5e3266348f08b6e35f8184bc99. This reverts commit 7af19b817ba964ac560b50c1ed6183235f699789. This reverts commit fdd15602a42bbe26185978ef1e17019f6d969aa7. This reverts commit 00bd44d5677783527d7517c1ffe45e4d75a0f56f. This reverts commit ef9b60ffed980864a8db26ad30344be429e58ff5. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150006 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3f22509ebf91aa96658ca6e5c5c0b926d8d62e34 |
07-Feb-2012 |
Chad Rosier <mcrosier@apple.com> |
In r149662, setDiagnosticMapping was modified to not allow warnings mapped to MAP_ERROR to be remapped to MAP_WARNING. These new APIs are being added to allow the diagnostic mapping's "no Werror" bit to be set, and potentially downgrade anything already mapped to be a warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150001 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f7ccbad5d9949e7ddd1cbef43d482553b811e026 |
05-Feb-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
Basic: import SmallString<> into clang namespace (I was going to fix the TODO about DenseMap too, but that would break self-host right now. See PR11922.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149799 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
|
6f42b62b6194f53bcbc349f5d17388e1936535d7 |
05-Feb-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
Basic: import OwningPtr<> into clang namespace git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149798 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
argets.cpp
|
8fe83e1df954d72c0f4ffc15d20a5222ec151c21 |
04-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move a method from IdentifierTable.h out of line and remove the SmallString include. Fix all the transitive include users. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149783 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
iagnostic.cpp
dentifierTable.cpp
|
ef9b60ffed980864a8db26ad30344be429e58ff5 |
04-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move Storage and StorageAllocator out of the PartialDiagnostic class so we can forward declare them. Let ASTContext allocate the storage in its BumpPtrAllocator. This will help us remove ASTContext's depedency on PartialDiagnostic.h soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149780 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cbf46a0b2bb2b47d6e13437e0d52cc583c5ce539 |
03-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Change the fixed array of FixitHints to a SmallVector to lift off the limit on the number of fixits. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149676 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
7a0a31ce0cd38147bfe853f71a3f7261444ddf4c |
03-Feb-2012 |
Chad Rosier <mcrosier@apple.com> |
[frontend] Don't allow a mapping to a warning override an error/fatal mapping. rdar://10736625 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149662 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2f04f1843ca0ffca13b8b0d4dadd1f50dffb38b8 |
02-Feb-2012 |
Douglas Gregor <dgregor@apple.com> |
Back out my heinous hack that tricked the module generation mechanism into using non-absolute system includes (<foo>)... ... and introduce another hack that is simultaneously more heineous and more effective. We whitelist Clang-supplied headers that augment or override system headers (such as float.h, stdarg.h, and tgmath.h). For these headers, Clang does not provide a module mapping. Instead, a system-supplied module map can refer to these headers in a system module, and Clang will look both in its own include directory and wherever the system-supplied module map suggests, then adds either or both headers. The end result is that Clang-supplied headers get merged into the system-supplied module for the C standard library. As a drive-by, fix up a few dependencies in the _Builtin_instrinsics module. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149611 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
48b68a0dc345b3208cbd9dda719b9b3ec167c8c2 |
01-Feb-2012 |
Bob Wilson <bob.wilson@apple.com> |
Use the new Triple::getMacOSXVersion function in another place. I removed support for "*-darwin*-iphoneos" triples, since we now have iOS listed as a separate OS in the triples. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149455 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6e1d2eaa7d7f1008a5bac12f73fbf6167802a46d |
31-Jan-2012 |
Nico Weber <nicolasweber@gmx.de> |
Fix "long double" and __SIZE_TYPE__ on powerpc, now with test fix. Fixes PR11867. Patch from Jeremy Huddleston! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149334 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3128fa1a5db26b288521e2b8136c6f795d34bc4f |
31-Jan-2012 |
Nico Weber <nicolasweber@gmx.de> |
Revert r149285, it breaks test/Preprocessor/init.c. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149301 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
acd8c513b9db3a166b5409cd8e75712a7157b7b6 |
30-Jan-2012 |
Nico Weber <nicolasweber@gmx.de> |
Fix "long double" and __SIZE_TYPE__ on powerpc. Fixes PR11867. Patch from Jeremy Huddleston! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149285 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e727d21d3fd5f6f68d9e7a260bbf84dc2fc8ae3a |
30-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce TargetInfo::hasFeature() to query various feature names in each of the targets. Use this for module requirements, so that we can pin the availability of certain modules to certain target features, e.g., provide a module for xmmintrin.h only when SSE support is available. Use these feature names to provide a nearly-complete module map for Clang's built-in headers. Only mm_alloc.h and unwind.h are missing, and those two are fairly specialized at the moment. Finishes <rdar://problem/10710060>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149227 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
argets.cpp
|
dc58aa71026cce539ca9b5c2c52cc4efc7bd77fe |
30-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Thread a TargetInfo through to the module map; we'll need it for target-specific module requirements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149224 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
4188760f6bb20f91c6883dffd89204419f852dee |
29-Jan-2012 |
John McCall <rjmccall@apple.com> |
Complain about attempts to use 'protected' visibility on targets like Darwin that don't support it. We should also complain about invalid -fvisibility=protected, but that information doesn't seem to exist at the most appropriate time, so I've left a FIXME behind. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149186 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9f1c49c57d8a5215c3f662b0f00e830a0b06d6de |
28-Jan-2012 |
Bob Wilson <bob.wilson@apple.com> |
Use defined-at-zero behavior for CLZ/CTZ builtins on PowerPC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149181 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
82e6411d004064a29f03a3ea8b8919f297bfa843 |
28-Jan-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
DiagnosticsEngine::setMappingToAllDiagnostics() does not need to return bool, caught by Chad. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149173 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a1f1fad8b60e1cb9d21a40a37f2e03150bcbeb6f |
27-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce module attributes into the module map grammar, along with a single attribute ("system") that allows us to mark a module as being a "system" module. Each of the headers that makes up a system module is considered to be a system header, so that we (for example) suppress warnings there. If a module is being inferred for a framework, and that framework directory is within a system frameworks directory, infer it as a system framework. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149143 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
11583c757bac6ce5c342f2eb572055dd2619a657 |
27-Jan-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Due to a bug, -Wno-everything works like -Weverything. Fix the bug by having -Wno-everything remap all warnings to ignored. We can now use "-Wno-everything -W<warning>" to ignore all warnings except specific ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149121 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
8b30a9379f730875ba8fb2d0fe2d43611e0c20ff |
26-Jan-2012 |
Bob Wilson <bob.wilson@apple.com> |
Make clz/ctz builtins defined for zero on ARM targets. rdar://10732455 ARM supports clz and ctz directly and both operations have well-defined results for zero. There is no disadvantage in performance to using the defined-at-zero versions of llvm.ctlz/cttz intrinsics. We're running into ARM-specific code written with the assumption that __builtin_clz(0) == 32, even though that value is technically undefined. The code is failing now because of llvm optimizations that are taking advantage of the undef behavior (specifically svn r147255). There's nothing wrong with that optimization on x86 where any incorrect assumptions about __builtin_clz(0) will quickly be exposed. For ARM, though, optimizations based on that undef behavior are likely to cause subtle bugs. Other targets with defined-at-zero clz/ctz support may want to override the default behavior as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149086 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9ec60dfe771ff28a84889dced6f8fd3748d3d55e |
20-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
rename -ccc-host-triple into -target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148582 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9bc23ba9e4d06b6619ab6df2995bf7aac929a8fd |
17-Jan-2012 |
Anton Yartsev <anton.yartsev@gmail.com> |
fix for PR11655 changes i64 alignment from 64 to 32 for powerpc-darwin git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148345 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7530c034c0c71a64c5a9173206d9742ae847af8b |
17-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove unreachable code in Clang. (replace with llvm_unreachable where appropriate or when GCC requires it) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148292 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
odule.cpp
argets.cpp
|
561d3abc881033776ece385a01a510e1cbc1fa92 |
17-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove unnecessary default cases in switches over enums. This allows -Wswitch-enum to find switches that need updating when these enums are modified. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148281 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
31cbe684302a5ccb001fa2131c0e4aeaa372f5c0 |
13-Jan-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Revert r148138; it's causing test failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148141 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
43115d4904431917ef6852ee089a8520b9940ba5 |
13-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
remove assertions in the Hexagon backend specific clang driver Patch from Jyotsna Verma: I have made the changes to remove assertions in the Hexagon backend specific clang driver. Instead of asserting on invalid arch name, it has been modified to use the default value. I have changed the implementation of the CPU flag validation for the Hexagon backend. Earlier, the clang driver performed the check and asserted on invalid inputs. In the new implementation, the driver passes the last CPU flag (or sets to "v4" if not specified) to the compiler (and also to the assembler and linker which perform their own check) instead of asserting on incorrect values. This patch changes the setCPU function for the Hexagon backend in clang/lib/Basic/Targets.cpp which causes the compiler to error out on incorrect CPU flag values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148139 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
edd4f3c39101912605c2a1868dd2be71aa218798 |
13-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
rename -ccc-host-triple into -target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148138 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
35dd732fdff0e31ef0a24d76b7106597862adfcf |
11-Jan-2012 |
Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
Fix -mfpu parsing on ARM. - Support gcc-compatible vfpv3 name in addition to vfp3. - Support vfpv3-d16. - Disable neon feature for -mfpu=vfp* (yes, we were emitting Neon instructions for those!). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147943 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5660aa6c6828015086d50f7f3a4791574edbeaaf |
10-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add definitions for AMD's bobcat (aka btver1) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147849 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5c65e4f8e02ff4196309b4c490f2ea2a56a0103b |
10-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Enable POPCNT and LZCNT with sse4a. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147848 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
448f68d7ef0aa1b8f3016af00ce4851c8526805f |
10-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Factor the repetitive cpu macro definition into a helper function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147847 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
05fe4b5ce5cc14b95b4da1bbeb4e4e90282ae1dc |
09-Jan-2012 |
Craig Topper <craig.topper@gmail.com> |
Merge AVX/AVX2 into the SSE level. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147771 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
42378be9a055050c86e3e5cf9c456b40342de950 |
06-Jan-2012 |
Joerg Sonnenberger <joerg@bec.de> |
__FLT_EVAL_METHOD__ should be 1 on NetBSD/i386, since it defaults to "double" rounding. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147669 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b7a7819473709c01ea024a2dc15e99d38f0f8760 |
05-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Store the submodules of a module in source order, as they are stored in the module map. This provides a bit more predictability for the user, as well as eliminating the need to sort the submodules when serializing them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147564 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
b3453a810407cd8d7f526c6faabe9a4c9f0a6f67 |
04-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Penryn doesn't support sse4.2, don't enable it in the first place. While the code took care of disabling the sse42 flag it didn't know about popcnt. This broke -march=native on penryn. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147531 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1ac13c37d8af0145b7e03fea70b7b1476b8828c9 |
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Re-uglify #public and #private to #__public_macro and #__private_macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147469 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
c13a34b690d2dc2a03c2fea75a0a1438636c19ce |
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the uglified keyword __import_module__ for importing modules. This leaves us without an explicit syntax for importing modules in C/C++, because such a syntax needs to be discussed first. In Objective-C/Objective-C++, the @import syntax is used to import modules. Note that, under -fmodules, C/C++ programs can import modules via the #include mechanism when a module map is in place for that header. This allows us to work with modules in C/C++ without committing to a syntax. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147467 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
94ad28b31433058445a27db722f60402ee820bea |
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Under -fmodules, accept #public <macroname> and #private <macroname> to make a macro public (the default for headers) or private, respectively. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147455 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
51f564f80d9f71e175635b452ffeeeff899e9bf1 |
31-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement support for module requirements, which indicate the language features needed for a particular module to be available. This allows mixed-language modules, where certain headers only work under some language variants (e.g., in C++, std.tuple might only be available in C++11 mode). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147387 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
6a511e14074e186328020fce78fe0c33deb64d1b |
30-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add FMA4 feature flag. Intrinsics coming soon. Also make sse4a feature flag imply sse3. Matches gcc behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147370 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e14e08b2552b43d81a295401ddf9b8da2c499233 |
29-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add popcnt feature flag to match gcc. This flag is implied when sse42 is enabled, but can be disabled separately. Move popcnt intrinsics to popcntintrin.h to match gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147340 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b406669fea7c8db83a377f368f1689c848296974 |
28-Dec-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add a target hook for FLT_EVAL_METHOD and use it to set the value on x86 with sse disabled. x87 math evaluates everything with 80 bits precision, so we have to set FLT_EVAL_METHOD to "2". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147311 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fb8c56d6047f21f9bd4ca9c916c23023152d9602 |
26-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Partially revert r147195; lib/Basic/Version.cpp conditionally depends on config.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147282 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
31ceea096563c42e083eded27f6fe19ed244c0a1 |
25-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add BMI, BMI2, and LZCNT feature flags to enable adding intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147262 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ffbe9b9c64ab2e94b9d48ec56e511f75826fc80a |
23-Dec-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Mass rename C1x references to C11. The name hasn't proliferated like "C++0x" so this patch is surprisingly small. Also drop -Wc1x-extensions in favor of -Wc11-extensions. I don't think we need to keep this around for compatibility. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147221 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
1770e0dadcab966990cca4d7516253c886fd907c |
22-Dec-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
remove unneeded config.h includes git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147195 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ersion.cpp
|
e6a24e83e71f361c7b7de82cf24ee6f5ddc7f1c2 |
22-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Add support for bitcasts to vector type in Evaluate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147137 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
cee5ec9df479994e4ba27fb65b7ded5bb5a980eb |
21-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix bugs in SourceManager::computeMacroArgsCache() and add a unit test for it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147057 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d7711ec430fde5706f85ba6c4b85283a8e743ff7 |
21-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For SourceManager::isBeforeInTranslationUnit(), have it consider macro arg expanded token locations as coming before the closing ')' of a function macro expansion. Include a unit test for SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147056 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9bddf4324a067b630c0f1147f283de0930092f5a |
21-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Bump suitable alignment on darwin ppc 32/64 and x86-32 to 16 bytes. I don't actually know about the other OSes on X86-32 besides Linux... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147034 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
99ba9e3bd70671f3441fb974895f226a83ce0e66 |
20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146959 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ileSystemStatCache.cpp
|
00852e41261f9860233d3b407fce0506346cdacb |
19-Dec-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objc-arc: bridge casts in non-objc-arc mode are ignord. But, warn too. // rdar://10597832 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146904 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
argets.cpp
|
098eaffc0c1784567ddccfe6f976ced6e904552e |
19-Dec-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
SourceManager: use getBufferSize() Forming an out of bounds pointer to check if it's out of bounds was undefined behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146861 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
22d141452d67b08dc30f28964d00b718f2994d0a |
17-Dec-2011 |
Ted Kremenek <kremenek@apple.com> |
Update CMake dependencies. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146836 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
2b03bb0314cea77f0a8740609a9cccb2253ec1b1 |
17-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add -mavx2 and -mno-avx2 command line support. Also add core-avx2 processor type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146835 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7ec59c78f1e19157767648cbe3f0e3630ca1afe7 |
16-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Add the value of "suitably aligned" from the C++11 standard to Basic/TargetInfo. This is equal to alignof(std::max_align_t) on the platform and equal to the alignment provided by malloc. (Platform owners please double-check your platform's value.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146762 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
9952070fa22695845c45869a501bc8651ca36e78 |
16-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Fix 80-column violation and whitespace. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146761 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
08d6e032a2a0a8656d12b3b7b93942987bb12eb7 |
16-Dec-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
C++11 constexpr: Add note stacks containing backtraces if constant evaluation fails within a call to a constexpr function. Add -fconstexpr-backtrace-limit argument to driver and frontend, to control the maximum number of notes so produced (default 10). Fix APValue printing to be able to pretty-print all APValue types, and move the testing for this functionality from a unittest to a -verify test now that it's visible in clang's output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146749 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9b879db75be6b8db4a7c804e9bba4c07c4cfa81c |
16-Dec-2011 |
Logan Chien <loganchien@google.com> |
Apply changes to migrate to clang upstream r146715. Change-Id: I7a40ad93f4cc76a6e748ba314ac06a1bef473bbf
ndroid.mk
|
298aaf2c97ab7c4d5bd3a8e8d8112e3bc77b29b6 |
16-Dec-2011 |
Logan Chien <loganchien@google.com> |
Merge with clang upstream r146715 (Dec 16th 2011) Change-Id: I66024a7b6eb0ee37d7b3ff7ce41c0bfb4b514bee
|
99ee0851015f0d334fa319c4ab9e14869520ebe5 |
16-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In SourceManager::~SourceManager do a sanity check to make sure we don't try to destruct a null ContentCache. rdar://10567159 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146707 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
62d829abaf61d70483a5a584059440a549a306bf |
15-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
gcov-style profiling support for OpenBSD. Patch by Jonathan Gray. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146631 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9631939f82c0eaa6fb3936a0ce58a41adfbc9011 |
12-Dec-2011 |
Tony Linthicum <tlinth@codeaurora.org> |
Hexagon backend support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146413 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a4288c4aa05075cd45fd4de61d95ffe920fe6441 |
10-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In ContentCache::replaceBuffer, add sanity check to make sure that we do not free a buffer and then continue using it. rdar://10359140. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146308 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d575254dcd061ad9e6661598f4443d85a7bd1d8b |
10-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a sanity check in SourceManager::getColumnNumber, make sure we don't try to access beyond the buffer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146305 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a2398d7da920b896001f385587e7f7d3366e5b17 |
09-Dec-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Separate the serialization library's diagnostics from the frontend's diagnostics. Conflating them was highly confusing and makes it harder to establish a firm layering separation between these two libraries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146207 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
6d402dc963aa32194f3604af4463b113858291ae |
09-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Misc Minix-specific changes to clang: . move compiler-rt to a separate directory so the -L argument only includes compiler-rt (thanks joerg) . build all clang subdirs . switches the Minix platform to ELF . normalizes toolchain invocation Patch by Ben Gras. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146206 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
489ad43b77c10a98df80f1395de81e3f52697e76 |
08-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Tweak the syntax of umbrella headers, so that "umbrella" is treated as a modifier for a header declarartion, e.g., umbrella header "headername" Collapse the umbrella-handling code in the parser into the header-handling code, so we don't duplicate the header-search logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146159 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
10694cee2588442bee1e717f5042c58ffee25279 |
08-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Within the module representation, generalize the notion of an umbrella header to also support umbrella directories. The umbrella directory for an umbrella header is the directory in which the umbrella header resides. No functionality change yet, but it's coming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146158 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
1e12368db12005ddd92fd9188c86383fe30ef443 |
05-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Parse inferred submodules in module maps, track their contents in Module, and (de-)serialize this information. Semantics of inferred submodules to follow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145864 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
f4ac17e51f9841e05e5cc17d65f27f0d1cc62fcb |
05-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Fix printing of wildcard exports. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145812 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
0adaa880993ad23186c87c7f98e7a3fd2697742c |
05-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement support for wildcard exports in modules, allowing a module to re-export anything that it imports. This opt-in feature makes a module behave more like a header, because it can be used to re-export the transitive closure of a (sub)module's dependencies. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145811 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
af13bfc3b40aa4a46f4e71d200ecfb10f45297fc |
02-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement (de-)serialization of the set of exported modules in a module map. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145695 91177308-0d34-0410-b5e6-96231b3b80d8
odule.cpp
|
c5f9a011a5c13361a3a56ed7fa3507b4b585063e |
02-Dec-2011 |
Eric Christopher <echristo@apple.com> |
Add support for AVX registers to clang inline asm. Add a small testcase and update the Sema testcase with a register that we won't hit for a while I hope. Fixes rdar://10510405 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145671 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ee1ad99f1ced9ffee436466ef674d4541c37864e |
02-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
When we're passing a vector with an illegal type through memory on x86-64, use byval so we're sure the backend does the right thing. Fixes va_arg with illegal vectors and an obscure ABI mismatch with __m64 vectors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145652 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
61ea4fe2c230914061bfbf7f4b4530020e425250 |
01-Dec-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add support for AMD's bulldozer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145606 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1a4761edca58c6b559de825b9abfb66f7f1ba94a |
01-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Promote ModuleMap::Module to a namespace-scope class in the Basic library, since modules cut across all of the libraries. Rename serialization::Module to serialization::ModuleFile to side-step the annoying naming conflict. Prune a bunch of ModuleMap.h includes that are no longer needed (most files only needed the Module type). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145538 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
odule.cpp
|
f3dee206ffa571b4541b8e777ee31dc8476d66da |
28-Nov-2011 |
Daniel Dunbar <daniel@zuster.org> |
Fix some possible gcc-4.2 may be used uninitialized warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145293 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
53ac3d88f9089affe6c5a93dc31d45a4a6f77447 |
27-Nov-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make our handling of MMX x SSE closer to what gcc does: * Enabling sse enables mmx. * Disabling (-mno-mmx) mmx, doesn't disable sse (we got this right already). * The order in not important. -msse -mno-mmx is the same as -mno-mmx -msse. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145194 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2a710c84db1ebf0c16cba0ff121ca8e15f045a07 |
25-Nov-2011 |
Logan Chien <loganchien@google.com> |
Merge with clang upstream r145117 (Nov 25th 2011) Change-Id: Id4fde985342e3c81f13887e8728bd94b82523642
|
a6d81f9a2d236ae21491455f649ea765123f6fc7 |
23-Nov-2011 |
James Molloy <james.molloy@arm.com> |
AAPCS compliance - 32-bit wchar_t should be unsigned for both aapcs and aapcs-linux. Original behaviour of defining wchar_t as signed int has been kept for apcs-gnu as I don't have any spec for this to validate against. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145102 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
678a3ead409516d8e24831297b9a3bb98f6217c3 |
17-Nov-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r132539 for now, "My testing shows that function stat has no problem with trailing separators. (tested on Windows and Darwin)." It caused PR10331. MSVCRT stat() cannot strip trailing '/'. (can '\') git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144884 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
a081da5e44600d02983d6562bed1b4fd61e410fd |
16-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement (de-)serialization of the buffer contents for an overridden file in the source manager. This allows us to properly create and use modules described by module map files without umbrella headers (or with incompletely umbrella headers). More generally, we can actually build a PCH file that makes use of file -> buffer remappings, which could be useful in libclang in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144830 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b86b8dc7ef89405205f94635c1073cdb1a7093eb |
15-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Add a -cc1-level option -fmodule-name=<name>, which will be used when building modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144680 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
|
dce6327160a6e333137b34cce77e2dfc2cd5aab6 |
15-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Warning option typo correction: When two options have the same edit_distance don't display either. Also add a maximum edit distance threshold, so we don't correct "-Wx" to "-W#pragma-messages". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144644 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
71d9a71d19099a6673750b47b32e9786803fa81d |
15-Nov-2011 |
Logan Chien <loganchien@google.com> |
Merge with clang upstream r144605 (Nov 15th 2011) Conflicts: include/clang-c/Index.h include/clang/AST/APValue.h include/clang/AST/DeclBase.h include/clang/AST/DeclObjC.h include/clang/Basic/DiagnosticSemaKinds.td include/clang/Serialization/ASTWriter.h lib/AST/APValue.cpp lib/AST/ASTImporter.cpp lib/AST/DeclObjC.cpp lib/AST/ExprConstant.cpp lib/Driver/ToolChains.cpp lib/Frontend/SerializedDiagnosticPrinter.cpp lib/Frontend/Warnings.cpp lib/Lex/HeaderSearch.cpp lib/Lex/LiteralSupport.cpp lib/Sema/SemaExpr.cpp lib/Sema/SemaInit.cpp lib/Sema/SemaPseudoObject.cpp test/Analysis/misc-ps.c test/Analysis/retain-release-path-notes.m test/CodeGen/string-literal-unicode-conversion.c test/CodeGenCXX/blocks.cpp test/Driver/crash-cleanup.c test/Misc/serialized-diags.c test/Misc/warning-flags.c tools/c-index-test/c-index-test.c tools/libclang/CXLoadedDiagnostic.cpp tools/libclang/IndexDecl.cpp tools/libclang/IndexTypeSourceInfo.cpp tools/libclang/Indexing.cpp tools/libclang/IndexingContext.cpp tools/libclang/IndexingContext.h tools/libclang/libclang.exports Change-Id: I6621e7d5d9a9d1e4cdec7b7b62ffa6dffaff375d
|
a70cb9db9dd79ca9fc1febbb2f331004297664e0 |
15-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Print a typo correction hint for unknown warning flags. $ clang -Wololo t.c warning: unknown warning option '-Wololo'; did you mean '-Wall'? [-Wunknown-warning-option] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144591 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
b7bcfe877b55fa64b4d6175e9363b88e47dbb05b |
09-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Define some built-ins macros on mips32 platform, from Simon Atanasyan! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144189 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f789d0ab6fd47baa32111cda58334233fbc8e2d0 |
09-Nov-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] Fix reading from PCH of diagnostic pragmas. In certain cases ASTReader would call the normal DiagnosticsEngine API to initialize the state of diagnostic pragmas but DiagnosticsEngine would try to compare source locations leading to crash because the main FileID was not yet initialized. Yet another case of the ASTReader trying to use the normal APIs and inadvertently breaking invariants. Fix this by having the ASTReader set up the internal state directly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144153 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
aabc56f739632de543322fe6a8f36f22f7811cfd |
06-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use StringRef's case transformation methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143889 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
a044ad9d8c1bfdc99204af9eb85c96605f7c1c6e |
05-Nov-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Move definitions of SizeType and PtrDiffType to Mips32TargetInfoBase. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143775 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a95cba91ab8df9ebc1507e649e808968a9a16821 |
02-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Fix various minor issues find via unreachable code warnings, from Ahmed Charles! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143569 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e8172b56b2c5091fbbdf49324a2a49735bb7733c |
01-Nov-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Move ConvertUTF8toUTF32 out of #if 0, in preparation for a patch which needs it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143415 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
321b7acdc381a46aa6f5992525a6b78f1963aeb2 |
31-Oct-2011 |
Anders Carlsson <andersca@mac.com> |
In x86_64, when calling an Objective-C method that returns a _Complex long double, make sure to use the objc_msgSend_fp2ret function which ensures that the return value will be {0, 0} if the receiver is nil. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143350 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
9979cfeb168461b4b62c506934e91a885acfc490 |
30-Oct-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Add support for sse4a and enable it for amdfam10 cpu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143312 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f051cde860d96d5c8db18e3e6601956fca8dc42d |
30-Oct-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Add support for amdfam10 cpu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143305 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
37a5e89434d0e98e9949cf97a803ababd2f3502f |
27-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
Make the loading of information attached to an IdentifierInfo from an AST file more lazy, so that we don't eagerly load that information for all known identifiers each time a new AST file is loaded. The eager reloading made some sense in the context of precompiled headers, since very few identifiers were defined before PCH load time. With modules, however, a huge amount of code can get parsed before we see an @import, so laziness becomes important here. The approach taken to make this information lazy is fairly simple: when we load a new AST file, we mark all of the existing identifiers as being out-of-date. Whenever we want to access information that may come from an AST (e.g., whether the identifier has a macro definition, or what top-level declarations have that name), we check the out-of-date bit and, if it's set, ask the AST reader to update the IdentifierInfo from the AST files. The update is a merge, and we now take care to merge declarations before/after imports with declarations from multiple imports. The results of this optimization are fairly dramatic. On a small application that brings in 14 non-trivial modules, this takes modules from being > 3x slower than a "perfect" PCH file down to 30% slower for a full rebuild. A partial rebuild (where the PCH file or modules can be re-used) is down to 7% slower. Making the PCH file just a little imperfect (e.g., adding two smallish modules used by a bunch of .m files that aren't in the PCH file) tips the scales in favor of the modules approach, with 24% faster partial rebuilds. This is just a first step; the lazy scheme could possibly be improved by adding versioning, so we don't search into modules we already searched. Moreover, we'll need similar lazy schemes for all of the other lookup data structures, such as DeclContexts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143100 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
527de441d2184669d3bfd515da26b81182ca7630 |
25-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Use assert(0) instead of duplicating the check, suggestion by Anna. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142886 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8b82b6828987f2a01b3d702e0f31e85ec4812724 |
25-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the Blackfin backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142881 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4dc03961bcc6bf521cefbdacc934638ae88ebd37 |
25-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the SystemZ backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142879 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1250759737c993b21f4bde60d31e331dc81972a1 |
22-Oct-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Make changes necessary for N32/64 ABI conformance. - Size of long double is 16 bytes for both N32 and N64. - Size of pointers and long is 8 bytes for N64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142705 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6406f91d7baa67ace4a5e0b1bc2eeff30143bef1 |
20-Oct-2011 |
Ted Kremenek <kremenek@apple.com> |
Further refine the diagnostic categories for ARC diagnostics. Addresses <rdar://problem/10245086>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142571 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
c9a237168cddc136ddba6e59b1bead5d5bf1ee95 |
09-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Define some built-ins macros on mips32 platform, from Simon Atanasyan! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144189 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
87429a05ff66fe6460eaa4855fd0da574e26bf7b |
09-Nov-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[PCH] Fix reading from PCH of diagnostic pragmas. In certain cases ASTReader would call the normal DiagnosticsEngine API to initialize the state of diagnostic pragmas but DiagnosticsEngine would try to compare source locations leading to crash because the main FileID was not yet initialized. Yet another case of the ASTReader trying to use the normal APIs and inadvertently breaking invariants. Fix this by having the ASTReader set up the internal state directly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144153 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
90c7892b699c5405a81bcc339432ba2f4b50e0d6 |
06-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use StringRef's case transformation methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143889 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
148735ecc78fc58bea17d5cdd3225d484f350865 |
05-Nov-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Move definitions of SizeType and PtrDiffType to Mips32TargetInfoBase. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143775 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
21a25167b8279df3d8f889d041a4fd98733d3c27 |
02-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Fix various minor issues find via unreachable code warnings, from Ahmed Charles! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143569 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
436ecd959954db0e11c8daf64b3d6b6b6d0eba55 |
01-Nov-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Move ConvertUTF8toUTF32 out of #if 0, in preparation for a patch which needs it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143415 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
eea64802558cc398571938b1f28cda1d4fa79ec3 |
31-Oct-2011 |
Anders Carlsson <andersca@mac.com> |
In x86_64, when calling an Objective-C method that returns a _Complex long double, make sure to use the objc_msgSend_fp2ret function which ensures that the return value will be {0, 0} if the receiver is nil. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143350 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
80b32b8c6546a12cf0d4af9c2cd785ec1f123188 |
30-Oct-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Add support for sse4a and enable it for amdfam10 cpu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143312 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
01c770d6c91551ad4f03d9773e243231e52d8c49 |
30-Oct-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Add support for amdfam10 cpu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143305 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eee242ff426bf79149f221798966e58688383c1e |
27-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
Make the loading of information attached to an IdentifierInfo from an AST file more lazy, so that we don't eagerly load that information for all known identifiers each time a new AST file is loaded. The eager reloading made some sense in the context of precompiled headers, since very few identifiers were defined before PCH load time. With modules, however, a huge amount of code can get parsed before we see an @import, so laziness becomes important here. The approach taken to make this information lazy is fairly simple: when we load a new AST file, we mark all of the existing identifiers as being out-of-date. Whenever we want to access information that may come from an AST (e.g., whether the identifier has a macro definition, or what top-level declarations have that name), we check the out-of-date bit and, if it's set, ask the AST reader to update the IdentifierInfo from the AST files. The update is a merge, and we now take care to merge declarations before/after imports with declarations from multiple imports. The results of this optimization are fairly dramatic. On a small application that brings in 14 non-trivial modules, this takes modules from being > 3x slower than a "perfect" PCH file down to 30% slower for a full rebuild. A partial rebuild (where the PCH file or modules can be re-used) is down to 7% slower. Making the PCH file just a little imperfect (e.g., adding two smallish modules used by a bunch of .m files that aren't in the PCH file) tips the scales in favor of the modules approach, with 24% faster partial rebuilds. This is just a first step; the lazy scheme could possibly be improved by adding versioning, so we don't search into modules we already searched. Moreover, we'll need similar lazy schemes for all of the other lookup data structures, such as DeclContexts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143100 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
82ccbe759b716f1747e03f54a4cd6eb164bb3427 |
25-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Use assert(0) instead of duplicating the check, suggestion by Anna. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142886 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
78cf13db148c3a7f86a3f2148591a7a2c1b8e711 |
25-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the Blackfin backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142881 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0986eb5c59c43809df95bac10138edd44c1ebb69 |
25-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the SystemZ backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142879 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fe6bd6dc51777802a0118521b9039981a0e6a806 |
21-Oct-2011 |
Logan Chien <loganchien@google.com> |
Apply changes to migrate to upstream Oct 20th 2011 (r142531) Change-Id: I32cdb5da2c07c84e01f42b4e87161196f468806a
ndroid.mk
|
00a92abaf907802bfa4d6f38bdd242c6bfc34c09 |
21-Oct-2011 |
Logan Chien <loganchien@google.com> |
Merge with clang upstream Oct 20th 2011 (r142531) Change-Id: I42181113f38ce445f2a48694d6f654438562b71e
|
c7d0ab174c3f5150ba5667a96e621da9e057a3c3 |
22-Oct-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Make changes necessary for N32/64 ABI conformance. - Size of long double is 16 bytes for both N32 and N64. - Size of pointers and long is 8 bytes for N64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142705 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
64f853101a23276621e160cc9b145f0bd699956d |
21-Oct-2011 |
Stephen Hines <srhines@google.com> |
Properly abstract 64-bit longs for Renderscript. Change-Id: I4d0c3084f6080f23daadc0534145ec12aaa1a918
argets.cpp
|
afdc21ad774eff6ed6c464e3f2dff9e26ed3d0b0 |
20-Oct-2011 |
Ted Kremenek <kremenek@apple.com> |
Further refine the diagnostic categories for ARC diagnostics. Addresses <rdar://problem/10245086>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142571 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
474202f657239f4169f8ff8db844e19558daa637 |
18-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use llvm::Triple's methods to parse FreeBSD version numbers. Who could've thought that FreeBSD would ever reach version 10! Patch from Dimitry Andric. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142349 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
aa93a875605536d72a10359a0098396192b7d4ec |
17-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
For modules, all macros that aren't include guards are implicitly public. Add a __private_macro__ directive to hide a macro, similar to the __module_private__ declaration specifier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142188 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
86d18c56383404f2098c6dbc716852aad60ba060 |
15-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Place static initializers on linux into the ".text.startup" section, so the linker can group them together for performance. This only has an effect with fairly new binutils (2.21.51 or later). Other ELF targets probably want this as well, but on BSDs binutils is usually old so it doesn't matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142076 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
aa4a99b4a62615db243f7a5c433169f2fc704420 |
15-Oct-2011 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide half floating point support as a storage only type. Lack of half FP was a regression compared to llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142016 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
2be460723940f8184ec36529b6f6ddf59c04e411 |
14-Oct-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Misc fixes for atomics. Biggest fix is doing alignment correctly for _Atomic types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142002 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
18c407fcb25ea88a52ad48fcc4397c3616dd185d |
12-Oct-2011 |
Bob Wilson <bob.wilson@apple.com> |
Change __extension__ to disable only diagnostics controlled by -pedantic. This changes clang to match GCC's behavior for __extension__, which temporarily disables the -pedantic flag. Warnings that are enabled without -pedantic are not affected. Besides the general goodness of matching GCC's precedent, my motivation for this is that macros in the arm_neon.h header need to use __extension__ to avoid pedantic complaints about their use of statement expressions, yet we still want to warn about incompatible pointer arguments for those macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141804 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
7e1812fa60d1387a459992b2a46df1a6b91d993a |
12-Oct-2011 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add target info for Linux on PPC & Sparc. Patch by Hal Finkel! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141772 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
796dbfb6c43336f58c026137c438e53eadc381f7 |
12-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getFileLoc which returns a file location taking into account macro arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141771 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
98d86b98b3fd0bd9c546123b16fd9995509aaae1 |
11-Oct-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add a -Wc++0x-compat warning for C++11 keywords used as identifiers when in C++98 mode. Only the first occurrence of each keyword will produce a warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141700 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
dd4a889f6a5b05f0061d63af8136ebd70d132c65 |
11-Oct-2011 |
David Meyer <pdox@google.com> |
Allow regparm attribute for PNaCl target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141638 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
567c60024aa905d9039bbeb905b70172b1d12b40 |
11-Oct-2011 |
Lang Hames <lhames@gmail.com> |
Fixed natural stack alignment for Linux x86-32. Thanks Eli. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141617 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f4f5003041ca88e0efe81ef8b5d7f0c499da4bf8 |
11-Oct-2011 |
Lang Hames <lhames@gmail.com> |
Update target data strings for ARM and X86 to include the natural stack alignment parameter "S<size>" that was introduced in r141599. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141601 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
209f5bb70b5719e06a64fa6fa1435e6e1f76502a |
07-Oct-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Add address spaces for TCE target. Patch by Pekka Jääskeläinen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141390 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
53201a86f775c064b62ec25742106c7b43ba8749 |
04-Oct-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Apparently, #pragma ... diagnostic is intended to override the command line options (at least according to GCC's documentation). GCC 4.2 didn't appear to actually do this, but it seems like that has been fixed in later release, so we will follow the docs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141119 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
c3b4575b77164fdf008cd4acc330884d56ca500f |
04-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make sure SourceManager::getFileIDLoaded doesn't hang in release build because of invalid passed parameter. rdar://10210140 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141048 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
25bedca83404020665b7246d537bda85492a2b3e |
03-Oct-2011 |
Justin Holewinski <justin.holewinski@gmail.com> |
PTX: Add some basic support for OpenCL address spaces git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141008 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
aeacae523a1c6e5bb99d12754415bbbc3ccb86c9 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostic: Kill off a few unnecessary functions now that refactoring is done, and add a note that the new setDiagnosticGroup{...} methods only operate on the current diagnostic state. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140771 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
be1aa410274b28fc143c47c814f07c989f4534d6 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Rewrite DiagnosticIDs::getDiagnosticLevel completely to be straighter line code, use the new DiagnosticMappingInfo flags, and eliminate the odd MAP_WARNING_NO_WERROR and friend mappings. - This fixes a host of obscure bugs with regards to how warning mapping options composed with one another, and I believe makes the code substantially easier to read and reason about. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140770 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
a5e41333b06fdf036d58495490eb14d6a0a3fcf7 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Add three explicit bits to DiagnosticMappingInfo to track "no-warning-as-error", "no-error-as-fatal", and "show-in-system-header", and update DiagnosticsEngine::setDiagnosticGroup{WarningAsError,ErrorAsFatal} and GetDefaultDiagMappingInfo to set them appropriately. - No actual functionality change for now, we still also use the diag::Mapping::{MAP_WARNING_NO_ERROR,MAP_ERROR_NO_FATAL,MAP_WARNING_SHOW_IN_SYSTEM_HEADER} for a little while longer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140768 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
3f8394669673451061f57ced81f0a2cae087f119 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Add a DiagnosticIDs::getDiagnosticsInGroup method, and use that in DiagnosticEngine instead of the convoluted calling into DiagnosticIDs which then calls back into the DiagnosticsEngine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140766 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
ba494c64365d78b1cdb6baea4d1e79263389fda9 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostic: Add a DiagSate::getOrAddMappingInfo method. - Also, spell const_iterator as const_iterator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140765 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
09ea68d17bc0fc0b16d287ad4d3f61fe7def4f17 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Move setDiagnosticMapping() to using DiagnosticMappingInfo and eliminate setDiagnosticMappingInternal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140763 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b1c99c679adb53be8f478d08be83af6c9c22ae4b |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Add a DiagnosticMappingInfo helper class, and switch to storing mappings with that instead of straying some magic constants about the source. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140760 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
c3c4a89747e12ebc2eabe57265c8b69ab720ecbf |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Eliminate getDiagnosticMappingInfo method, which wasn't worth methodizing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140759 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
1656aaec223949245fdbebf306b719cba0b687ca |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostic: Eliminate the extra "mapping" out-parameter now that I killed the sole client. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140756 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
76101cfe52d1b56974bf0e316247b3201f87c463 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Add an isDefaultMappingAsError method, and switch TextDiagnosticPrinter to use that instead of extracting the current mapping via getDiagnosticLevel, which fixes one class of corner cases w.r.t. printing the "-Werror" diagnostic option marker. - The TextDiagnosticPrinter code is still fragile as it is just "reverse engineering" what the diagnostic engine is doing. Not my current priority to fix though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140752 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
4aa8f2bce0f498152d624f748712a991adc23fdd |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostic: Factor out DiagnosticsEngine::setDiagnosticGroup{ErrorAsFatal,WarningAsError} methods which more accurately model the correct API -- no internal change to the diagnostics engine yet though. - Also, stop honoring -Werror=everything (etc.) as a valid (but oddly behaved) option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140747 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4213df3b5da21ce25a4541ca5c447eeb28b515a3 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Split out the default warning "no-Werror" and "show-in-system-header" bits, which is part of teasing them apart from the diagnostic mapping kind. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140742 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
83450aa7e778537a47eb678c8300f41b7f806219 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Fix a typo spotted by Jonathan Sauer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140708 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5b7803db01a5cf5fbbeef8dc5d07e8eff303f131 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Attempt to silence the GCC -Wreturn-type warning... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140693 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
49defe63013f6a97aed2f35e50c6b6c69bc0dcf8 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Generate tests for all of the x86 SIMD instruction feature set predefines based on the output of GCC as well as the CPU predefines. Invert tests for __AVX__, Clang's AVX feature is hard coded off still. Switch Atom from 'SSE3' to 'SSSE3'. This matches GCC's behavior, Intel's documentation, and ICC's documentation (such as I could dig up). Switch Athlon and Geode to enable 3dnowa rather than just 3dnow and nothing (resp.). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140692 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
53bf4f94185dbd1144724cdd5101d2163890b049 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Fix a think-o on my part that got enshrined in a FIXME by setting up the __tune_...__ define as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140690 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
88c75b0af17d103a116239a04dea7f27081370ab |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Move some of the defines down to more natural locations, consolidating the target identifying macros at the top, including subtarget macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140689 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
26a3914eeda65e0dd6b55899f6d76ef99fc021c6 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Teach Clang to reject 32-bit only CPUs when compiling in 64-bit mode. Add 64-bit preprocessor macro tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140688 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f17ba331e844ad0b99a35b9e4947b42967e44238 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Simplify the control flow for predefined macro selection by using fallthrough now that we're working with a switch. Also remove a dubious "feature" regarding k6 processors and 3dnow and leave a fixme... Not that anyone is likely to care about correct tuning for k6 processors with and w/o 3dnow... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140687 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d9d3ddff44ca1502661f727dd91f64eb5823d647 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the X86TargetInfo object from a string representation of the selected CPU model to the enumeration. This parses the string representation once using a StringSwitch on SetCPU. It returns an error for strings which are not recognized (yay!). Finally it replaces ridiculous if-chains with switches that cover all enumerators. The last change required adding several missing entries to the features function. These were obvious on inspection. Yay for a pattern that gives warnings when we miss one. No new test cases yet, as I want to get the 64-bit errors working first. I'll then start fleshing out the testing more. Currently I'm primarily testing on Linux, but I'm hoping check whether there are interesting differences on darwin before long... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
499d972f08af0f1bffe30f253b24e66dfb0d4e02 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Introduce an enumeration for the x86 CPUs recognized by Clang. I've tried to give these nice doxyments, but if I've gotten any of my history wrong, please chime in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140684 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c3a2e654f1e1c5cf956d0666d9c4c2f60a66f112 |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up a bit of the uses of CPU in the TargetInfo classes. This makes it an error if a CPU is provided for a target that doesn't implement logic handling CPU settings, to match the ABI settings. It also removes the CPU parameter from the getDefaultFeatures method. This parameter was always filled in with the same value as setCPU was called with, and at this point every single target implementation that referenced the CPU within this function has needed to store the CPU via setCPU anyways in order to implement other interface points. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140683 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f6cf1c28fbdeafee3cee95423a6a76be7278867e |
28-Sep-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Begin fixing Clang's predefined macros for various architectures. This is *very* much a WIP that I'll be refining over the next several commits, but I need to get this checkpoint in place for sanity. This also adds a much more comprehensive test for architecture macros, which is roughly generated by inspecting the behavior of a trunk build of GCC. It still requires some massaging, but eventually I'll even check in the script that generates these so that others can use it to append more tests for more architectures, etc. Next up is a bunch of simplification of the Targets.cpp code, followed by a lot more test cases once we can reject invalid architectures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140673 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b201e16e0c331b0bdeae7b30f9f79aae32beb1b2 |
27-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Break SourceManager::translateFileLineCol into translateFile, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140610 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
fb3612ef197cb8532c05f33889ec1aed7c26e5cb |
26-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Associate the macro arguments location map with a FileID instead of a ContentCache, since multiple FileIDs can have the same ContentCache but the expanded macro arguments locations will be different. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140521 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
40847cfb58acc3cac7d68727df9455ac45f2e118 |
26-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Rename DiagnosticInfo to Diagnostic as per issue 5397 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140493 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
78ad0b98848c17a0a11847fa1d456e2dfec8aa2f |
26-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Rename DiagnosticClient to DiagnosticConsumer as per issue 5397 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140479 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d6471f7c1921c7802804ce3ff6fe9768310f72b9 |
26-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Rename Diagnostic to DiagnosticsEngine as per issue 5397 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140478 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
ourceManager.cpp
argets.cpp
|
9fe8c74a93ac8e92512615c5f83e7a328b3b0544 |
23-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Fix missing includes for llvm_unreachable git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140368 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
argetInfo.cpp
argets.cpp
|
b219cfc4d75f0a03630b7c4509ef791b7e97b2c8 |
23-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Switch assert(0/false) llvm_unreachable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140367 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
argetInfo.cpp
argets.cpp
|
d8e0fe617af3c9fb60a680ecb2ff765b71ef3c1d |
22-Sep-2011 |
Justin Holewinski <justin.holewinski@gmail.com> |
PTX: Clean up target options code git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140320 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5e5e95dec56d8f2392068c43c84eaaad674c2702 |
21-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In SourceManager::translateLineCol, handle the case where we are pointing directly at the end of the source file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140192 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bf5851a9f2ba2323b96626bbd78de45c0db1da95 |
20-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Define Mips64 TargetInfo classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140174 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b6a37b38c976b05a67f9cacf6fe1d1aa26193e03 |
20-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Clean up TargetInfo class hierarchy. Define a base class from which TargetInfos of Mips32 big and little endian derive. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140170 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
68018db76756c6959db15160055fd8da6bec5bec |
20-Sep-2011 |
Ivan Krasin <krasin@chromium.org> |
Clarify PNaCl target characteristics: set LongDoubleWidth, PtrDiffType, IntPtrType, change __builtin_va_list to from a structure to int[4] (same alignment and size, but with a simpler representation). Patch by David Meyer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140144 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
507097ec40105ed927cb5a744fad98f5875aacac |
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] When getting a source location from a file:line:col triplet check whether the requested location points inside the precompiled preamble, in which case the returned source location will be a "loaded" one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140060 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
efa2ff8603dae51f5f5ed7509a503f477498ad22 |
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Break SourceManager::translateFileLineCol into translateLineCol that returns the source location of line:col of a specific FileID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140059 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a64ccefdf0ea4e03ec88805d71b0af74950c7472 |
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Rename SourceLocation::getFileLocWithOffset -> getLocWithOffset. It already works (and is useful with) macro locs as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140057 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
50402470f07f720c509c8797f40a106a0d4af6a7 |
19-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For SourceManager::isBeforeInTranslationUnit, a location pointing inside a macro argument should be regarded as coming before the location of the expanded tokens. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140053 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
62ec1f2fd7368542bb926c04797fb07023547694 |
17-Sep-2011 |
Francois Pichet <pichet2000@gmail.com> |
Rename LangOptions::Microsoft to LangOptions::MicrosoftExt to make it clear that this flag must be used only for Microsoft extensions and not emulation; to avoid confusion with the new LangOptions::MicrosoftMode flag. Many of the code now under LangOptions::MicrosoftExt will eventually be moved under the LangOptions::MicrosoftMode flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139987 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
argets.cpp
|
0f50b08940ea0a9a44f2715f49ccf6bc64b95491 |
15-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach LangOptions::resetNonModularOptions to actually do what it says it does git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139791 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
|
808ef66afbafb210baa19b567ac20f73142f5111 |
15-Sep-2011 |
Justin Holewinski <justin.holewinski@gmail.com> |
PTX: Define target options git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139789 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ab9b154c93475fa55e6115774f64661737d113f9 |
14-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Add comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139700 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6e975c4517958bcc11c834336d340797356058db |
14-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
For modules, use a hash of the compiler version, language options, and target triple to separate modules built under different conditions. The hash is used to create a subdirectory in the module cache path where other invocations of the compiler (with the same version, language options, etc.) can find the precompiled modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139662 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
36f37b6f578249c20d7a3b3aa77f0a00069ca9ac |
14-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
O64 will not be supported. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139655 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1d19edc492e8801716a82c61570b6595da00c2c2 |
14-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
mips*-*-psp is no longer supported as a target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139654 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1c7e0472f5683a8ade62285f366637050cf113e5 |
13-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
When building a module on-demand, clear out the "non-modular" language and preprocessor options (such as macro definitions) first. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139638 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
|
e289d81369914678db386f6aa86faf8f178e245d |
13-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Switch LangOptions over to a .def file that describes header of the language options. Use that .def file to declare the LangOptions class and initialize all of its members, eliminating a source of annoying initialization bugs. AST serialization changes are next up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139605 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
angOptions.cpp
argets.cpp
|
21cae2059a06f7d89eee169409c9266def1b1aca |
13-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
When an import statement fails to find a module in the module cache, but there is a corresponding umbrella header in a framework, build the module on-the-fly so it can be immediately loaded at the import statement. This is very much proof-of-concept code, with details to be fleshed out over time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139558 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
62f940bff18f1e0d48466b08d2b61d137ebb65bd |
08-Sep-2011 |
Abramo Bagnara <abramo.bagnara@gmail.com> |
Added missing initialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139291 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
998b3d3e8528ebd9d2c5d78d3a82edd90a8953a4 |
02-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Allow the preprocessor to be constructed without performing target- and language-specific initialization. Use this to allow ASTUnit to create a preprocessor object *before* loading the AST file. No actual functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138983 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
7143aab97c6e849a5a5005b7853b8c7d5af008ed |
01-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Modules hide macro definitions by default, so that silly things like include guards don't show up as macro definitions in every translation unit that imports a module. Macro definitions can, however, be exported with the intentionally-ugly #__export_macro__ directive. Implement this feature by not even bothering to serialize non-exported macros to a module, because clients of that module need not (should not) know that these macros even exist. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138943 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
f619cdc13267625a6c63aedc9ba4b52bdb40a3b9 |
30-Aug-2011 |
Ivan Krasin <krasin@chromium.org> |
Clang/PNaCl: Improve test coverage for PNaClTargetInfo (type aligns), fixes nits: - wrong alignment for double (it was 4, but 8 is desired), - added checks for _REENTRANT define, - fixed the issue that defines were not tested (because the check for inside #ifdef). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138775 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
80cb6e69d9e85231588ae604e4bc2bc9a07389af |
29-Aug-2011 |
Nico Weber <nicolasweber@gmx.de> |
Warn on missing [super finalize] calls. This matches gcc's logic. Second half of PR10661. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138730 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
089ee11529c2f9318a52f026ecf3acae997c102e |
26-Aug-2011 |
Ivan Krasin <krasin@chromium.org> |
PNaClTargetInfo: add __ELF__, _REENTRANT and _GNU_SOURCE defines and update the test git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138607 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bba43efdec3b2aa483b55d4287ba1c48c55935d4 |
24-Aug-2011 |
Ivan Krasin <krasin@chromium.org> |
Follow up to r138470 (Add PNaCl TargetInfo). I've occasionally submitted wrong patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138489 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ef05abda02375a6565edcc0bdf20bdd41c0a87b3 |
24-Aug-2011 |
Ivan Krasin <krasin@chromium.org> |
Add PNaCl TargetInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138470 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d7cb46c316808169679a8d72c69f02a1e55d78a8 |
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove one SourceManager::isInFileID overload and use isOffsetInFileID for the other. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138381 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b6c465e17ec37390667223a18a340e8652c212ff |
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Amend r138129 (reduction of SLocEntries) which introduced performance regression due to increased calls to SourceManager::getFileID. (rdar://9992664) Use a slightly different approach that is more efficient both in terms of speed (no extra getFileID calls) and in SLocEntries reduction. Comparing pre-r138129 and this patch we get: For compiling SemaExpr.cpp reduction of SLocEntries by 26%. For the boost enum library: -SLocEntries -34% (note that this was -5% for r138129) -Memory consumption -50% -PCH size -31% Reduced SLocEntries also benefit the hot function SourceManager::getFileID, evident by the reduced "FileID scans". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138380 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
984e42ca1ff7775ce39372c314f1cb7d6862c4c7 |
23-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move a couple of SourceManager functions out-of-line; no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138375 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d9d2b679d0728ea7f539f38aaea38e26b8b08043 |
22-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Boost the efficiency of SourceManager::getMacroArgExpandedLocation. Currently getMacroArgExpandedLocation is very inefficient and for the case of a location pointing at the main file it will end up checking almost all of the SLocEntries. Make it faster: -Use a map of macro argument chunks to their expanded source location. The map is for a single source file, it's stored in the file's ContentCache and lazily computed, like the source lines cache. -In SLocEntry's FileInfo add an 'unsigned NumCreatedFIDs' field that keeps track of the number of FileIDs (files and macros) that were created during preprocessing of that particular file SLocEntry. This is useful when computing the macro argument map in skipping included files while scanning for macro arg FileIDs that lexed from a specific source file. Due to padding, the new field does not increase the size of SLocEntry. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138225 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
54232ade44d31e98ea83f43ca066128e315dcbda |
20-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Refactor common functionality into SourceManager::getFileIDSize, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138127 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1e473ccb0e0f6fd1954bef330f7193c1a3fb3ba1 |
18-Aug-2011 |
Ted Kremenek <kremenek@apple.com> |
Implement '-Weverything', which enables all warnings except those explicitly mapped to be ignored. Currently this includes -pedantic warnings as well; we'll need to consider whether these should be included. This works as expected with -Werror. Test cases were added to Sema/warn-unused-parameters.c, but they should probably be broken off into their own test file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137910 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
292772c16558cf52a8a01452e259b09d586804ec |
18-Aug-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
"-mavx" should also enable all other SSE levels. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137905 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f1d594864b4aefc1fe21535cb43e8a81038f3f15 |
17-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Fix -ferror-limit= to properly emit notes following the last error messages. Fi from David Blaikie, tests from Nikola Smiljanic! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137851 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
ac836e442cbd17f33533bd0b4879258945bc1723 |
17-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getMacroArgExpandedLocation function. If we pass it a source location that points inside a function macro argument, the returned location will be the macro location in which the argument was expanded. If a macro argument is used multiple times, the expanded location will be at the first expansion of the argument. e.g. MY_MACRO(foo); ^ Passing a file location pointing at 'foo', will yield a macro location where 'foo' was expanded into. Make SourceManager::getLocation call getMacroArgExpandedLocation as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137794 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
37e59a10a7a537428e5997fd5896f5b89fd34e6b |
17-Aug-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make SourceManager::isBeforeInTranslationUnit handle macro locations correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137793 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7c5109b0322058c1fb80222b71b380b2c7b10d4e |
13-Aug-2011 |
Jeffrey Yasskin <jyasskin@google.com> |
Fix C++0x narrowing conversion errors in Clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137552 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
6948bc4bcbd92502d90b877780a3b746275efa5b |
09-Aug-2011 |
Ted Kremenek <kremenek@apple.com> |
Provide diag_iterator for iterating over the built-in diagnostic IDs/names in the internal table of DiagnosticIDs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137108 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
6e43f3f0e2fa7a4b50d2497de94a40437cd26003 |
04-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
Additional comments and whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136892 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
61a62216a0bb33fb668ab653d9f9a704e43d2fc6 |
04-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
Add partial support for using anonymous bitfields (e.g., int : 0) to enforce alignment. This fixes cases where the anonymous bitfield is followed by a non-bitfield member. E.g., struct t4 { int foo : 1; long : 0; char bar; }; Part of rdar://9859156 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136858 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
b9a8adf57b30611951e72e140b61ecc7caee3564 |
31-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove dead code flagged by GCC's -Wunused-but-set-variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136581 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
895d4220e590a1aefd24954e3ccabe53b9676608 |
29-Jul-2011 |
Eric Christopher <echristo@apple.com> |
Add support for the 'Q' arm memory constraint. Fixes rdar://9866494 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136524 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c0a575f9b791a25c94b1c3c832dd73ec564646bb |
29-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make DiagnosticErrorTrap keep a count of the errors that occurred so multiple DiagnosticErrorTraps can be composed (e.g. a trap inside another trap). Fixes http://llvm.org/PR10462 & rdar://9852007. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136447 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
6e36c12404269eb4909e85d3be69f78d36d1d297 |
27-Jul-2011 |
Ted Kremenek <kremenek@apple.com> |
Change SourceManager::getDataStructureSizes() to use llvm::capacity_in_bytes(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136236 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ca7dc2b755eb81ac95121ce1a1f1aa44a4a0fe12 |
27-Jul-2011 |
Ted Kremenek <kremenek@apple.com> |
clang_getCXTUResourceUsage: Report memory used by data structures in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136189 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9f1210c3280104417a4ad30f0a00825ac8fa718a |
26-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
After further discussion it has been determined that alignof should report the preferred alignment. Thus, revert r135934, r135935, and r135940. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136062 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
3201f382956ed9beee9fb31229c2835c1208889c |
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up as many of the comments in Basic I can find to talk in terms of 'expansion' rather than 'instantiation' for macro source locations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136058 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
ourceLocation.cpp
ourceManager.cpp
|
1728762d5a8cfaf8d64385f47b311e84de1ae7a2 |
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Migrate 'Instantiation' data and API bits of SLocEntry to 'Expansion' etc. With this I think essentially all of the SourceManager APIs are converted. Comments and random other bits of cleanup should be all thats left. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136057 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
78df836808aee22c3157e1bc23bc4ec569b80568 |
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Convert InstantiationInfo and much of the related code to ExpansionInfo and various other 'expansion' based terms. I've tried to reformat where appropriate and catch as many references in comments but I'm going to do several more passes. Also I've tried to expand parameter names to be more clear where appropriate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136056 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bf340e452339e374ea6eef78c1f0a2abdd16c5a3 |
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename create(MacroArg)InstantiationLoc to create(MacroArg)ExpansionLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136054 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
96d3589e523a04f4ff2058a7919226ce60696ae8 |
26-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename SourceManager (and InstantiationInfo) isMacroArgInstantiation API to isMacroArgExpansion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136053 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
642116259e8df6286063a17361c20e95b5017a0a |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename getInstantiationLineNumber to getExpansionLineNumber in both SourceManager and FullSourceLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135969 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
a77c031cb66f75d22672070052cc6e0205289ff8 |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename getInstantiationColumnNumber to getExpansionColumnNumber in both SourceManager and FullSourceLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135965 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
e7b2b6e87dbe5b1207f77b6ff9c210a02f95bb39 |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename getDecomposedInstantiationLoc to getDecomposedExpansionLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135962 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f84ef95ecec34f27fd05eb4e0392ca6bd3bd0be0 |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
getInstantiationLocSlowCase -> getExpansionLocSlowCase git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135961 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
999f739404edf2078cf9f9c28b4dc45c19765842 |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename SourceManager::getImmediateInstantiationRange to getImmediateExpansionRange. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135960 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
822f54a7ba3eca643104623e8048be20a3391b19 |
25-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
Allow target to specify about using minimum alignment vs preferred. Takes care of FIXME: Override "preferred align" for double and long long for ARM apcs-gnu ABI. Also part of rdar://9802874 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135940 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
edc3dccece244a584f8ebdb81da6c962c08e79be |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rename SourceManager::getInstantiationRange to getExpansionRange. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135915 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
402785357ab053dd53f4fdd858b9630a5e0f8bad |
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Mechanically rename SourceManager::getInstantiationLoc and FullSourceLoc::getInstantiationLoc to ...::getExpansionLoc. This is part of the API and documentation update from 'instantiation' as the term for macros to 'expansion'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135914 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
ourceLocation.cpp
|
2d3ba4f5a923a90c3fc290ddfba5e36c2d0a9b46 |
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
Move ArrayRef to LLVM.h and eliminate now-redundant qualifiers, patch by Jon Mulder! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135855 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5f9e272e632e951b1efe824cd16acb4d96077930 |
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports them into the clang namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135852 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
iagnostic.cpp
iagnosticIDs.cpp
ileManager.cpp
dentifierTable.cpp
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
ersion.cpp
ersionTuple.cpp
|
8c24d1a29442ff362292ea1690452652bb49d1c6 |
21-Jul-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Define the _MIPS_SIM builtin macro on MIPS platforms. Patch by Robert Millan! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135675 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9d102547dc44d064b40473a5a5166a8bb0dec99a |
20-Jul-2011 |
Logan Chien <loganchien@google.com> |
Merge with clang upstream r135574 (Jul 20th 2011) Change-Id: Ib6cc2ba08a63e4cf8febc05fb6e3f2ca58f1d71d
|
d9259f373f2f0460a1ab12792b282d19bebfc2e2 |
19-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
Refactor r135502 to avoid an empty if else condition, per Eric's suggestion (good call!). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135510 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b536a1565c9d72a8caacf75d97dffd19cb2777ad |
19-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
Clang asserts "Invalid environment!" when using -ccc-host-triple arch-pc-win32-macho (e.g., x86_64-pc-win32-macho), which appears to be a false positive. rdar://9786307 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135502 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f62d43d2afe1960755a1b5813cae1e5983bcac1b |
19-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Revamp the SourceManager to separate the representation of parsed source locations from source locations loaded from an AST/PCH file. Previously, loading an AST/PCH file involved carefully pre-allocating space at the beginning of the source manager for the source locations and FileIDs that correspond to the prefix, and then appending the source locations/FileIDs used for parsing the remaining translation unit. This design forced us into loading PCH files early, as a prefix, whic has become a rather significant limitation. This patch splits the SourceManager space into two parts: for source location "addresses", the lower values (growing upward) are used to describe parsed code, while upper values (growing downward) are used for source locations loaded from AST/PCH files. Similarly, positive FileIDs are used to describe parsed code while negative FileIDs are used to file/macro locations loaded from AST/PCH files. As a result, we can load PCH/AST files even during parsing, making various improvemnts in the future possible, e.g., teaching #include <foo.h> to look for and load <foo.h.gch> if it happens to be already available. This patch was originally written by Sebastian Redl, then brought forward to the modern age by Jonathan Turner, and finally polished/finished by me to be committed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135484 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceManager.cpp
|
174cba922331b896949d02d8b1a05f1998ed98e1 |
16-Jul-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r135344 at Sat. 16th July 2011.
|
48b78bda3ede7c77273f9047b9ce2760fa057482 |
14-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
simplify git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135170 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e5f83ba515157dc7f263dc91b1d51c7a5754c35 |
14-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
StringMap::first() is about to start returning a StringRef, adapt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135166 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e02d391ffef647ba0d48b85e211a94d9fb83393f |
12-Jul-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Disable avx feature from corei7-avx, and use -mavx for now. Right now, if -mavx is specified, 128 avx code is used and we're not sure yet if this the behavior we want (and if it does, some improvements are needed before relying on it). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134939 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5af80aa8217ff39424e5e3625da5ca43f17f2dad |
12-Jul-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Enable "avx" feature, so it can be seen by llvm git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134935 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0673cb30340aadaede7b795c763b00f6b64e611c |
11-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Apply patch from Richard Trieu to fix PR9548: When two different types has the same text representation in the same diagnostic message, print an a.k.a. after the type if the a.k.a. gives extra information about the type. class versa_string; typedef versa_string string; namespace std {template <typename T> class vector;} using std::vector; void f(vector<string> v); namespace std { class basic_string; typedef basic_string string; template <typename T> class vector {}; void g() { vector<string> v; f(v); } } Old message: ---------------- test.cc:15:3: error: no matching function for call to 'f' f(&v); ^ test.cc:7:6: note: candidate function not viable: no known conversion from 'vector<string>' to 'vector<string>' for 1st argument void f(vector<string> v); ^ 1 error generated. New message: --------------- test.cc:15:3: error: no matching function for call to 'f' f(v); ^ test.cc:7:6: note: candidate function not viable: no known conversion from 'vector<string>' (aka 'std::vector<std::basic_string>') to 'vector<string>' (aka 'std::vector<versa_string>') for 1st argument void f(vector<string> v); ^ 1 error generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134904 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
c3e0fb406fb6fe83566dc6d8b05362e0a2c1e191 |
09-Jul-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Change -mno-mmx to be more compatible with gcc. Specifically, -mno-mmx should not imply -mno-sse. Note that because we don't usually touch the MMX registers anyway, all -mno-mmx needs to do is tweak the x86-32 calling convention a little for vectors that look like MMX vectors, and prevent the definition of __MMX__. clang doesn't actually stop the user from using MMX inline asm operands or MMX builtins in -mno-mmx mode; as a QOI issue, it would be nice to diagnose, but I doubt it really matters much. <rdar://problem/9694837> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134770 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f972b26368570e5fbbb23e1302b28bbf81c15c69 |
08-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Fix a FIXME in clang ARM driver that was exposed as a bug with ARM backend change. Previously clang was passing the following feature strings to the ARM backend when CPU is cortex-a8: +neon,-vfp2,-vfp3 This used to work because -vfp2,-vfp3 had no effect after +neon. Now that the features are controlled by individual bits (with implied hierarchy), the net effect is all three features will be turned off. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134691 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c8d1ecca1cd3fadbd331d15c420755aa6184554b |
08-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Keep track of which source locations are part of a macro argument instantiation and improve diagnostics which are stem from macro arguments to trace the argument itself back through the layers of macro expansion. This requires some tricky handling of the source locations, as the argument appears to be expanded in the opposite direction from the surrounding macro. This patch provides helper routines that encapsulate the logic and explain the reasoning behind how we step through macros during diagnostic printing. This fixes the rest of the test cases originially in PR9279, and later split out into PR10214 and PR10215. There is still some more work we can do here to improve the macro backtrace, but those will follow as separate patches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134660 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7c9adf9113b1d1dfeca1d265a7c3bedb3671cfab |
08-Jul-2011 |
Eric Christopher <echristo@apple.com> |
Fix a typo in the fpsr register and add the fpcr register. Fixes PR10299 and rdar://9740322 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134654 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7a759606d93975866051f67104ae58446e55f404 |
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move SourceManager::isAt[Start/End]OfMacroInstantiation functions to the Lexer, since they depend on it now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134644 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8e627066a0765a7c8df69b3ac6e4f25d8a0ce9d8 |
07-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
FreeBSD gets FreeBSD target, just mipsel. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134619 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b73377eeb3eff76be134203aebb6068244b177f3 |
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make the Preprocessor more memory efficient and improve macro instantiation diagnostics. When a macro instantiation occurs, reserve a SLocEntry chunk with length the full length of the macro definition source. Set the spelling location of this chunk to point to the start of the macro definition and any tokens that are lexed directly from the macro definition will get a location from this chunk with the appropriate offset. For any tokens that come from argument expansion, '##' paste operator, etc. have their instantiation location point at the appropriate place in the instantiated macro definition (the argument identifier and the '##' token respectively). This improves macro instantiation diagnostics: Before: t.c:5:9: error: invalid operands to binary expression ('struct S' and 'int') int y = M(/); ^~~~ t.c:5:11: note: instantiated from: int y = M(/); ^ After: t.c:5:9: error: invalid operands to binary expression ('struct S' and 'int') int y = M(/); ^~~~ t.c:3:20: note: instantiated from: \#define M(op) (foo op 3); ~~~ ^ ~ t.c:5:11: note: instantiated from: int y = M(/); ^ The memory savings for a candidate boost library that abuses the preprocessor are: - 32% less SLocEntries (37M -> 25M) - 30% reduction in PCH file size (900M -> 635M) - 50% reduction in memory usage for the SLocEntry table (1.6G -> 800M) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134587 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8b86ef0b71900c64c0c2cfca54cac08a203a16a4 |
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix bug in SourceManager::getDecomposedInstantiationLocSlowCase. It would add up relative (decomposed) offsets like in getDecomposedSpellingLocSlowCase, but while it makes sense to preserve the offset among lexed spelling locations, it doesn't make sense to add anything to the offset of the instantiation location. The instantiation location will be the same regardless of the relative offset in the tokens that were instantiated. This bug didn't actually affect anything because, currently, in practice we never create macro locations with relative offset greater than 0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134586 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d410e741e8085e109c1dc5886c0acea88a4ca0f4 |
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For -print-stats, add the number of bytes that SLocEntryTable consumes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134585 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
85bea9777d444ccbcc086d98f075fe666c2e865d |
06-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Keep track of when "unrecoverable" errors occur, then allow clang_saveTranslationUnit() to save a PCH file if the only errors it contains are recoverable errors. Fixes <rdar://problem/9727804>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134503 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
e855448bc8dddac24a72ba8dc7e936d31e896fe4 |
06-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVectorize a critical vector. The small number of elements was determined by taking the median file length in clang+llvm and /usr/include on OS X with xcode installed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134496 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
caf01c5483d0c2f8542d1e18ca6213dc6d0e54bf |
06-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Fix C&P error git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134490 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9670e179a67d868e171feac44fb8f9e2f108c5e8 |
06-Jul-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objc-arc: enforce performSelector rules in rejecting retaining selectors passed to it, and unknown selectors causing potential leak. // rdar://9659270 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134449 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
e7e66f72221d6233bdad3b87a717e7382acd477b |
05-Jul-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Remove unused member of Builtin::Info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134443 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
argets.cpp
|
94c9ce54bf69768166deb2a716863c64b12f77a6 |
05-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Hook up mipsel-netbsd and mipsel-freebsd for OS specific handling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134425 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fa9772b102a2ca59feae2b4463fcd5b9638f8a8d |
05-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Use OS-specific configuration for mips-netbsd and mips-freebsd. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134422 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7cd1de5cc0b28a7c6f09406e92f182f541572b43 |
05-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Don't define _BIG_ENDIAN for NetBSD/PowerPC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134411 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
78542df70999c9c7edbf7f4bb0ade643ee79301c |
05-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Fix indentation git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134410 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1a83b43d34cfc2eb2a1cc9bf9599cf67e265aeec |
05-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Add explicit default case for -Wswitch-enum. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134399 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9a11b7410aa8e84af18f0c4076bfd030850bc8ba |
04-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Use switch(os) style consistently. Add a bunch of NetBSD branches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134393 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6ac26fae1ad4a8f0c20dfc032f962a020a044100 |
04-Jul-2011 |
Joerg Sonnenberger <joerg@bec.de> |
On PowerPC, both FreeBSD and NetBSD use ints for (s)size_t git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134392 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3c54415a4e1db09b210a466469c72d2582ce1d83 |
02-Jul-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r134305 at Sat. 2nd July 2011.
|
aa7333c860ac651c75da495217e0d6a9c10c0bb0 |
02-Jul-2011 |
Eric Christopher <echristo@apple.com> |
Update for llvm commit r134291. Fixes rdar://9714064 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134292 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dca5226598097add5d86d57b227aa31df27f0ba4 |
02-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Add initial *-*-rtems* target, from Joel Sherrill git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134283 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
949fd1aa675099b4340f7943a92a3ef4074b0323 |
29-Jun-2011 |
Bob Wilson <bob.wilson@apple.com> |
Use preferred 64-bit alignment for i64 & f64 for Thumb targets. Radar 9695134. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134070 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
de31fd7eeebdc64fb043463e7f515dab8eccac8d |
28-Jun-2011 |
Eric Christopher <echristo@apple.com> |
Split out logic for valid clobbers and valid inline asm registers. Fixes rdar://9281377 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134016 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ed37ab82c7790569bcd39f4ba421b17433ef530a |
24-Jun-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
SourceManager::isAtStartOfMacroInstantiation should check not only if the location is at the first token but that the location's offset is not inside the token as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133800 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7062281f240ef9c4fb343614fb2406532307c4a5 |
23-Jun-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r133678 at Thu. 23th Jun 2011.
|
65aa6885818d4b4eea2e5a9d12085b2398148662 |
21-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Make more use of llvm::StringRef in various APIs. In particular, don't use the deprecated forms of llvm::StringMap::GetOrCreateValue(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133515 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
cfd323d0d4476dd4ff64097c91b114067ecaa82b |
21-Jun-2011 |
Eric Christopher <echristo@apple.com> |
Move additional register names to their own lookup, separate from register aliases. Fixes unnecessary renames of clobbers. Fixes part of rdar://9425559 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133485 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
1816442fd19cb2f1c35a807391a6b7f280b35c58 |
17-Jun-2011 |
John McCall <rjmccall@apple.com> |
As a hopefully temporary workaround for a header mistake, treat __bridge_retain as a synonym for __bridge_retained. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133295 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dda231a4a72f793476ce2fa5e9f420c5ba76d267 |
17-Jun-2011 |
Eric Christopher <echristo@apple.com> |
Add some more memory constraints for ARM. Part of rdar://9197685 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133225 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
283f44752a66e6748de955cd82c37de5faf56f7b |
17-Jun-2011 |
Eric Christopher <echristo@apple.com> |
On ARM make sure that we continue translating 'p' to 'r' for the constraints. rdar://9618597 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133222 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8bfa257f156205ca4b423d83417c39f1a7cdc65f |
16-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
Stylistic fix: move virtual keyword before return type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133181 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
16c8f9d68ae6d302083763d4733e728634717dec |
16-Jun-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r133163 at Fri. 17th Jun 2011.
|
098df7f1de80527d7a70e410a5830c8b2d742310 |
16-Jun-2011 |
John McCall <rjmccall@apple.com> |
Unconditionally #define the ARC ownership qualifiers, instead of #defining them only on Darwin tool chains. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133112 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f85e193739c953358c865005855253af4f68a497 |
16-Jun-2011 |
John McCall <rjmccall@apple.com> |
Automatic Reference Counting. Language-design credit goes to a lot of people, but I particularly want to single out Blaine Garst and Patrick Beard for their contributions. Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself, in no particular order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133103 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
dentifierTable.cpp
argets.cpp
|
923cd5744a724d9302ea12baa5476ad1c37f474d |
15-Jun-2011 |
John McCall <rjmccall@apple.com> |
Generate enumerators for diagnostic categories. Patch by Argyrios! Depends on LLVM r133093. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133094 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
81f9d14f0b987923b37e8e3e256cdfa71e95d4ae |
14-Jun-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
StaticDiagNameIndex is never written to, place it into .rodata. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132990 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
dbda513550aaea9f4106455a3fc6b584bacc77f2 |
13-Jun-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Put classes into anonymous namespaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132924 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
926df6cfabf3eaa4afc990c097fa4619b76a9b57 |
11-Jun-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement Objective-C Related Result Type semantics. Related result types apply Cocoa conventions to the type of message sends and property accesses to Objective-C methods that are known to always return objects whose type is the same as the type of the receiving class (or a subclass thereof), such as +alloc and -init. This tightens up static type safety for Objective-C, so that we now diagnose mistakes like this: t.m:4:10: warning: incompatible pointer types initializing 'NSSet *' with an expression of type 'NSArray *' [-Wincompatible-pointer-types] NSSet *array = [[NSArray alloc] init]; ^ ~~~~~~~~~~~~~~~~~~~~~~ /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1: note: instance method 'init' is assumed to return an instance of its receiver type ('NSArray *') - (id)init; ^ It also means that we get decent type inference when writing code in Objective-C++0x: auto array = [[NSMutableArray alloc] initWithObjects:@"one", @"two",nil]; // ^ now infers NSMutableArray* rather than id git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132868 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
e5df885367b9e122ac11c89ddfbc62375695cdab |
10-Jun-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r132843 at Fri. 10th Jun 2011.
|
6ce33d67e2ed4f8c9395a807bebd25be04580c0f |
08-Jun-2011 |
Stuart Hastings <stuart@apple.com> |
Followup to 132737; make two-character string explicit, add some comments. rdar://problem/9037836 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132752 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
002333f8b2cf1a8614e532f6ce366b21af85142c |
08-Jun-2011 |
Stuart Hastings <stuart@apple.com> |
Clang support for ARM Uv/Uy/Uq inline-asm constraints. rdar://problem/9037836 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132737 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c7f532f9b8e934a0a284d15a739333372e979f61 |
03-Jun-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r132540 at Fri. 3rd Jun 2011.
|
fe87b824477bce3a0c3bf2a8d0e949f0249f9a29 |
03-Jun-2011 |
Francois Pichet <pichet2000@gmail.com> |
My testing shows that function stat has no problem with trailing separators. (tested on Windows and Darwin). This fixes a bug on Windows: clang c:\test.cpp Here the call stat("c:") is not recognized as a directory (must be "c:\"). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132539 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
619e8875d29cc019c7360595f66b9f91b3439494 |
02-Jun-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Add stuff for o32 ABI conformance. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132443 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
43c9791207a2bd7cef8b17e9bfc4dd87db21690f |
28-May-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream r132249 at Sat. 28th. May 2011.
|
469244a322dd5d35cee1d02d70a2edbc12ac5ce7 |
28-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a couple of helper methods in the SourceManager API, isAtStartOfMacroInstantiation/isAtEndOfMacroInstantiation useful only for source locations that point at a macro token. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132247 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
477aab6782795e7472055a54108d2df270ce1a89 |
25-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
A StringRef-ication of the DiagnosticIDs API and internals. Patch by Matthieu Monrocq with tweaks by me to avoid StringRefs in the static diagnostic data structures, which resulted in a huge global-var-init function. Depends on llvm commit r132046. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132047 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
848afb0c1ff4571ca7a21927ecc2699ea2e7429a |
24-May-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r131958 at Tue. 24th May 2011.
|
b65b672c7bd13bc145a2dedc210f46b11858b514 |
20-May-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
sandybridge is now called corei7-avx git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131729 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7dfd96fd5f4e63071f5d4f684e9f0e1928d226c7 |
20-May-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r131722 at Fri. 20th May 2011.
|
5adc0515aaacb6c4d4f0c9626d86c1e5c177467c |
18-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Do some safety checks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131491 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0c115a16d479c7cda12c66bceb3782fd45177481 |
14-May-2011 |
Nowar Gu <nowar100@gmail.com> |
Fix Android.mk.
ndroid.mk
|
d01d2b2de449d68e6c44d99a12c0c1fc53222113 |
14-May-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream to r131335 at Sat. 14th May 2011.
|
84f95cf115bc9031179e3b2c10a628dee3551142 |
13-May-2011 |
Bob Wilson <bob.wilson@apple.com> |
Define __ARM_NEON__ in both ARM and Thumb modes. Radar 9431992. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131301 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0e9972ccccf4e2baf1f65d4cf70f26897d285442 |
09-May-2011 |
John McCall <rjmccall@apple.com> |
__builtin_va_list is void* on ARM, not char*. rdar://problem/9391966 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131080 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e59abb56ce0e1c206fb80bd945a0c358b0abe1ef |
05-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce a Diagnostic::Report function that accepts and emits a StoredDiagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130919 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cb65de1b211aab46a0c6ddb3d323bdd21e8de378 |
03-May-2011 |
Daniel Dunbar <daniel@zuster.org> |
Revert r130750, "Make the mno flags match GCC. Patch by Alexander Best!", it breaks tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130753 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d8b9d687544d094f6e92e1faf877296d3ce8828e |
03-May-2011 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Make the mno flags match GCC. Patch by Alexander Best! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130750 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f61b831d7f6a15676b07647f507de80324cb7056 |
28-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Enhance clang_getCXTUResourceUsage() to report how much memory is used by SourceManager's memory buffers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130433 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
4d53be4a470fc546b4c1e7618a11cf8bc7c00675 |
27-Apr-2011 |
Eric Christopher <echristo@apple.com> |
Remove this assert, I don't think it's being helpful and people have been running into it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130296 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f1cc1d0efddc40a76ab70b074792dcd7e5ca4315 |
23-Apr-2011 |
Jay Foad <jay.foad@gmail.com> |
Like the coding standards say, do not use "using namespace std". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130054 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
144bc08f5fe6046bd8e07de5e41a4237dd2c6275 |
22-Apr-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Don't hide #warnings in a system header, same as gcc. Fixes rdar://8495837. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129951 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
cfdadfe547015b916bd59aec892caa972ff76cf0 |
22-Apr-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move the check whether a diagnostic must be ignored because it is in a system header inside DiagnosticIDs::getDiagnosticLevel. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129950 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
8a3a7f36aea62a91d12a4aafd16cc32081ad11cf |
21-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Allow OS X deployment targets like 10.4.11, even though they can't be represented in the environment define. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129939 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
285dc6530b37d632cd858bac444d29044de4d283 |
20-Apr-2011 |
Justin Holewinski <justin.holewinski@gmail.com> |
PTX: Add PTX intrinsics as builtins and add ptx32 and ptx64 as valid architectures for triples, e.g. ptx32-unknown-unknown git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129870 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e23ac65af568ffe611b0990818ac3a57c856a4d8 |
20-Apr-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager::getSLocEntry() that it can fail due to problems during deserialization from a precompiled header, and update all of its callers to note when this problem occurs and recover (more) gracefully. Fixes <rdar://problem/9119249>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129839 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a4ff648d4a75c752cbdf884c81f4926670f8e6c7 |
20-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
TWEAK git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129835 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
659d23a4e645c1d7a700da05a1b1aabf9fd4c6f3 |
20-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Switch to using -macosx for OS name in triples. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129834 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
db57a4cdb0a6abf3239f3a794a900ce312c5887b |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Switch to using .isOSDarwin() predicate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129823 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0d027ba3e5b0e59ecde05747330a871ba174a0da |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Darwin: Add support for new -osx and -ios style triples (not yet used). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129820 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
97f55d6ffd548d1777d790c84b358030682f9de2 |
19-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Add SelectorTable::getTotalMemory() to allow clients to query how much memory is used by selectors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129728 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
b24bac98aa90f1076f348b05b18dc34d6d144521 |
17-Apr-2011 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Make -mno-mmx imply -mno-3dnow. This is what gcc does, and it makes sense. Also, fold the sse4 and sse4.1 cases together. Patch by Alexander Best! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129665 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7d2b8c1fcc2b707be78b09930a7767477822462f |
16-Apr-2011 |
Douglas Gregor <dgregor@apple.com> |
Initial work to improve documentation for Clang's diagnostics, from Matthieu Monrocq git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129614 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
iagnosticIDs.cpp
|
fc8f0e14ad142ed811e90fbd9a30e419e301c717 |
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
fix a bunch of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceManager.cpp
argetInfo.cpp
|
7e7fbd05a5dfdb0addfc8b5af2fcbed8c7b5fb87 |
15-Apr-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
C1X: add a language standard git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129553 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
a5fc472b353b88be3b4981da946fb01f5a5cc0c6 |
10-Apr-2011 |
John McCall <rjmccall@apple.com> |
Fix a bunch of major problems with __unknown_anytype and properly test for them. The only major missing feature is references. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129234 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
67922922cf3d9a2c5b4a02b1ee27e81da3850b53 |
09-Apr-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
refactor flags for TokenKinds.def Make KEYALL a combination of all other flags instead of its own separate flag. Also rewrite the enum definitions in hex instead of decimal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129213 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
156119df1d076b63609618976281961283f871db |
09-Apr-2011 |
Eric Christopher <echristo@apple.com> |
Eat the UTF-8 BOM at the beginning of a file since it's ignored anyhow. Nom Nom Nom. Patch by Anton Korobeynikov! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129174 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0c959fc7f1e1006f44eae6fdb5b659eb12bf8ddc |
06-Apr-2011 |
Nowar Gu <nowar100@gmail.com> |
Add some source files into Android.mk.
ndroid.mk
|
9a7319305fc25222b91d585dfa056c8cdbac8434 |
06-Apr-2011 |
Nowar Gu <nowar100@gmail.com> |
Merge upstream until 2011.04.05.
|
bcaa3b8f1ac945d64cbf6d4d659271b6ef70068b |
05-Apr-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Enable sse4 and aes for SandyBridge. Leave avx support commented out for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128923 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3a41d145e4e1e363637eba892c2be8582efe2178 |
05-Apr-2011 |
Sandeep Patel <deeppatel1987@gmail.com> |
Explain why layout prefers 32 for small types on Thumb. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128850 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cd5ce091a18bdc601758495b583d33f8667f4272 |
04-Apr-2011 |
Bob Wilson <bob.wilson@apple.com> |
Change ARM data layout strings to match llvm-gcc. Sandeep Patel noticed that the alignment was wrong for Neon vector types, and this change is partly derived from his patch. For the APCS ABI, however, additional changes were required: the maximum ABI alignment is 32 bits and the preferred alignment for i64 and f64 types should be 64 bits. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128825 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f445debe3a6825e6528655db0906ce4fa41240ea |
01-Apr-2011 |
csmon <csmon@csmon-desktop.(none)> |
Merge branch 'upstream' into logan-fastforward-20110320
|
ad1a4c6e89594e704775ddb6b036ac982fd68cad |
31-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Change Clang's __VERSION__ to include the same basic info as in clang -v. - Please never ever ever ever write a tool that sniffs this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128599 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
9a4a9c25fc32b9c19fa0c20acfe5e44efa24fd02 |
31-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Add support for a build variable to set the repository path that goes into the Clang version. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128595 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
dc0a2da1038cc725ad23d070e6a0d03078b7300d |
26-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
For Diagnostic::Reset() also reset the state related to #pragma diagnostic. Fixes rdar://9170766. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128346 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0a0d2b179085a52c10402feebeb6db8b4d96a140 |
23-Mar-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement a new 'availability' attribute, that allows one to specify which versions of an OS provide a certain facility. For example, void foo() __attribute__((availability(macosx,introduced=10.2,deprecated=10.4,obsoleted=10.6))); says that the function "foo" was introduced in 10.2, deprecated in 10.4, and completely obsoleted in 10.6. This attribute ties in with the deployment targets (e.g., -mmacosx-version-min=10.1 specifies that we want to deploy back to Mac OS X 10.1). There are several concrete behaviors that this attribute enables, as illustrated with the function foo() above: - If we choose a deployment target >= Mac OS X 10.4, uses of "foo" will result in a deprecation warning, as if we had placed attribute((deprecated)) on it (but with a better diagnostic) - If we choose a deployment target >= Mac OS X 10.6, uses of "foo" will result in an "unavailable" warning (in C)/error (in C++), as if we had placed attribute((unavailable)) on it - If we choose a deployment target prior to 10.2, foo() is weak-imported (if it is a kind of entity that can be weak imported), as if we had placed the weak_import attribute on it. Naturally, there can be multiple availability attributes on a declaration, for different platforms; only the current platform matters when checking availability attributes. The only platforms this attribute currently works for are "ios" and "macosx", since we already have -mxxxx-version-min flags for them and we have experience there with macro tricks translating down to the deprecated/unavailable/weak_import attributes. The end goal is to open this up to other platforms, and even extension to other "platforms" that are really libraries (say, through a #pragma clang define_system), but that hasn't yet been designed and we may want to shake out more issues with this narrower problem first. Addresses <rdar://problem/6690412>. As a drive-by bug-fix, if an entity is both deprecated and unavailable, we only emit the "unavailable" diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128127 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
argetInfo.cpp
argets.cpp
ersionTuple.cpp
|
d9c3fa30bc6914c12b025073d2779a3ddb8f4787 |
22-Mar-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Make the definition of "long double" consistent for llvm::Triple::Win32 for both 32-bit and 64-bit targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128110 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
97d2d2e368d3ead34d83c328383711c7dabab60a |
22-Mar-2011 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Merge with clang upstream r127980 (Mar 20th 2011)
|
a291d5fb78bd7b95d825cb3c6ddd5dff44f6f624 |
21-Mar-2011 |
Bob Wilson <bob.wilson@apple.com> |
Another cortex-m0 patch from James Orr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128029 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cd1eecfe4f43a542c8f9a6e7d12fa69b28c23a67 |
21-Mar-2011 |
Ted Kremenek <kremenek@apple.com> |
Relax assertion to fail during crash recovery cleanup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128010 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
03201fbbdeb3eb7f465610b09c281ee6aa84e3ca |
21-Mar-2011 |
Ted Kremenek <kremenek@apple.com> |
Use CrashRecoveryContextCleanup objects to reclaim resources from CompilerInstance objects. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128009 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8e02635c9c276720a1e6f926b33303a53cebe9c7 |
18-Mar-2011 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Merge with clang upstream r127869 (Mar 18th 2011)
|
9ae186f7cac22a1652bb19658393fda4ecf3a463 |
19-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Unbreak build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127942 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
207f4d8543529221932af82836016a2ef066c917 |
18-Mar-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Add support for language-specific address spaces. On top of that, add support for the OpenCL __private, __local, __constant and __global address spaces, as well as the __read_only, _read_write and __write_only image access specifiers. Patch originally by ARM; language-specific address space support by myself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127915 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
7dbafb3ade491a41100c97597209455ee10c537d |
18-Mar-2011 |
Anders Carlsson <andersca@mac.com> |
Add FileManager::getNoncachedStatValue, which will resolve relative paths against the working directory specified in the file system options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127893 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
3cd0128ce49abe658d1858c541e836e57959e04a |
16-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Having FileManager::getFile always open the file, brought much consternation and leaking of file descriptors. Add 'openFile' bool to FileManager::getFile to specify whether we want to have the file opened or not, have it false by default, and enable it only in HeaderSearch.cpp where the open+fstat optimization matters. Fixes rdar://9139899. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127748 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
853134a0ba349a78e92b8a4a935cb5860fcc3a04 |
15-Mar-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
lib/Basic/Targets.cpp: __declspec(attr) should be provided on mingw as macro, alias of __attribute__. On mingw without -fms-extensions, we can provide "as-is" __declspec. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127655 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a8d530e3ad52cca33a81185ccc9518eab23ddb11 |
15-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Stop leaking file descriptors. After the open+fstat optimization, files were already opened for FileManager::getBufferForFile() and we closed them after reading them. The problem was that when -working-directory was passed, the code path that actually reuses & closes the already opened file descriptor was not followed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127639 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
2e2468e2d2ccbb9a38fe3b6b754009af7e5d39a9 |
14-Mar-2011 |
Anders Carlsson <andersca@mac.com> |
Get rid of the static FileManager::FixupRelativePath. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127573 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
d271e4b0c6c42a0e670226e697963df427e35a56 |
07-Mar-2011 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Apply changes to merge with clang upstream (6th Mar 2011)
ndroid.mk
|
27d70656d3ce7c9e030b6dea468cfc96687010d5 |
09-Mar-2011 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Merge with clang upstream (Nov 6th 2011)
|
299a4a967b02c9f0d0d94ad8560e3ced893f9116 |
09-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add 'OverridenFilesKeepOriginalName' field in SourceManager which if true the SourceManager should report the original file name for contents of files that were overriden by other files, otherwise it should report the name of the new file. Default is true. Also add similar field in PreprocessorOptions and pass similar parameter in ASTUnit::LoadFromCommandLine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127289 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
17c964ad98968ad7d88e60b4a60d463d3c5ffb4d |
08-Mar-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
lib/Basic/Targets.cpp: mingw-w64 should define __MINGW32__, too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127238 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
03fd362dbf6fcd077df566fe2ac3165be668323b |
07-Mar-2011 |
Anders Carlsson <andersca@mac.com> |
Check in the implementation as well... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127144 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
af036a6c25f540a9daf51e721485ae6d0e645bd8 |
06-Mar-2011 |
Anders Carlsson <andersca@mac.com> |
Convert FileManager::FixupRelativePath over to using PathV2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127133 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
b1c86492f9a9bef01a4567408c22f961bbd604fe |
05-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Currently we can only remap a file by creating a MemoryBuffer and replacing the file contents with it. Allow remapping a file by specifying another filename whose contents should be loaded if the original file gets loaded. This allows to override files without having to create & load buffers in advance. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127052 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5ecb0486de7ec68e806c3904727ef9080dbe2c03 |
02-Mar-2011 |
Shih-wei Liao <sliao@google.com> |
Merge "Make sure to always check the result of SourceManager::getPresumedLoc(), so that we don't try to make use of an invalid presumed location. Doing so can cause crashes."
|
85f3d76c0ecfdefcf83ea44a57b7a16119c8a045 |
02-Mar-2011 |
John McCall <rjmccall@apple.com> |
Move some of the logic about classifying Objective-C methods into conventional categories into Basic and AST. Update the self-init checker to use this logic; CFRefCountChecker is complicated enough that I didn't want to touch it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126817 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
053ec969e3023e4b4a666546476ff74e6bfdfd9a |
27-Feb-2011 |
Logan <tzuhsiang.chien@gmail.com> |
Merge with clang upstream Nov 10th 2010.
|
7decebfc7b9dc841f228c93cc2e41e3e62911ff8 |
25-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
Teach TextDiagnosticPrinter to print out '-Werror' in addition to the warning flag for a warning mapped to an error. For example: t.c:7:9: error: using the result of an assignment as a condition without parentheses [-Werror,-Wparentheses] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126466 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
5ef04ee40c3332d31b6d1439f50d0ddb45812929 |
23-Feb-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the VerifyDiagnosticsClient to use PresumedLocs now that they exist. Cheat and do this by adding some wrappers around the PresumedLoc machinery that directly return the line and column number. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126281 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e177d3b7445ebe9358f0858a4a23453c4b750c0f |
22-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
Targets/Darwin: mcount name on Darwin needs to be unmangled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126152 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
26ed5f1b0df3e2bf7ec4715c2c3afd26408ff1b7 |
20-Feb-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Test commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126063 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
4b93d660c6326ec79b5e369317d1051cf826c2f3 |
20-Feb-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Re-instate r125819 and r125820 with no functionality change git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126060 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
96b1d4b4eb6b18dd6df7a2c0833332b45840580f |
19-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert 125820 and 125819 to fix PR9266. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126050 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
813d8346529bf094eb2b249648906ba7fd226688 |
18-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Selector::getIdentifierInfoForSlot() can return NULL values, a fact that was ignored in a few places (most notably, code completion). Introduce Selector::getNameForSlot() for the common case where we only care about the name. Audit all uses of getIdentifierInfoForSlot(), switching many over to getNameForSlot(), fixing a few crashers. Fixed <rdar://problem/8939352>, a code-completion crasher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125977 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
c9109297856fd32f10c29127c3cdae6a38019a3e |
18-Feb-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
[Heikki Kultala] This patch contains the ABI changes for the TCE target. TCE target has some too strict alignment rules (that the HW really does not require, but which caused problems elsewhere) for data types and an ABI change was decided. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125833 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ef9a1d0e13662162aa8cdae8732c33b5d751d80c |
18-Feb-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Move TargetInfo::adjustInlineAsmType to TargetCodeGenInfo git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125819 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0aa205765aec0aa5eed672f8e3cade543372edcd |
17-Feb-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Triple::MinGW64 is deprecated and removed. We can use Triple::MinGW32 instead. No one uses *-mingw64. mingw-w64 is represented as {i686|x86_64}-w64-mingw32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125742 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
37c02bf479c86c31ad2af75adbe1ead2b928ca93 |
16-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Fix a thinko with llvm::Optional, which is clearly the most dangerous class template in the universe git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125679 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f315fa81eef1977b3457fd7a7d4639e060fe7278 |
14-Feb-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
OpenCL: add support for __kernel, kernel keywords and EXTENSION, FP_CONTRACT pragmas. Patch originally by ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125475 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
0a86d44703fc5cd3cd38ea1708176f5b44321ed8 |
12-Feb-2011 |
Jeffrey Yasskin <jyasskin@google.com> |
Add CMake dependencies so that LLVM_USED_LIBS order doesn't matter. I also sorted the tools/driver dependencies since their order no longer matters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125417 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
21af8878b96ab1f9b077407ca3c512e5dc5d0ad6 |
11-Feb-2011 |
Zhanyong Wan <wan@google.com> |
Uses llvm::sys::path instead of hand-rolled algorithm in FileManager. Reviewed by dgregor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125407 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
9b555ea217565ac0f8bf7255b29496916cb03476 |
11-Feb-2011 |
Zhanyong Wan <wan@google.com> |
Improves Clang's virtual file handling. This patch contains: - making some of the existing comments more accurate in the presence of virtual files/directories. - renaming some private data members of FileManager to match their roles better. - creating 'DirectorEntry's for the parent directories of virtual files, such that we can tell whether two virtual files are from the same directory. This is useful for injecting virtual files whose directories don't exist in the real file system. - minor clean-ups and adding comments for class FileManager::UniqueDirContainer and FileManager::UniqueFileContainer. - adding statistics on virtual files to FileManager::PrintStats(). - adding unit tests to verify the existing and new behavior of FileManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125384 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
b7a1841244418b658bcf64573ff0c00867fb9c5d |
11-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Don't compare llvm::Optional<> objects directly; compare their contents when it's safe. I just *love* C++ some days. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125378 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
cfbf1c7536e016dc275139dd842d4a5f059a749f |
10-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement two related optimizations that make de-serialization of AST/PCH files more lazy: - Don't preload all of the file source-location entries when reading the AST file. Instead, load them lazily, when needed. - Only look up header-search information (whether a header was already #import'd, how many times it's been included, etc.) when it's needed by the preprocessor, rather than pre-populating it. Previously, we would pre-load all of the file source-location entries, which also populated the header-search information structure. This was a relatively minor performance issue, since we would end up stat()'ing all of the headers stored within a AST/PCH file when the AST/PCH file was loaded. In the normal PCH use case, the stat()s were cached, so the cost--of preloading ~860 source-location entries in the Cocoa.h case---was relatively low. However, the recent optimization that replaced stat+open with open+fstat turned this into a major problem, since the preloading of source-location entries would now end up opening those files. Worse, those files wouldn't be closed until the file manager was destroyed, so just opening a Cocoa.h PCH file would hold on to ~860 file descriptors, and it was easy to blow through the process's limit on the number of open file descriptors. By eliminating the preloading of these files, we neither open nor stat the headers stored in the PCH/AST file until they're actually needed for something. Concretely, we went from *** HeaderSearch Stats: 835 files tracked. 364 #import/#pragma once files. 823 included exactly once. 6 max times a file is included. 3 #include/#include_next/#import. 0 #includes skipped due to the multi-include optimization. 1 framework lookups. 0 subframework lookups. *** Source Manager Stats: 835 files mapped, 3 mem buffers mapped. 37460 SLocEntry's allocated, 11215575B of Sloc address space used. 62 bytes of files mapped, 0 files with line #'s computed. with a trivial program that uses a chained PCH including a Cocoa PCH to *** HeaderSearch Stats: 4 files tracked. 1 #import/#pragma once files. 3 included exactly once. 2 max times a file is included. 3 #include/#include_next/#import. 0 #includes skipped due to the multi-include optimization. 1 framework lookups. 0 subframework lookups. *** Source Manager Stats: 3 files mapped, 3 mem buffers mapped. 37460 SLocEntry's allocated, 11215575B of Sloc address space used. 62 bytes of files mapped, 0 files with line #'s computed. for the same program. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125286 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
be4c8705e499b55548467eb7adaa23cbc6edfef9 |
10-Feb-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Implement mcount profiling, enabled via -pg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125282 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
886e1606c28e970bb288abf4dbc40feb16822a79 |
10-Feb-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
CMake: LLVM_NO_RTTI must be obsolete now! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125275 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
100f239df90c2576cfd6ce4fdcf3886033c00e26 |
08-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Update for API change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125129 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
8ef6c8cb6c5627240e2339fd7062c9873f821d7e |
05-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Improve our uniquing of file entries when files are re-saved or are overridden via remapping. Thus, when we create a "virtual" file in the file manager, we still stat() the real file that lives behind it so that we can provide proper uniquing based on inodes. This helps keep the file manager much more consistent. To take advantage of this when reparsing files in libclang, we disable the use of the stat() cache when reparsing or performing code completion, since the stat() cache is very likely to be out of date in this use case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124971 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
4814fb560322daf009fda6226cffccb10bd44620 |
04-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
If any Fix-Its attached to a diagnostic have invalid source locations or source locations that refer into a macro instantiation, delete all of the Fix-Its on that diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124833 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
86a4d0dd6a630639aab7715323ed068940e650af |
03-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager::getLocation() how to cope with a source file whose inode has changed since the file was first created and that is being seen through a different path name (e.g., due to symlinks or relative path elements), such that its FileEntry pointer doesn't match a known FileEntry pointer. Since this requires a system call (to stat()), we only perform this deeper checking if we can't find the file by comparing FileEntry pointers. Also, add a micro-optimization where we don't bother to compute line numbers when given the location (1, 1). This improves the efficiency of clang_getLocationForOffset(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124800 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
50ae3e3f10ccbb8c04c9ea941d930973ccf231bd |
03-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert 124754 and 124760 as they made clang unusable in the presence of symbolic links. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124776 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
b9d4cb38815fd2173a9f0512dfe2024d61bbcec7 |
03-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Improve the performance of filename canonicalization by avoiding redundant searches in the string. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124760 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
aa596e877062ddd45d65705622a58587c5ba54b6 |
02-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Canonicalize path names in the file manager before performing a lookup on that name. Canonicalization eliminates silliness such as "." and "foo/.." that breaks the uniquing of files in the presence of virtual files or files whose inode numbers have changed during parsing/re-parsing. c-index-test isn't able to create this crazy situation, so I've resorted to testing outside of the Clang tree. Fixes <rdar://problem/8928220>. Note that this hackery will go away once we have a real virtual file system on which we can layer FileManager; the virtual-files hack is showing cracks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124754 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
fb7049a21969d856292c278950c0a5c70986d412 |
01-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Support EFI target triple, from Carl Norum! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124660 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3de84241d90f3dd280126fdf2c4651667151c967 |
31-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Harden Lexer::GetBeginningOfToken() against bogus source locations and the disappearance/alteration of files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124616 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
4f5e21e24fb9e6ec473a13f83b5c9a2c41501a70 |
31-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach Diagnostic::setClient() to free the existing, owned client. Fixes a libclang leak. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124614 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
418df343bb50802586d20aae3b83e2eb44c6c828 |
27-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Separate the access-control diagnostics from other diagnostics that do not have SFINAE behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124441 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
04331169f04198eb769925fa17696a21989c9d8b |
27-Jan-2011 |
Axel Naumann <Axel.Naumann@cern.ch> |
TextDiagnosticPrinter.cpp: Show diagnostics as far as possible even with invalid PresomedLoc, instead of just silencing it. FileManager.cpp: Allow virtual files in nonexistent directories. FileManager.cpp: Close FileDescriptor for virtual files that correspond to actual files. FileManager.cpp: Enable virtual files to be created even for files that were flagged as NON_EXISTENT_FILE, e.g. by a prior (unsuccessful) addFile(). ASTReader.cpp: Read a PCH even if the original source files cannot be found. Add a test for reading a PCH of a file that has been removed and diagnostics referencing that file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124374 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5 |
19-Jan-2011 |
Logan <tzuhsiang.chien@gmail.com> |
Add build rules for clang executable.
ndroid.mk
|
79521990f774dfd1b8bcfd62179234a223c34d84 |
17-Jan-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
lib/Basic/Targets.cpp: __builtin_va_list is as same on win64 mingw64! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123691 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1b24cd3475838aade59d8ca06dc8cabd42aa4fe0 |
17-Jan-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
lib/Basic/Targets.cpp: Fix __declspec() on Mingw-w64. It should be defined as-is. Some headers would detect existence of __declspec and use one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123690 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8c959d92de08f5dd6e68d2d01f87338ae861fdac |
17-Jan-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
lib/Basic/Targets.cpp: Set user_label_prefix on Win64 both mingw and msvc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123689 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3efd52cf8f4e57c5571bd8cc3168264c3bc46a1e |
14-Jan-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Properly propagate #pragma diagnostic mappings from PCH but not command-line warning flags. Addresses rdar://8435969&8852495 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123462 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
|
12e8464da2769bbc1205194714d84c905a571081 |
12-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
wint_t is defined as 'unsigned int' on Linux. Fixes PR8938. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123320 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f84109ee6aeffb09366bd70c8593ce1b7818b1ad |
07-Jan-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Update AST reader/writer to handle new AppleKext. Fix an unexpected hickup caused by exceeding size of generated table (and a misleading comment). Improve on help message for -fapple-kext. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123003 91177308-0d34-0410-b5e6-96231b3b80d8
iagnosticIDs.cpp
|
06f45635dd2502fbbd1acb59517130ff56869d91 |
06-Jan-2011 |
Bob Wilson <bob.wilson@apple.com> |
Add cortex-m3 CPU to getCPUDefineSuffix mapping. Patch by Sylvère Teissier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122965 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c81f2a2c7f83e64b3ef2b77030536290d0e2b350 |
06-Jan-2011 |
Roman Divacky <rdivacky@freebsd.org> |
PowerPC fixes. Fix the width and align of bool type on Darwin to be 32bits while keeping it 8 everywhere else. Change the definition of va_list to default to SV4 ABI one and let darwin subtarget override this. Both changes submitted by Nathan Whitehorn and reviewed by Rafael Espindola. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122956 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
c8b09a1fa2112964496f27094010bae45c97c42a |
29-Dec-2010 |
Roman Divacky <rdivacky@freebsd.org> |
set features for k8-sse3 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122629 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3f59c975aa5d047f7edd1b900b5e885c38af0ef7 |
26-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
The -fshort-wchar option causes wchar_t to become unsigned, in addition to being 16-bits in size. Implement this by splitting WChar into two enums, like we have for char. This fixes a miscompmilation of XULRunner, PR8856. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122558 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ee933e1cc2718bd829c4649d060fc9f686005990 |
24-Dec-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Handle locations coming from macro instantiations properly in SourceManager::isBeforeInTranslationUnit(). Fixes rdar://8790245 and http://llvm.org/PR8821. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122536 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b68e39930d06ed81a2b431dc09e4cb97e5c0d57a |
21-Dec-2010 |
Douglas Gregor <dgregor@apple.com> |
In C++, if the user redeclares a builtin function with a type that is inconsistent with the type that the builtin *should* have, forget about the builtin altogether: we don't want subsequence analyses, CodeGen, etc., to think that we have a proper builtin function. C is protected from errors here because it allows one to use a library builtin without having a declaration, and detects inconsistent (re-)declarations of builtins during declaration merging. C++ was unprotected, and therefore would crash. Fixes PR8839. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122351 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
fbfd180495e7800975c6d9bdc6d24e706ef70e34 |
21-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Replace all uses of PathV1::makeAbsolute with PathV2::fs::make_absolute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122340 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
403ba3522d1b1c97ae5fad81c1a2c4b3a754e1c1 |
19-Dec-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing standard includes. Patch by Joerg Sonnenberger! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122194 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
256053b31e697fdf0cc48f17d621c82fc3b8dff0 |
17-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Replace all uses of PathV1::isAbsolute with PathV2::is_{absolute,relative}. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122087 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
4eeebc464e1f968d9968a4786c82558f18ac2ed8 |
16-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
MemoryBuffer API update. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121956 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
0827408865e32789e0ec4b8113a302ccdc531423 |
15-Dec-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix diagnostic pragmas. Diagnostic pragmas are broken because we don't keep track of the diagnostic state changes and we only check the current/latest state. Problems manifest if a diagnostic is emitted for a source line that has different diagnostic state than the current state; this can affect a lot of places, like C++ inline methods, template instantiations, the lexer, etc. Fix the issue by having the Diagnostic object keep track of the source location of the pragmas so that it is able to know what is the diagnostic state at any given source location. Fixes rdar://8365684. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121873 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
ourceLocation.cpp
|
a48fa4bdf716b77bcecade0743c7eb22e47aba01 |
12-Dec-2010 |
Wesley Peck <peckw@wesleypeck.com> |
Change MBlaze target to have the same description string as its LLVM equivalent. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121640 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3a321e23f66128dbb986343927456ff6702af617 |
09-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Use error_code instead of std::string* for MemoryBuffer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121378 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
c0f31fd08537b65ad92db8ce860747e3402a07e6 |
02-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
attempt to fix a buildbot failure, apparently apache fails to build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120688 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
67aba816901503d9cf7ba699525fa62cc7f8e5e4 |
30-Nov-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Such function decls,as objc's objc_msgSend, builtins in a specific language. We are adding such language info. by extensing Builtins.def and via a language flag added to LIBBUILTIN/BUILTIN and check for that when deciding a name is builtin or not. Implements //rdar://8689273. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120429 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
argets.cpp
|
03013fa9a0bf1ef4b907f5fec006c8f4000fdd21 |
29-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Merge System into Support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120297 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
ourceManager.cpp
|
0d4739abf60372abdbafabd8ed59acc5d01729b5 |
24-Nov-2010 |
Francois Pichet <pichet2000@gmail.com> |
Fix 2 problems with Chris Lattner's FileManager redesign on Windows. - FileEntry::operator= is needed on Win32. - There was an error in the S_ISDIR() macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120079 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystemStatCache.cpp
|
5cc1c738b0c51af55cbfe7672c284c19f8e30eb2 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
The final result of all this refactoring: instead of doing stat immediately followed by an open for every source file we open, probe the file system with 'open' and then do an fstat when it succeeds. open+fstat is faster than stat+open because the kernel only has to perform the string->inode mapping once. Presumably it gets faster the deeper in your filesystem a lookup happens. For -Eonly on cocoa.h, this reduces system time from 0.042s to 0.039s on my machine, a 7.7% speedup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120066 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
b2b93c12d768cfdeb21909f734b04ccb82d75da2 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
if we succeed in opening a directory but expected a file, ensure we don't leak a filedescriptor if a client ever starts returning one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120062 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystemStatCache.cpp
|
291fcf02980be85cf13c8a63bb036a19012311df |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
hopefully resolve the windows buildbot issue (retch) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120061 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
898a061f69e1145bf89a987c08203132b9922a3c |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
change the 'is directory' indicator to be a null-or-not pointer that is passed down through the APIs, and make FileSystemStatCache::get be the one that filters out directory lookups that hit files. This also paves the way to have stat queries be able to return opened files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120060 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
f9f7766846a205bc900b578f944567e679b221aa |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
pull "is directory" handling into FileManager::getStatValue which simplifies clients and is important for future directions. Add a FD member to FileEntry which isn't used but will be shortly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120056 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
f3e8a9961d000fb9e093593b6a1bf72313b90d06 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
tidy up code, add a comment about dir caching. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120048 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
72f6130a17742e9c9078b4b60ad8f7ac2c690a3b |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
replicate a terrible hack to fix a build error on VC++ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120039 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystemStatCache.cpp
|
d6f611198089b78e32d3a15fe8bc986204aee1aa |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
simplify the cache miss handling code, eliminating CacheMissing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120038 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystemStatCache.cpp
|
11aa4b03b054cb9d3c201bba5632241145865e29 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
factor the "cache miss" handling code out of FM into a static method in FileSystemStatCache. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120037 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
f8f6129861f3972dab2c5a6cde29711ac780a7d0 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
r120013 dropped passing in the precomputed file size to MemoryBuffer::getFile, causing us to pick up a fstat for every file. Restore the optimization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120032 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ileSystemStatCache.cpp
|
74e976ba4b0d407bb798ea26476f618e256fc8c7 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
PCH files only cache successful stats. Remove the code that reads/writes the result code of the stat to/from the PCH file since it is always 0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120031 91177308-0d34-0410-b5e6-96231b3b80d8
ileSystemStatCache.cpp
|
10e286aa8d39fb51a21412850265d9dae74613ee |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
rework the stat cache, pulling it out of FileManager.h into its own header and giving it some more structure. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120030 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ileManager.cpp
ileSystemStatCache.cpp
|
75dfb65c38d51772df9a00ce2d2feeefd55667ad |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
tidy up. Split FileManager::getBufferForFile into two copies, since they are fundamentally different operations and the StringRef one should go away (it shouldn't be part of FileManager at least). Remove some dead arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120013 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
b088cd3138b1fdb286c51e982ddda1e8af9d7e86 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
reduce indentation and use early outs, to make it easier to read this code. no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120011 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
39b49bcaaddb1049234fca9500c0ac02c088e23d |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
now the FileManager has a FileSystemOpts ivar, stop threading FileSystemOpts through a ton of apis, simplifying a lot of code. This also fixes a latent bug in ASTUnit where it would invoke methods on FileManager without creating one in some code paths in cindextext. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120010 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
7ad97ffa631af6ad678c79b38341ac995f347ce9 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
give FileManager a 'FileSystemOptions' ivar, which will be used to simplify a bunch of code in it. It should ultimately get inlined into FileManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120007 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
151466a18671df9cfd9abd59ba53df35b1d687da |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
Partially revert Doug's PCH validation patch (r98585). This patch completely defeated the "passing in a prestat'd size to MemoryBuffer" optimization, leading to an extra fstat call for every buffer opened, in order to find out if the datestamp and size of the file on disk matches what is in the stat cache. I fully admit that I don't completely understand what is going on here: why punish code when a stat cache isn't in use? what is the point of a stat cache if you have to turn around and stat stuff to validate it? To resolve both these issues, just drop the modtime check and check the file size, which is the important thing anyway. This should also resolve PR6812, because presumably windows is stable when it comes to file sizes. If the modtime is actually important, we should get it and keep it on the first stat. This eliminates 833 fstat syscalls when processing Cocoa.h, speeding up system time on -Eonly Cocoa.h from 0.041 to 0.038s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120001 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
67452f51aec1ad8a3e4c6622c0c57c5d8dc1b6a3 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
stringref'ize API git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119997 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
efc4be242b8c8f076ad4addd3598c4853ec50ac7 |
23-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
avoid creating sys::Path instances when -fworking-directory isn't being used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119995 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
aa8b2d95bc108e8f3a443e4a936e1ed8a3cc1cc6 |
21-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Filename.rfind("/\\") won't give us the position of the last directory seperator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119939 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
f69a1f319bd3c846c4a9ab84ea615e4e37dfd359 |
21-Nov-2010 |
Chris Lattner <sabre@nondot.org> |
change the various getFile routines to use StringRef as their implementation form. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119934 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
a6a32e295379570b489cc041053d2cd53bcafd1c |
19-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Initialize StoredDiagnostic's members in order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119808 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
aa5f135f8db82b5e5fb1640fd51f8078e0b2d82d |
19-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
Extend the libclang diagnostic API to provide information about the option name, category ID, and category name corresponding to a diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119802 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3bbe0b033ea1dd9fcfbe60d9d358e777f2935b8f |
18-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Update CMake build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119741 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
f2224d89a6ae65a3839529e26d0f6d025d83d6bb |
18-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Since multiple diagnostics can share one diagnostic client, have the client keeping track of the total number of warnings/errors reported. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119731 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
33e4e70c8c0a17e0ccb7465d96556b077a68ecb1 |
18-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Refactoring of Diagnostic class. -Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class. -DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units. -The rest of the state in Diagnostic object is considered related and tied to one translation unit. -Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a SourceLocation instead of a FullSourceLoc. -Reflect the changes to various interfaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119730 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
iagnosticIDs.cpp
ourceManager.cpp
|
5807d9cce3f0ab4366bed9470355433c7b562c8d |
18-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix a typo in the UTF-8 BOM (PR8645). Use a StringSwitch while at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119698 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
70eddbfa09174de7d44b6a5cf7ecd55c4b97bee0 |
12-Nov-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Make sure to always check the result of SourceManager::getPresumedLoc(), so that we don't try to make use of an invalid presumed location. Doing so can cause crashes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118885 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
cb7b1e17b63967317ab5cc55682168cf0380519a |
12-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
Make sure to always check the result of SourceManager::getPresumedLoc(), so that we don't try to make use of an invalid presumed location. Doing so can cause crashes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118885 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
584a4569f982e79db3f936429eda918be30a5675 |
09-Nov-2010 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add support for soft/hard float options to the Sparc target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118514 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9284d215022457ba867080a713f08f026d89ea17 |
09-Nov-2010 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add support for soft/hard float options to the Sparc target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118514 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a7bdfdd3b9d77383ec221dd48a169d088f88e81c |
09-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Include System/DataTypes.h in Diagnostic.h to get intptr_t. Set Haiku's UserLabelPrefix to "". Patch by Paul Davey. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118510 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
19ddda83f9c3a7f1029740047b06035bda5fbb81 |
09-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Include System/DataTypes.h in Diagnostic.h to get intptr_t. Set Haiku's UserLabelPrefix to "". Patch by Paul Davey. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118510 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6dbcbbcfcdcc44c8f7641dc788d2523cf1a09b5b |
03-Nov-2010 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Implement -working-directory. When -working-directory is passed in command line, file paths are resolved relative to the specified directory. This helps both when using libclang (where we can't require the user to actually change the working directory) and to help reproduce test cases when the reproduction work comes along. --FileSystemOptions is introduced which controls how file system operations are performed (currently it just contains the working directory value if set). --FileSystemOptions are passed around to various interfaces that perform file operations. --Opening & reading the content of files should be done only through FileManager. This is useful in general since file operations will be abstracted in the future for the reproduction mechanism. FileSystemOptions is independent of FileManager so that we can have multiple translation units sharing the same FileManager but with different FileSystemOptions. Addresses rdar://8583824. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118203 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
389db16c63eec6ecfa9b235155252d8da766e94e |
03-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Implement -working-directory. When -working-directory is passed in command line, file paths are resolved relative to the specified directory. This helps both when using libclang (where we can't require the user to actually change the working directory) and to help reproduce test cases when the reproduction work comes along. --FileSystemOptions is introduced which controls how file system operations are performed (currently it just contains the working directory value if set). --FileSystemOptions are passed around to various interfaces that perform file operations. --Opening & reading the content of files should be done only through FileManager. This is useful in general since file operations will be abstracted in the future for the reproduction mechanism. FileSystemOptions is independent of FileManager so that we can have multiple translation units sharing the same FileManager but with different FileSystemOptions. Addresses rdar://8583824. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118203 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
6ce1428d71592a4fa8a8dbbdc38528142de4825a |
03-Nov-2010 |
Anders Carlsson <andersca@mac.com> |
When setting a tied check if it's already tied. If it's tied to another constraint it's invalid. Fixes PR3905. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118146 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
79ca1ee4b637c01458584bb571f1b309180c780d |
03-Nov-2010 |
Anders Carlsson <andersca@mac.com> |
When setting a tied check if it's already tied. If it's tied to another constraint it's invalid. Fixes PR3905. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118146 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
e02cd8f520f615573ec00d6e10880127c89465c8 |
03-Nov-2010 |
Anders Carlsson <andersca@mac.com> |
A number in an input constraint can't point to a read-write ('+') constraint. Fixes PR3904. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118145 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
86eda39c8af47280273758debf0432933bdeee3c |
03-Nov-2010 |
Anders Carlsson <andersca@mac.com> |
A number in an input constraint can't point to a read-write ('+') constraint. Fixes PR3904. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118145 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
4e2ba30488b90b830998ace0eb27ed3b2384aded |
02-Nov-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Teach SourceManager::getPresumedLoc() how to fail gracefully if getLineNumber/getColumnNumber fail git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117990 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c417fa024495c10a5e678ea36a5f8c715528bdd1 |
02-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager::getPresumedLoc() how to fail gracefully if getLineNumber/getColumnNumber fail git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117990 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
80209e6370362654179ee9aba339ec903a5ba789 |
30-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
Rename alignof -> alignOf to avoid irritating C++'0x compilers, PR8423 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117775 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
3248854a5d16e1de17c58e05f726bdef9f042df2 |
30-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
Rename alignof -> alignOf to avoid irritating C++'0x compilers, PR8423 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117775 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
8fa024cad01e38f1b16477c838ad7400ea1b1756 |
30-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Handle Type.h a better way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117743 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e592cba6bc1930e7a01dde8370e5345cef05723 |
30-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Handle Type.h a better way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117743 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3a161e5ca07ca0c35ad2b0f73e21ed3b1ea43171 |
30-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Generate bitcasts going in and out of MMX parameters in asm's. PR 8501, 8602988. I don't like including Type.h where it is; the idea was to get references to X86_MMXTy out of the common code. Maybe there's a better way? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117736 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f6e2c2039f76fa58799f6d155892d54fc95755e1 |
30-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Generate bitcasts going in and out of MMX parameters in asm's. PR 8501, 8602988. I don't like including Type.h where it is; the idea was to get references to X86_MMXTy out of the common code. Maybe there's a better way? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117736 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0d79b04d53ce38692d8f12a2eb693edcb7593014 |
28-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Ahem. Add rest of D and Q registers to ARM inline asm handling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117517 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d14553554654a5dd8839159c42b94938c1122b00 |
28-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Ahem. Add rest of D and Q registers to ARM inline asm handling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117517 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0bbb50d9e5f3a711d1fd0f189971770615dc13d7 |
28-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Add D and Q register names to ARM inline asm handling. No aliasing is needed, these work as given in the BE. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117508 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
20eb49b50395fdf54022517abb3fbb31fffe54e7 |
28-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Add D and Q register names to ARM inline asm handling. No aliasing is needed, these work as given in the BE. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117508 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1ee1609094e240771c62e9d6b85103f37b7a6270 |
26-Oct-2010 |
Dan Gohman <gohman@apple.com> |
getOrCreateContentCache never returns null, so overrideFileContents doesn't need its return value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117393 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0d06e998910934e5ef070f53f4c272e7c6b846c6 |
26-Oct-2010 |
Dan Gohman <gohman@apple.com> |
getOrCreateContentCache never returns null, so overrideFileContents doesn't need its return value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117393 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2d92fd674ed223d3a9442968b15480518f459c61 |
23-Oct-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Update remaining attribute macros to new style. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117204 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
14bd96571ef6f0e97dc79ec4d01b547d60e8fa68 |
23-Oct-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Update remaining attribute macros to new style. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117204 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a49254ea13f795120b78c810f98e5977bdafc9b0 |
22-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Change handling of inline asm 'p' constraint to match llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117149 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cee55018570c0c46262c6e4ef7beaa707c93fc86 |
22-Oct-2010 |
Dale Johannesen <dalej@apple.com> |
Change handling of inline asm 'p' constraint to match llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117149 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
43ee87d5885551ea31cca085e1a287d3f0480500 |
22-Oct-2010 |
Oscar Fuentes <ofv@wanadoo.es> |
Don't try to guess svn version when current path is a symlink. See PR 8473. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117110 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
8523d81f3ed13914cafa953233b79cdd8a3eb75c |
22-Oct-2010 |
Oscar Fuentes <ofv@wanadoo.es> |
Don't try to guess svn version when current path is a symlink. See PR 8473. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117110 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
04a9a351ba44b12c715291e1d617268bc0e3415b |
21-Oct-2010 |
Francois Pichet <pichet2000@gmail.com> |
Revert r117005, WIN32 is not predefined after all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117026 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4f74d021d044fb9a3ef8cfd047c108ba7887abfe |
21-Oct-2010 |
Francois Pichet <pichet2000@gmail.com> |
Revert r117005, WIN32 is not predefined after all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117026 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a07c7da88592f070d25104fe8f7ea992b91c704f |
21-Oct-2010 |
Francois Pichet <pichet2000@gmail.com> |
MSVC defines WIN32 as a predefined macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117005 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1a6f72df4b29544b10b3068504301e01d41d52da |
21-Oct-2010 |
Francois Pichet <pichet2000@gmail.com> |
MSVC defines WIN32 as a predefined macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117005 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4fb461c1067d96f27d6b2b163ec210e35c11dc41 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Targets: Fix MinGW and VisualStudio predefined macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117003 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a764e8395a8d99ff534bb74ee302a58fa7d93137 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Targets: Fix MinGW and VisualStudio predefined macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117003 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
01e70084f5d9ddfbb09dcecb498ddce71a5c70ae |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Reorganize predefined macros for all Windows targets. This adds an option to set the _MSC_VER macro without recompiling. This is very useful when testing compatibility with the Windows SDK and c++stdlib headers. -fmsc-version=<version> (defaults to VS2003 (1300)) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116999 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dae4ac4fe56ec60fc93b3e3c9f51e79e682084b9 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Reorganize predefined macros for all Windows targets. This adds an option to set the _MSC_VER macro without recompiling. This is very useful when testing compatibility with the Windows SDK and c++stdlib headers. -fmsc-version=<version> (defaults to VS2003 (1300)) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116999 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d5513a31553eeb274a7dd16500a01a440297e7a5 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116990 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
20249a1af2e462dcafdd6a350f1c7967b264ff25 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116990 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9b94a32029ae0d5c00a37e45f480b20a1794c0c7 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Revert "Cleanup and fix predefined macros for windows." Didn't realize this was on my branch ;/. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116989 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
542ad38e2b5088c90786cb0d209a2f568aa64f3c |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Revert "Cleanup and fix predefined macros for windows." Didn't realize this was on my branch ;/. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116989 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
636e26e0f3c6aa352104864d3cc245789957dca2 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Cleanup and fix predefined macros for windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116988 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
712392e4deb5b14e04047bdaab799b82c5bed37c |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Cleanup and fix predefined macros for windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116988 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
567af7d4376f75158061fec10a3cb8597ad0098a |
18-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
CodeGen: Fix long double on Windows using MSVC runtime. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116700 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e2ef189b05bcd258a18bf4b87039694c1b93fd2c |
18-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
CodeGen: Fix long double on Windows using MSVC runtime. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116700 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3d796930a1057d682dd5f9b719f9f1a42c0d1377 |
18-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116699 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
237cf582b89bbcc22640cea15426ddc7ada8412b |
18-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116699 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
b9d1dba5986d9b5cd4e1a5ff93759b3704593829 |
15-Oct-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
When performing typo correction, look through the set of known identifiers to determine good typo-correction candidates. Once we've identified those candidates, we perform name lookup on each of them and the consider the results. This optimization makes typo correction > 2x faster on a benchmark example using a single typo (NSstring) in a tiny file that includes Cocoa.h from a precompiled header, since we are deserializing far less information now during typo correction. There is a semantic change here, which is interesting. The presence of a similarly-named entity that is not visible can now affect typo correction. This is both good (you won't get weird corrections if the thing you wanted isn't in scope) and bad (you won't get good corrections if there is a similarly-named-but-completely-unrelated thing). Time will tell whether it was a good choice or not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116528 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
95f4292cc526c629fead321c7fcfd4fe0f3bc66e |
15-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
When performing typo correction, look through the set of known identifiers to determine good typo-correction candidates. Once we've identified those candidates, we perform name lookup on each of them and the consider the results. This optimization makes typo correction > 2x faster on a benchmark example using a single typo (NSstring) in a tiny file that includes Cocoa.h from a precompiled header, since we are deserializing far less information now during typo correction. There is a semantic change here, which is interesting. The presence of a similarly-named entity that is not visible can now affect typo correction. This is both good (you won't get weird corrections if the thing you wanted isn't in scope) and bad (you won't get good corrections if there is a similarly-named-but-completely-unrelated thing). Time will tell whether it was a good choice or not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116528 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
9b08d4ae1ff341bdc13ddc4653fa04f8e2ac7522 |
14-Oct-2010 |
John McCall <rjmccall@apple.com> |
Teach Diagnostic to recursively expand inside %plural formats. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116468 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e53a44bcd342e964a3c69bc27734f01e23f5fec8 |
14-Oct-2010 |
John McCall <rjmccall@apple.com> |
Teach Diagnostic to recursively expand inside %plural formats. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116468 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
581d2676f51f135e8a5c259cf3552f65cf321163 |
13-Oct-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
_Bool is not a keyword in C++. Fixes PR7388 and PR8349. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116422 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
3a43d8df596a0af13379c3d2a78e2f7e7b156f30 |
13-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
_Bool is not a keyword in C++. Fixes PR7388 and PR8349. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116422 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
7ad91b430acfc5360cf8dad23763b69f25855ff9 |
13-Oct-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Fix a silly bug in the suppression of non-error diagnostics in a SFINAE context, where we weren't getting the right diagnostic argument count. I blame DiagnosticBuilder's weirdness. Fixes PR8372. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116411 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b535041ee33c5eff255832bc5541c8d52aae8254 |
13-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Fix a silly bug in the suppression of non-error diagnostics in a SFINAE context, where we weren't getting the right diagnostic argument count. I blame DiagnosticBuilder's weirdness. Fixes PR8372. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116411 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a096552e357c5dc9ac92d7077346599c4753af4e |
12-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Tweak attempt to make version tags work from 'svn export's again, clip off the extra parts of the $URL$ SVN keyword. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116269 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
83e18f806087436cb99ad2d044dff04d59d5dd05 |
12-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Tweak attempt to make version tags work from 'svn export's again, clip off the extra parts of the $URL$ SVN keyword. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116269 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
4d384e903f4b006cf0e2dc0b48b095bbff9311be |
12-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Attempt to make version tags work from 'svn export's again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116268 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
7171f2aaf9797b0f2334efc37ea6f69592fb157c |
12-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Attempt to make version tags work from 'svn export's again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116268 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
4b8b94dd61d94ab477667c57b4e5222a09336f08 |
12-Oct-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Eliminate -fdiagnostics-binary and all of the infrastructure for emitting diagnostics in a binary form to be consumed by libclang, since libclang no longer does any of its work out-of-process, making this code dead. Besides, this stuff never worked at 100% anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116250 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d3ab63e0f66429abf2a3e4cde889e420e41e8790 |
12-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Eliminate -fdiagnostics-binary and all of the infrastructure for emitting diagnostics in a binary form to be consumed by libclang, since libclang no longer does any of its work out-of-process, making this code dead. Besides, this stuff never worked at 100% anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116250 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2473b4b5e19eb58080b3986062ef941b97c33039 |
11-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if it comes back, it will be largely a rewrite, so keeping the old codebase in tree isn't helping anyone. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116191 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
757e685512b8616c9de918b3d3fad8247562dce2 |
11-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if it comes back, it will be largely a rewrite, so keeping the old codebase in tree isn't helping anyone. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116191 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
94f41228b08fa888a823bcc45adce89ccaf7c6b0 |
07-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: When clang is built with a VENDOR set, include the base LLVM version in the version information, to help prevent user confusion about vendor version numbers vs. LLVM version numbers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115915 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
ddb6c8df46931374df0a57a534aabcaa3becb6aa |
07-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: When clang is built with a VENDOR set, include the base LLVM version in the version information, to help prevent user confusion about vendor version numbers vs. LLVM version numbers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115915 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
f82728cb95cead54f1bf8c0ccf7d5ebe72c22848 |
07-Oct-2010 |
Stephen Hines <srhines@google.com> |
Use 64-bit "long" for RenderScript ARM targets. Change-Id: I39b3a978740239f2331f20eb7a1ae152ff2ae163
argets.cpp
|
b0406ccde76ee9b4f8601a693f4cd49388873a73 |
06-Oct-2010 |
Stephen Hines <srhines@google.com> |
Add LOCAL_MODULE_TAGS to clang Android.mk files. Change-Id: Iba0dd9023388948d2c3fcb3522cea5d5d9a264a7
ndroid.mk
|
8e41e67059d877a9c27ff6bb0565576c94784533 |
05-Oct-2010 |
Zhanyong Wan <wan@google.com> |
Fix handling of the 'Invalid' argument in SourceManager's methods (patch by Dean Sturtevant, reviewed by chandlerc and Sebastian Redl). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115638 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1f24e11769016e84ebf86ac5d97d43a7ce5dd5c1 |
05-Oct-2010 |
Zhanyong Wan <wan@google.com> |
Fix handling of the 'Invalid' argument in SourceManager's methods (patch by Dean Sturtevant, reviewed by chandlerc and Sebastian Redl). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115638 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
129d24edef6c3a5e873bdf4c4def760f97426549 |
29-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Simplify getClangRepositoryPath and getClangRevision. - I don't like returning StringRef's ever, unless it is actually important for performance, which it isn't here. - Also, stop validating getClangRevision to be an integer, I don't see a good reason to do this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115071 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
16a8fb7e9dd4a0347f7ed676e2d9bd254e1ea5b0 |
29-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Simplify getClangRepositoryPath and getClangRevision. - I don't like returning StringRef's ever, unless it is actually important for performance, which it isn't here. - Also, stop validating getClangRevision to be an integer, I don't see a good reason to do this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115071 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
4044c38752efedec8ecd749b059b693c894a39e2 |
29-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Add support for git svn to get the repo version in clang executable, patch by Jonathan Mulder! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115049 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
640cf37c9432031412a9d3b8c2abcdff4f7f0e97 |
29-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Add support for git svn to get the repo version in clang executable, patch by Jonathan Mulder! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115049 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
b5275017c73a46e5ca9fd4e3c6c90e12bb3e5463 |
22-Sep-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Fixed pr20314-2.c failure, added E, F, p constraint letters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114490 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
7ccc58f9ffa0d2cad6fcf00b66c0fc0d2fae26e6 |
22-Sep-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Fixed pr20314-2.c failure, added E, F, p constraint letters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114490 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
f3795b338ddcd51721955e29ae3e2efd7f00c4c4 |
18-Sep-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Added '|' delimiter to separate inline asm multiple alternative constraints for Clang side of support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114253 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
2f474ea9ef7505df5d092287c48c19974222293b |
18-Sep-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Added '|' delimiter to separate inline asm multiple alternative constraints for Clang side of support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114253 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
32083823fb50672a0df6b5e9a4dc728f4bc7e381 |
15-Sep-2010 |
Cameron Esfahani <dirty@apple.com> |
Fix Windows64 target info so pointer arithmetic is done correctly, and no sign extension code is emitted: PtrDiffType needs to be a signed long long. Add a corresponding test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113910 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1484e0da648e1aa3a68f7114bb771a6ca57f5316 |
15-Sep-2010 |
Cameron Esfahani <dirty@apple.com> |
Fix Windows64 target info so pointer arithmetic is done correctly, and no sign extension code is emitted: PtrDiffType needs to be a signed long long. Add a corresponding test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113910 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3049ec9961d1a1f0570a24dc601e6a362129b35d |
10-Sep-2010 |
Shih-wei Liao <sliao@google.com> |
Merge changes from upstream repository (r112367) Change-Id: Ib88c8fd890e7c8c5597ea2b86cfa934438965c08
|
fe0fb28bcfc69003c77765352186302b6ba30a90 |
14-Sep-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Revert "CMake: Update to use standard CMake dependency tracking facilities instead" This reverts commit r113631 Conflicts: CMakeLists.txt lib/CodeGen/CMakeLists.txt git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113817 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
560a921b85773ac7c2d1a7a4aec4682c822c5cb4 |
14-Sep-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Revert "CMake: Update to use standard CMake dependency tracking facilities instead" This reverts commit r113631 Conflicts: CMakeLists.txt lib/CodeGen/CMakeLists.txt git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113817 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
42591fac8f92efab995608d36060579a9b688d66 |
10-Sep-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
CMake: Update to use standard CMake dependency tracking facilities instead of whatever we were using before... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113631 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
5a7f34958ca6f2fa8a52e9921cf521cbb92ae070 |
10-Sep-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
CMake: Update to use standard CMake dependency tracking facilities instead of whatever we were using before... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113631 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
203b52e0ff062240baa0b0f5d288ff48bccfd809 |
09-Sep-2010 |
Shih-wei Liao <sliao@google.com> |
Remove extra URL string definition to match upstream r102409 first, before 3-way merge to r112367. By the way, so far in 2010 we only sync upstream r95781 and r102409. From now on, will do frequent syncs. Change-Id: I41305eb552f904d36f0e509f942d42660bfd7e44
ersion.cpp
|
ff78c1e870435d1a67e8563d43075716f0896c11 |
07-Sep-2010 |
Dale Johannesen <dalej@apple.com> |
Allow 'o' and 'V' as constraints for output asm operands. Allow '<' and '>' as constraints for input or output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113246 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
0f048a44b5280f5fae28b9363ed4eab618bb1083 |
07-Sep-2010 |
Dale Johannesen <dalej@apple.com> |
Allow 'o' and 'V' as constraints for output asm operands. Allow '<' and '>' as constraints for input or output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113246 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
23cf1f9d0f258b16fb5c07a14ceb7aba4562903e |
03-Sep-2010 |
Dawn Perchik <dawn@burble.org> |
Add symantic support for the Pascal calling convention via "__attribute((pascal))" or "__pascal" (and "_pascal" under -fborland-extensions). Support still needs to be added to llvm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112939 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
52fc314e1b5e1baee6305067cf831763d02bd243 |
03-Sep-2010 |
Dawn Perchik <dawn@burble.org> |
Add symantic support for the Pascal calling convention via "__attribute((pascal))" or "__pascal" (and "_pascal" under -fborland-extensions). Support still needs to be added to llvm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112939 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
b979e7a58d8bf64a7353ae158a7a01bbdb25d6fc |
31-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
Add support for windows x86-64 varargs, patch by Cameron Esfahani! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112603 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f13721dd91dda7675e499331a2770308ad20ca61 |
31-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
Add support for windows x86-64 varargs, patch by Cameron Esfahani! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112603 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c7f867d31de0c8c9b4da8e3f09a6a401d9dc318a |
26-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Fix a typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112219 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3f86b789f5b98731937f90b3941104a313766953 |
26-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Fix a typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112219 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
eba819ac072cf928f45587520f4fc78769627b9c |
25-Aug-2010 |
Dale Johannesen <dalej@apple.com> |
Add some missing X86-specific asm constraint letters, and fix some bugs in setting allowsRegister on the ones there. 8348447. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111980 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
545be51fdfbd243b9ee98177a80397504327a687 |
25-Aug-2010 |
Dale Johannesen <dalej@apple.com> |
Add some missing X86-specific asm constraint letters, and fix some bugs in setting allowsRegister on the ones there. 8348447. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111980 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
69239fb5296186af95cb0acc2cc174f6644b3a72 |
24-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR7953 - Windows filename are case insensitive: #pragma once wasn't working on win32 if the header file was included using a different case. I tracked down the problem to the fact that clang::FileManager was caching files using case sensitive string (UniqueFiles) on Windows. I changed FileManager to cache filename in lower case only. Doesn't affect UNIX because UNIX uses Inode to uniquely identify files. unix doesn't use this codepath. Analysis and patch by Francois Pichet! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111866 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
c070da46b896940aa2cbac416e5a2f8eee22d7d8 |
24-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR7953 - Windows filename are case insensitive: #pragma once wasn't working on win32 if the header file was included using a different case. I tracked down the problem to the fact that clang::FileManager was caching files using case sensitive string (UniqueFiles) on Windows. I changed FileManager to cache filename in lower case only. Doesn't affect UNIX because UNIX uses Inode to uniquely identify files. unix doesn't use this codepath. Analysis and patch by Francois Pichet! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111866 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
08f845b775c7be1a417b1b20b445d47b5c72a1bb |
22-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Detabify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111768 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a7e6845660f91ec611427e1db842780e1ec12bdb |
22-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Detabify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111768 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
68086b9ad26c471322449ea1c030c2ac8397fd07 |
22-Aug-2010 |
John McCall <rjmccall@apple.com> |
The ARM C++ ABI is sufficiently different from the Itanium C++ ABI that it deserves its own enumerator. Obviously the implementations should closely follow the Itanium ABI except in cases of divergence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111749 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
ee79a4c30e5d1c5285551c9a25b8ec6d45d46aa7 |
22-Aug-2010 |
John McCall <rjmccall@apple.com> |
The ARM C++ ABI is sufficiently different from the Itanium C++ ABI that it deserves its own enumerator. Obviously the implementations should closely follow the Itanium ABI except in cases of divergence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111749 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
94123d2d6164c19fe11d639459a054455f2ee887 |
20-Aug-2010 |
Ying Wang <wangying@google.com> |
Fix sim build. Note that this only makes the sim build green, but the built images won't work for sure: No libbcc.so, which depends on something else that can not build in sim mode. No x86 bitcode is generated as well, I believe. Change-Id: Idca8378427196622ac77cd56a38c6a160f03ba22
ndroid.mk
|
461310d47dfb77ed4b176cfa19358bddeb732a35 |
19-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
More PCH -> AST renaming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111472 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
ourceManager.cpp
|
3c7f4134603d04b44f997b43c0a9def270f25386 |
19-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
More PCH -> AST renaming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111472 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
ourceManager.cpp
|
cb6c24a9e86453b63863ce1eb8645e1690c9b542 |
18-Aug-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Simplify FixItHint by eliminated the unnecessary InsertionLoc location. Patch by Eelis van der Weegen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111362 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
783c56f47745f719590b17afd7ed937bf2407b53 |
18-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Simplify FixItHint by eliminated the unnecessary InsertionLoc location. Patch by Eelis van der Weegen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111362 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
dab8fc87f04d93da5b973b548800d54c9b188002 |
18-Aug-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Check whether errors should be included in the diagnostic counts. Previously, only warnings did this check. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111355 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
7a5bf5fb01c676809efcf63de322a88819115652 |
18-Aug-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Check whether errors should be included in the diagnostic counts. Previously, only warnings did this check. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111355 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
097ce228a9a66f48b7e27874e0dc0db13b1b7872 |
18-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Get rid of pretty non-ASCII quotes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111316 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5005a6cf2e78be57c053d011ce9f95b40c8a5f5b |
18-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Get rid of pretty non-ASCII quotes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111316 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
42be80599fb039f3b7d383feff7a22e90ce1e33e |
17-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
apparently msvc defines _STDCALL_SUPPORTED, so we should too. Patch by Per Linden! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111236 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
653f5812f754a1e91991f4901ec4e9145ae2be68 |
17-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
apparently msvc defines _STDCALL_SUPPORTED, so we should too. Patch by Per Linden! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111236 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a256f5f41fbc9723df79ce52bf6c0855df786f06 |
15-Aug-2010 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Remove dead code, caught by unused function warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111091 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ba6f816d633e3b88c38c6896c2d78d19489650f2 |
15-Aug-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove dead code, caught by unused function warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111091 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
87e3107813ef5656e78dde72621ee2b0070c3c1c |
12-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Fix oversight with symbolic names in TargetInfo::validateInputConstraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110870 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
0eff4e73d58cf28458470beec31b33bcb302377c |
12-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Fix oversight with symbolic names in TargetInfo::validateInputConstraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110870 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
14f796cba920ce6012f5248a3f6e94b45579abd6 |
12-Aug-2010 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
-Make TokenID of IdentifierInfo read-only, remove setTokenID(). -There are 2 instances that change the TokenID for GNU libstdc++ 4.2 compatibility. To handler those cases introduce a RevertedTokenID bitfield, RevertTokenIDToIdentifier() and hasRevertedTokenIDToIdentifier() methods. Store the bitfield in PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110868 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
646395bbcaa849c94bc2a3246c71d809ca719f01 |
12-Aug-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
-Make TokenID of IdentifierInfo read-only, remove setTokenID(). -There are 2 instances that change the TokenID for GNU libstdc++ 4.2 compatibility. To handler those cases introduce a RevertedTokenID bitfield, RevertTokenIDToIdentifier() and hasRevertedTokenIDToIdentifier() methods. Store the bitfield in PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110868 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
663e9f8d434923e97b5585eaeb140c37f841528b |
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Recognize single precision float register names. - We don't recognize double or NEON register names yet -- we don't have the infrastructure to generate the right clobbers for them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110775 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bf3d55243a58bc8ffc80c1fc581275677e348760 |
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Recognize single precision float register names. - We don't recognize double or NEON register names yet -- we don't have the infrastructure to generate the right clobbers for them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110775 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
00ea8f0d9fef2943790f3a48b5579792ebee2ed3 |
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Swap which registers we consider real / aliases to match LLVM and llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110774 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1fd71718eee5f39f560f536f0ee9cf7c68876518 |
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Swap which registers we consider real / aliases to match LLVM and llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110774 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
39216c26c7edb4f1eab11157772f63e0c7a27391 |
11-Aug-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Fix for pr7869, inline asm mult-alt constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110764 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
6f158034915a112d6082a6b238a56337d1528328 |
11-Aug-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Fix for pr7869, inline asm mult-alt constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110764 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
b6e73d494139924080889ff90d6976f13693eca2 |
10-Aug-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Slightly revised handling of mult-alt constraints, to avoid an assert, until we have the full fix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110706 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ef44e1110711276ffffe4b22d4ba0cebd49cb330 |
10-Aug-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Slightly revised handling of mult-alt constraints, to avoid an assert, until we have the full fix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110706 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
05e6d2136a7c340ecf5d2120cbee8b2f231d7f7f |
06-Aug-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Define _INTEGRAL_MAX_BITS for the win32 and win64 targets, from Per Lindén! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110442 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
72283806e717442536eef55941fd573d4b552393 |
06-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Define _INTEGRAL_MAX_BITS for the win32 and win64 targets, from Per Lindén! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110442 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
866ff8ad29edb97cebce13dbb1b4acfb69b2830b |
05-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
fix the va_list definition for vc++64, patch by Cameron Esfahani! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110370 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
86e83730b5c1dd9d38b9c9317abbf691a617d63f |
05-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
fix the va_list definition for vc++64, patch by Cameron Esfahani! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110370 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8a93f510715475e7b4eb66023ab9597c4c367188 |
05-Aug-2010 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add -mavx and -mno-avx command line support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110265 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7377ed985bb2a529d1abb4ebea88586e5d195d1b |
05-Aug-2010 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add -mavx and -mno-avx command line support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110265 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
31ce54e8a23d07a504c0df01cb1ece1079192e53 |
02-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
PR7777: Set EnabledByDefault to something useful, instead of setting it randomly. This makes us consistently show "-pedantic" as the warning option for a warning where appropriate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109987 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
270c03550b311058d140d8c6a0257c553bc96241 |
02-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
PR7777: Set EnabledByDefault to something useful, instead of setting it randomly. This makes us consistently show "-pedantic" as the warning option for a warning where appropriate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109987 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6ccdbb83af9f43824191783b6842a9628f048e43 |
31-Jul-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Implement dependency analysis for the precompiled preamble. If any of the files in the precompiled preamble have changed since it was build, force the preamble to be rebuilt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109937 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cc5888d833caf90ebda37f24da40d2cd06b4d820 |
31-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement dependency analysis for the precompiled preamble. If any of the files in the precompiled preamble have changed since it was build, force the preamble to be rebuilt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109937 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6227b1e56f35a4dae53d631d392a83ab8a75feef |
30-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Make macro weirdness in chained PCH work. This required changing the way PCHReader and PCHWriter are initialized to correctly pick up all initializer. On the upside, this means that there is far less repetition in the dependent PCH now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109823 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
ffaab3e2bb13991bb3357e80f14bcae3745b2347 |
30-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Make macro weirdness in chained PCH work. This required changing the way PCHReader and PCHWriter are initialized to correctly pick up all initializer. On the upside, this means that there is far less repetition in the dependent PCH now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109823 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
3a5b11b140639d21e62f011da8ec6a15c125062c |
28-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Add a test case for tentative definitions in chained PCH. Fix a bug that completely messed up source locations and thus caused a crash whenever a diagnostic was emitted in chained PCH files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109660 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b86238d2f0a93ce91717906f9211927f48a7121a |
28-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Add a test case for tentative definitions in chained PCH. Fix a bug that completely messed up source locations and thus caused a crash whenever a diagnostic was emitted in chained PCH files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109660 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8996eea5e6da975455e44bc1ee3a565d425a4916 |
27-Jul-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
When remapping a virtual file, also make an entry for the file with its absolute path on disk. Also, introduce a fun test for the precompiled preamble, which almost works... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109470 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
3e15e0a7b4da6d906357b00b1bd2bba5ec3195ed |
27-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
When remapping a virtual file, also make an entry for the file with its absolute path on disk. Also, introduce a fun test for the precompiled preamble, which almost works... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109470 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
923d0beb91543df63b166abaad9288a74dda8795 |
26-Jul-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce basic support for loading a precompiled preamble while reparsing an ASTUnit. When saving a preamble, create a buffer larger than the actual file we're working with but fill everything from the end of the preamble to the end of the file with spaces (so the lexer will quickly skip them). When we load the file, create a buffer of the same size, filling it with the file and then spaces. Then, instruct the lexer to start lexing after the preamble, therefore continuing the parse from the spot where the preamble left off. It's now possible to perform a simple preamble build + parse (+ reparse) with ASTUnit. However, one has to disable a bunch of checking in the PCH reader to do so. That part isn't committed; it will likely be handled with some other kind of flag (e.g., -fno-validate-pch). As part of this, fix some issues with null termination of the memory buffers created for the preamble; we were trying to explicitly NULL-terminate them, even though they were also getting implicitly NULL terminated, leading to excess warnings about NULL characters in source files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109445 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f4f6c9db68465b886ec2e596feaa6ecc782395a4 |
26-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce basic support for loading a precompiled preamble while reparsing an ASTUnit. When saving a preamble, create a buffer larger than the actual file we're working with but fill everything from the end of the preamble to the end of the file with spaces (so the lexer will quickly skip them). When we load the file, create a buffer of the same size, filling it with the file and then spaces. Then, instruct the lexer to start lexing after the preamble, therefore continuing the parse from the spot where the preamble left off. It's now possible to perform a simple preamble build + parse (+ reparse) with ASTUnit. However, one has to disable a bunch of checking in the PCH reader to do so. That part isn't committed; it will likely be handled with some other kind of flag (e.g., -fno-validate-pch). As part of this, fix some issues with null termination of the memory buffers created for the preamble; we were trying to explicitly NULL-terminate them, even though they were also getting implicitly NULL terminated, leading to excess warnings about NULL characters in source files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109445 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c0dd65e0f3e986a09729455447f3ef6d40bf3256 |
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Fix namespace polution. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109440 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3c46e8db99196179b30e7ac5c20c4efd5f3926d7 |
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Fix namespace polution. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109440 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
df5e9452ddfbb6931fb474a70d658937fad749d3 |
25-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Wrap bit mangling logic for DiagMappings in its own class so it doesn't leak into other code. Make it an array instead of a constant-length vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109384 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3c2d3016adec79c81c4efff64e208fd3ecdd92ae |
25-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Wrap bit mangling logic for DiagMappings in its own class so it doesn't leak into other code. Make it an array instead of a constant-length vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109384 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3736cc27255fddd14cf5bca6773181709aa163cc |
21-Jul-2010 |
Nate Begeman <natebegeman@mac.com> |
Catch thinko that Daniel Dunbar found. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109023 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ad4f387b451372c3e9b533995aa216678b78c53d |
21-Jul-2010 |
Nate Begeman <natebegeman@mac.com> |
Catch thinko that Daniel Dunbar found. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109023 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
472bd999efd65403e493169e48380f591ff262cc |
21-Jul-2010 |
Nate Begeman <natebegeman@mac.com> |
Fix win64 compilation of constants like 0xFFFFFFFFFFFFFFFFULL intmax_t is __int64 (long long to clang), per VS 2010 stdint.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108980 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dbf8ea413e7b4002d6f0f80415fe447652bc466d |
21-Jul-2010 |
Nate Begeman <natebegeman@mac.com> |
Fix win64 compilation of constants like 0xFFFFFFFFFFFFFFFFULL intmax_t is __int64 (long long to clang), per VS 2010 stdint.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108980 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c8ce3346d45378ed47546672a86c1bf47e87802e |
19-Jul-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce a new libclang API, clang_reparseTranslationUnit(), which reparses an already-parsed translation unit. At the moment it's just a convenience function, but we hope to use it for performance optimizations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108756 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
abc563f554951259bbe0315055cad92ee14d87e4 |
19-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new libclang API, clang_reparseTranslationUnit(), which reparses an already-parsed translation unit. At the moment it's just a convenience function, but we hope to use it for performance optimizations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108756 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ef006823ecd2344aa0b47065d6d2b2bcbe95a853 |
18-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
BUILD_ARCHIVE is the default for libraries, no need to set it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108633 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
9638eef7e3b2ca30406c5d369a44aa49ff26b201 |
18-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
BUILD_ARCHIVE is the default for libraries, no need to set it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108633 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
3e57483debad96ec894bb53d856df066f89089a3 |
16-Jul-2010 |
Ted Kremenek <kremenek@apple.com> |
Add builtin definition for scanf, including extending the builtin encoding to represent builtins that have the "scanf" attribution (via the format attribute) just like we do with printf functions. Follow-up work is needed to add similar support for fscanf et al. This is to support format-string checking for scanf functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108499 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
bee05c1206dcd525e0a1f066d166ad3e972a500e |
16-Jul-2010 |
Ted Kremenek <kremenek@apple.com> |
Add builtin definition for scanf, including extending the builtin encoding to represent builtins that have the "scanf" attribution (via the format attribute) just like we do with printf functions. Follow-up work is needed to add similar support for fscanf et al. This is to support format-string checking for scanf functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108499 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
6f94dbb24b4bda547bf7492cf707aeadef311ddf |
15-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
CodeGen/ObjC/NeXT: Fix Obj-C message send to match llvm-gcc when choosing whether to use objc_msgSend_fpret; the choice is target dependent, not Obj-C ABI dependent. - <rdar://problem/8139758> arm objc _objc_msgSend_fpret bug git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108379 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
dacf9dda17346c628fdd8c5df53c681738db0dc5 |
15-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
CodeGen/ObjC/NeXT: Fix Obj-C message send to match llvm-gcc when choosing whether to use objc_msgSend_fpret; the choice is target dependent, not Obj-C ABI dependent. - <rdar://problem/8139758> arm objc _objc_msgSend_fpret bug git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108379 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
8254d63f615f04f3b27894c9e0a355e20f43a6f7 |
15-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Pass StringRefs by value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108375 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
ec1b1cc006cef19e0a95d0ea6fbfd37d0d615066 |
15-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Pass StringRefs by value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108375 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
7ba29ecb828f3d9c7ab3d39714f1315b640538bd |
10-Jul-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Hack for dealing with commas until we support multiple alternative constraints, per pr7338. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108028 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
bb0cf4a29d75a660bbdd20761b9830a38a910419 |
10-Jul-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Hack for dealing with commas until we support multiple alternative constraints, per pr7338. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108028 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
bb5d1ae16f0f346bfb0ce5177d392758b0476538 |
09-Jul-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Revert 107953, remove comma ignoring from PPC constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107956 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ab9e2f5aa498a5e0a67db4c823de3e995b86688e |
09-Jul-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Revert 107953, remove comma ignoring from PPC constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107956 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
da229d7532e27225fe015daaf1a86071c3f0bc3a |
09-Jul-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Updating PPC target to ignore commas in asm contrains, as apparently that is what gcc does. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107953 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ec3a5d8975ced34ab16fe2d39dc759dc03ea8750 |
09-Jul-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Updating PPC target to ignore commas in asm contrains, as apparently that is what gcc does. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107953 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6f4bed50c076d7c8dd115c4c8af150d44bb6b379 |
07-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add driver support for minix, patch by Kees van Reeuwijk from PR7583 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107788 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
38e317d6dce161b249508686cc67eb7176958762 |
07-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add driver support for minix, patch by Kees van Reeuwijk from PR7583 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107788 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d109c6262ddef0ad4d1c6fdac29f1c7428987505 |
25-Jun-2010 |
Eric Christopher <echristo@apple.com> |
Translate numbers properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106873 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dd53ec9524cff66dfd7d4ea45ed651bf682a3254 |
25-Jun-2010 |
Eric Christopher <echristo@apple.com> |
Translate numbers properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106873 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e0a3947f6d035da90ee7a4ebaf69f381c34185e4 |
25-Jun-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Fixed another double-char in PPC-specific asm constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106812 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
56b6ecad6c117a3f937cb22977c02ad9274cad33 |
25-Jun-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Fixed another double-char in PPC-specific asm constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106812 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1deeb9f84c6e25bbe7b0a00eaa86a8f49d1b1e70 |
25-Jun-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Added PPC-specific asm constraints, PS3 configuration changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106806 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8e6065af76763f47210dcef4fe81b0a0c1f0c999 |
25-Jun-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Added PPC-specific asm constraints, PS3 configuration changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106806 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
45ead230aed931bef48b9d4e6600941081df44ae |
24-Jun-2010 |
Eric Christopher <echristo@apple.com> |
More clang support for darwin tls. Add a __has_feature macro and target specific preprocessor define as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106715 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1f84f8d970a673e487b40d341cd3e8d52ca9cc22 |
24-Jun-2010 |
Eric Christopher <echristo@apple.com> |
More clang support for darwin tls. Add a __has_feature macro and target specific preprocessor define as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106715 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
78eef07e2d081112922d5c5de20af6780c2a1f91 |
19-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
introduce a new CharSourceRange class, and enhance the diagnostics routines to use them instead of SourceRange. CharSourceRange is just a SourceRange plus a bool that indicates whether the range has the end character resolved or whether the end location is the start of the end token. While most of the compiler wants to think of ranges that have ends that are the start of the end token, the printf diagnostic stuff wants to highlight ranges within tokens. This is transparent to the diagnostic stuff. To start taking advantage of the new capabilities, you can do something like this: Diag(..) << CharSourceRange::getCharRange(Begin,End) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106338 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0a76aae8c03cb7dd7bdbe683485560afaf695959 |
19-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
introduce a new CharSourceRange class, and enhance the diagnostics routines to use them instead of SourceRange. CharSourceRange is just a SourceRange plus a bool that indicates whether the range has the end character resolved or whether the end location is the start of the end token. While most of the compiler wants to think of ranges that have ends that are the start of the end token, the printf diagnostic stuff wants to highlight ranges within tokens. This is transparent to the diagnostic stuff. To start taking advantage of the new capabilities, you can do something like this: Diag(..) << CharSourceRange::getCharRange(Begin,End) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106338 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
976d174ca7df21123db7901c5d8d0af328bc1568 |
17-Jun-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Update CMake build system for ARM NEON generation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106220 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
2390b62f3afd9cc83d03a1972d4533eb52c246a4 |
17-Jun-2010 |
Douglas Gregor <dgregor@apple.com> |
Update CMake build system for ARM NEON generation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106220 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
00f90b974369ccd699c3d29e4edef8526d78083c |
17-Jun-2010 |
Sean Hunt <rideau3@gmail.com> |
Update CMake build for new attribute changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106188 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
ee6e4b4baa1acd85ba8b142862ac5986621aaffd |
17-Jun-2010 |
Sean Hunt <rideau3@gmail.com> |
Update CMake build for new attribute changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106188 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
4bf99130178f92af4eb958837bff9d6266f06227 |
11-Jun-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Add an option -fshow-overloads=best|all to limit the number of overload candidates printed. We default to 'all'. At the moment, 'best' prints only the first 4 overloads, but we'll improve that over time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105815 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5edbdcc62098e305cd55654814dcf783a3f3c477 |
11-Jun-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Add an option -fshow-overloads=best|all to limit the number of overload candidates printed. We default to 'all'. At the moment, 'best' prints only the first 4 overloads, but we'll improve that over time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105815 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fed3a2b1dfd4e96b8bf74851e80e2f162f81b4ec |
11-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Add an option to specify the target C++ ABI to the frontend. Use it to select either the default Itanium ABI or the new, experimental Microsoft ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105804 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
98b7c5c496dfccb39287b8f7d8f1444594936d10 |
11-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Add an option to specify the target C++ ABI to the frontend. Use it to select either the default Itanium ABI or the new, experimental Microsoft ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105804 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d16a220f31e45964495aa6b7fe39b10eee3f5d6f |
10-Jun-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Create a LinuxTargetInfo on ARM. This make clang correctly expand __USER_LABEL_PREFIX__. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105771 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
022a8a59f6eaacbfe3d934ce940e16099e44eebd |
10-Jun-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Create a LinuxTargetInfo on ARM. This make clang correctly expand __USER_LABEL_PREFIX__. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105771 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
608b5793179e667766022a3710204a676f3e350f |
09-Jun-2010 |
Anders Carlsson <andersca@mac.com> |
On Darwin, initialization and destruction functions should go into the __StaticInit section. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105650 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
18af368c080b9d60e34e670cd01f7d2d3ad2ba48 |
09-Jun-2010 |
Anders Carlsson <andersca@mac.com> |
On Darwin, initialization and destruction functions should go into the __StaticInit section. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105650 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ed5bf62969af84e508b62c0a9b19756bbfb2ce38 |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Makefiles: Set Clang CPP compiler flags in a single location, instead of scattered throughout the project Makefiles. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105638 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
c4dec1c58eeb2ef46cdb64120eb6b819c6927afb |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Makefiles: Set Clang CPP compiler flags in a single location, instead of scattered throughout the project Makefiles. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105638 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
e55e5e35d511ea62e635374aeca1c09ba7ce6d88 |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Makefile: Switch Clang Makefiles to always include the top-level Clang Makefile. - This eliminates most dependencies on how Clang is installed relative to LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105637 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
afed099bd2e759efd4bb63fdc525d3445f94cc13 |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Makefile: Switch Clang Makefiles to always include the top-level Clang Makefile. - This eliminates most dependencies on how Clang is installed relative to LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105637 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
c8bfd0f8bb22ea019c673898bbdb07a834f0d821 |
08-Jun-2010 |
Shih-wei Liao <sliao@google.com> |
Git hiccup. Retry.... Change-Id: I5a329137a43f36bab32ea62386ade11da550c0b0
ndroid.mk
|
200213f20fef82c10b7da00873c99b93cee6da63 |
08-Jun-2010 |
Shih-wei Liao <sliao@google.com> |
Fix llvm.mk and the other 49 mk files Change-Id: I5aa02363c1083297d163a575f5a35c495f950230
ndroid.mk
|
bfa7c00b14aea814fdbfc693bba43cbd25878775 |
05-Jun-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Correctly align large arrays in x86-64. This fixes PR5599. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105500 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
6deecb0d46bcfd048e651d2db7c4fb0d6407da96 |
05-Jun-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Correctly align large arrays in x86-64. This fixes PR5599. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105500 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
ea285162342df160e7860e26528bc7110bc6c0cd |
04-Jun-2010 |
Shih-wei Liao <sliao@google.com> |
Initial slang. Change-Id: I4f84a741e5fbc440cd4c251406d2b611a237f713
ndroid.mk
uiltins.cpp
MakeLists.txt
onvertUTF.c
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
akefile
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
ersion.cpp
|
6501cabe7d6b2e6efe746ec3ce23c951255701a0 |
30-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Accept '#pragma options align=mac68k' on Darwin/PPC and Darwin/PPC64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105116 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4c6a22610146e0046602060745a51548d565ab0e |
30-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Accept '#pragma options align=mac68k' on Darwin/PPC and Darwin/PPC64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105116 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
33bf24b6c409519bd3bff02fca66988e073d85e4 |
28-May-2010 |
John McCall <rjmccall@apple.com> |
Roll back r104941. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104990 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2b7baf0816a40af3fde3a3e174192a549b785a50 |
28-May-2010 |
John McCall <rjmccall@apple.com> |
Roll back r104941. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104990 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
65c142e3f6681b65406f8c9f0ac7cf3de866e010 |
28-May-2010 |
John McCall <rjmccall@apple.com> |
Add a new attribute on records, __attribute__((adl_invisible)), and define the x86-64 __va_list_tag with this attribute. The attribute causes the affected type to behave like a fundamental type when considered by ADL. (x86-64 is the only target we currently provide with a struct-based __builtin_va_list) Fixes PR6762. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104941 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1d0a5856d066f9030efbe3e0d9bbbb50ea597b99 |
28-May-2010 |
John McCall <rjmccall@apple.com> |
Add a new attribute on records, __attribute__((adl_invisible)), and define the x86-64 __va_list_tag with this attribute. The attribute causes the affected type to behave like a fundamental type when considered by ADL. (x86-64 is the only target we currently provide with a struct-based __builtin_va_list) Fixes PR6762. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104941 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0104558d1389454db83e64d878b6f8ce7b766d2f |
27-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Darwin/ARM seems to support mac68k align as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104828 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
350b9f3e8ff19bcb1f5130ad4fbc99dde4ec24c9 |
27-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Darwin/ARM seems to support mac68k align as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104828 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9451c5428d52c675c93eb968c2fc3e595f8d2f01 |
27-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Sema: Reject '#pragma options align=mac68k' everywhere except i386-apple-darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104789 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
613fd67e575ff1c038535b18dafebca070f3ed91 |
27-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Sema: Reject '#pragma options align=mac68k' everywhere except i386-apple-darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104789 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
b4141fd89f03dedd8dbbbd1f6aa17db30a498584 |
21-May-2010 |
Chris Lattner <sabre@nondot.org> |
don't make _Bool be a keyword in -fms-extensions mode, patch by Steven Watanabe! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104373 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
34d7c4d62863ca0d5bcf705da0e1001878386c26 |
21-May-2010 |
Chris Lattner <sabre@nondot.org> |
don't make _Bool be a keyword in -fms-extensions mode, patch by Steven Watanabe! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104373 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
de3f159916eb03a48eff305886616ecc18eb7789 |
13-May-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Update the types for warning option subgroup arrays to 'short', we have more than 127 groups so this was already failing given -fsigned-char. A subsequent to commit to TableGen will generate shorts for the arrays themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103703 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5ef12b37f00f747f130664c655bb9b29dc10c816 |
13-May-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Update the types for warning option subgroup arrays to 'short', we have more than 127 groups so this was already failing given -fsigned-char. A subsequent to commit to TableGen will generate shorts for the arrays themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103703 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cbcd7f3f10e32c649f00d0a01cbfabb716a038de |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
clean up isBeforeInTranslationUnit by factoring out some common code into a MoveUpIncludeHierarchy helper, and use the helper to fix a case involving macros which regressed from my recent patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103288 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d3b8cc27920a0f4eb6e832e24a602475aa9f0ff0 |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
clean up isBeforeInTranslationUnit by factoring out some common code into a MoveUpIncludeHierarchy helper, and use the helper to fix a case involving macros which regressed from my recent patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103288 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
669a67760c601a20787d375eb73047763d5adaaa |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
reimplement the guts of SourceManager::isBeforeInTranslationUnit to be algorithmically faster and avoid an std::map. This routine basically boils down to finding the nearest common ancestor in a tree, and we (implicitly) have information about nesting depth, use it! This wraps up rdar://7948633 - SourceManager::isBeforeInTranslationUnit has poor performance git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103239 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
48296ba924cb95e0d898fa7a1da33f23be8c731c |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
reimplement the guts of SourceManager::isBeforeInTranslationUnit to be algorithmically faster and avoid an std::map. This routine basically boils down to finding the nearest common ancestor in a tree, and we (implicitly) have information about nesting depth, use it! This wraps up rdar://7948633 - SourceManager::isBeforeInTranslationUnit has poor performance git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103239 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
fc27c0d5b02def0602e93c1125de61e1c265d5c1 |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
start using the caching now that it appears to work! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103236 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
66a915fbd73a0e404ed28f58e4a3f1b8d0f8fb94 |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
start using the caching now that it appears to work! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103236 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c70306e9aecfba0dbc325d9a9df3d8033a8a0d19 |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
reimplement the caching in the SourceManager::isBeforeInTranslationUnit() method to be correct. Right now it correctly computes the cache, then goes ahead and computes the result the hard way, then asserts that they match. Next I'll actually turn it on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103231 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
dcb1d68f6ffa183f3919aee6b554aec3793bf13e |
07-May-2010 |
Chris Lattner <sabre@nondot.org> |
reimplement the caching in the SourceManager::isBeforeInTranslationUnit() method to be correct. Right now it correctly computes the cache, then goes ahead and computes the result the hard way, then asserts that they match. Next I'll actually turn it on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103231 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d6804c599dabbe26c0054afbc97ad089fcde254c |
06-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Update getClangRepositoryPath for my change to integration branch layout. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103192 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
4cadeec91b805bba64a720c6ad85052e97b5b30c |
06-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Basic: Update getClangRepositoryPath for my change to integration branch layout. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103192 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
89429ad868c2156bcf04ab440a03512db980072b |
06-May-2010 |
Ted Kremenek <kremenek@apple.com> |
Workaround a really serious caching bug in SourceManager::isBeforeInTranslationUnit() where the method will sometimes return different results for the same input SourceLocations. I haven't unraveled this method completely yet, so this truly is a workaround until a better fix comes along. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103143 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
672c003286c6493121ea1c9aca31f5504de737d2 |
06-May-2010 |
Ted Kremenek <kremenek@apple.com> |
Workaround a really serious caching bug in SourceManager::isBeforeInTranslationUnit() where the method will sometimes return different results for the same input SourceLocations. I haven't unraveled this method completely yet, so this truly is a workaround until a better fix comes along. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103143 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ff1c25eea3870b8220aa484b3b51e348c90d2566 |
04-May-2010 |
Chris Lattner <sabre@nondot.org> |
When -fdiagnostics-print-source-range-info is specified, print the diagnostic category number in the [] at the end of the line. For example: $ cat t.c #include <stdio.h> void foo() { printf("%s", 4); } $ clang t.c -fsyntax-only -fdiagnostics-print-source-range-info t.c:3:11:{3:10-3:12}{3:15-3:16}: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,1] printf("%s", 4); ~^ ~ 1 warning generated. Clients that want category information can now pick the number out of the output, rdar://7928231. More coming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103053 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
c9b889044c8e1e2d6ab194e34e8b74f6998094fa |
04-May-2010 |
Chris Lattner <sabre@nondot.org> |
When -fdiagnostics-print-source-range-info is specified, print the diagnostic category number in the [] at the end of the line. For example: $ cat t.c #include <stdio.h> void foo() { printf("%s", 4); } $ clang t.c -fsyntax-only -fdiagnostics-print-source-range-info t.c:3:11:{3:10-3:12}{3:15-3:16}: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,1] printf("%s", 4); ~^ ~ 1 warning generated. Clients that want category information can now pick the number out of the output, rdar://7928231. More coming. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103053 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
38d0f2ffd306c187fd862aabb22e01311b78468d |
04-May-2010 |
Chris Lattner <sabre@nondot.org> |
add the ability to associate 'category' names with diagnostics and diagnostic groups. This allows the compiler to group diagnostics together (e.g. "Logic Warning", "Format String Warning", etc) like the static analyzer does. This is not exposed through anything in the compiler yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103051 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
27b0f510d1d4f9ed5668eec1195f04b4a74a4426 |
04-May-2010 |
Chris Lattner <sabre@nondot.org> |
add the ability to associate 'category' names with diagnostics and diagnostic groups. This allows the compiler to group diagnostics together (e.g. "Logic Warning", "Format String Warning", etc) like the static analyzer does. This is not exposed through anything in the compiler yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103051 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e20b812c499916b8b1c6fbd52823ca6b4c6413ec |
23-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
david conrad points out that {|} in inline assembly on arm are not asm variants. This fixes neon inline asm which my patch for PR6780 broke. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102181 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
9bffb0701d02a10e77e1ac0f196074eed6466ed0 |
23-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
david conrad points out that {|} in inline assembly on arm are not asm variants. This fixes neon inline asm which my patch for PR6780 broke. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102181 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
5b8b18a138f0ae834f195e5e1be7fc84931bd4f9 |
22-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
another tweak for haiku support, patch by Paul Davey! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102098 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fe1ea7b3e4552a612a1b0a11734598651e5ddfdf |
22-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
another tweak for haiku support, patch by Paul Davey! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102098 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9eb811b460351d6bc0144ab6c2b495f01035123b |
22-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM/APCS: Don't respect bit-field types when laying out structures. - This fixes the last known ABI issues with ARM/APCS. - I've run the first 1k ABITests with '--no-unsigned --no-vector --no-complex' on {armv6, armv7} x {-mno-thumb, -mthumb}, and the first 10k tests for armv7 -mthumb, for both function return types and single argument calls. These all pass now (they failed horribly before without --no-bitfield). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102070 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
684de63867fac4ffe2f4c97756a16bfcb2d8b54b |
22-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM/APCS: Don't respect bit-field types when laying out structures. - This fixes the last known ABI issues with ARM/APCS. - I've run the first 1k ABITests with '--no-unsigned --no-vector --no-complex' on {armv6, armv7} x {-mno-thumb, -mthumb}, and the first 10k tests for armv7 -mthumb, for both function return types and single argument calls. These all pass now (they failed horribly before without --no-bitfield). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102070 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9b22a175df4d06c7fb6b1597444442b241ba6255 |
21-Apr-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Sink the _GNU_SOURCE definition down into the target configuration, and only define it where we know we need it---Linux and Cygwin. Thanks to Chris for the prodding. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101989 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2b003fd2766914133fa7418e1b368ca171ac4205 |
21-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Sink the _GNU_SOURCE definition down into the target configuration, and only define it where we know we need it---Linux and Cygwin. Thanks to Chris for the prodding. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101989 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d1af63ce83d16bd87e384423c83aad7fbba431e1 |
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
change FullSourceLoc to have a *const* SourceManager&, eliminating a const_cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101940 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5c5db4e94bd1243ba92563acba51ba66afa94917 |
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
change FullSourceLoc to have a *const* SourceManager&, eliminating a const_cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101940 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d8dc8f7f327f2d7f4517e71b54ddaf38b6e7c3e9 |
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
push some source location information down through the compiler, into ContentCache::getBuffer. This allows it to produce diagnostics on the broken #include line instead of without a location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101939 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e127a0d80155b45dafe77f2b4380e5fa111a3345 |
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
push some source location information down through the compiler, into ContentCache::getBuffer. This allows it to produce diagnostics on the broken #include line instead of without a location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101939 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0a40dacf833d9b68b6c8a5cd3c4ed4ec0ec3d69b |
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
enhance sourcemgr to detect various UTF BOM's and emit a fatal error about it instead of producing tons of garbage from the lexer. It would be even better for sourcemgr to dynamically transcode (e.g. from UTF16 -> UTF8). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101924 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
38caec48bc1c9816ca59b8d164a64447ee208c2e |
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
enhance sourcemgr to detect various UTF BOM's and emit a fatal error about it instead of producing tons of garbage from the lexer. It would be even better for sourcemgr to dynamically transcode (e.g. from UTF16 -> UTF8). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101924 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c693861122503dacd40daf3b2fba092db42513c6 |
20-Apr-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce a limit on the depth of the template instantiation backtrace we will print with each error that occurs during template instantiation. When the backtrace is longer than that, we will print N/2 of the innermost backtrace entries and N/2 of the outermost backtrace entries, then skip the middle entries with a note such as: note: suppressed 2 template instantiation contexts; use -ftemplate-backtrace-limit=N to change the number of template instantiation entries shown This should eliminate some excessively long backtraces that aren't providing any value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101882 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
575cf3791216c33770ba950430493cdd43099f8f |
20-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a limit on the depth of the template instantiation backtrace we will print with each error that occurs during template instantiation. When the backtrace is longer than that, we will print N/2 of the innermost backtrace entries and N/2 of the outermost backtrace entries, then skip the middle entries with a note such as: note: suppressed 2 template instantiation contexts; use -ftemplate-backtrace-limit=N to change the number of template instantiation entries shown This should eliminate some excessively long backtraces that aren't providing any value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101882 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
1cfbc68a39712b410f0b5859b87b57f9ff749cea |
17-Apr-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Add support for '-fgnu-keywords' and '-fasm' to Clang's driver. They are not implemented precisely the same as GCC, but the distinction GCC makes isn't useful to represent. This allows parsing code which uses GCC-specific keywords ('asm', etc.) without parsing in a fully GNU mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101667 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
eb5d7b752651283de5abfcc2f91df7227582a08d |
17-Apr-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Add support for '-fgnu-keywords' and '-fasm' to Clang's driver. They are not implemented precisely the same as GCC, but the distinction GCC makes isn't useful to represent. This allows parsing code which uses GCC-specific keywords ('asm', etc.) without parsing in a fully GNU mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101667 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
279ac317a9a1a8b5bc8d3684ac88a11de012eb36 |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Add a -fno-bitfield-type-align option, for my own testing purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101370 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
fb937b8c5f1c5dc9cfd4223b5cae230cc42b0287 |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Add a -fno-bitfield-type-align option, for my own testing purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101370 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
3d1c024dc8dba472a520f00053a4422154614cf0 |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Tweak spelling (Bitfield -> BitField) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101369 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
b6830d616a068971f13e1e213e06a945c8c93cea |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Tweak spelling (Bitfield -> BitField) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101369 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ffa6d1ca26643972b8b6bf394e0cc1cb757643ef |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetInfo::useBitfieldTypeAlignment(). - Used to determine whether the alignment of the type in a bit-field is respected when laying out structures. The default is true, targets can override this as needed. - This is designed to correspond to the PCC_BITFIELD_TYPE_MATTERS macro in gcc. The AST/Sema implementation only affects one line, unless I have forgotten something. I'd appreciate further review. - IRgen still needs to be updated to fully support this (which is effectively PR5591). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101356 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
b6a169395c1b30c76daffebcbd2164b6247a5d21 |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetInfo::useBitfieldTypeAlignment(). - Used to determine whether the alignment of the type in a bit-field is respected when laying out structures. The default is true, targets can override this as needed. - This is designed to correspond to the PCC_BITFIELD_TYPE_MATTERS macro in gcc. The AST/Sema implementation only affects one line, unless I have forgotten something. I'd appreciate further review. - IRgen still needs to be updated to fully support this (which is effectively PR5591). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101356 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
e1e4187656e16bead3702efa068aadfb0055f962 |
15-Apr-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Once we've emitted a fatal diagnostic, keep counting errors but with a separate count of "suppressed" errors. This way, semantic analysis bits that depend on the error count to determine whether problems occured (e.g., some template argument deduction failures, jump-scope checking) will not get confused. The actual problem here is that a missing #include (which is a fatal error) could cause the jump-scope checker to run on invalid code, which it is not prepared to do. Trivial fix for both <rdar://problem/7775941> and <rdar://problem/7775709>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101297 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
1864f2eb59471d07db51adfc3e5b1a229eed631a |
15-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Once we've emitted a fatal diagnostic, keep counting errors but with a separate count of "suppressed" errors. This way, semantic analysis bits that depend on the error count to determine whether problems occured (e.g., some template argument deduction failures, jump-scope checking) will not get confused. The actual problem here is that a missing #include (which is a fatal error) could cause the jump-scope checker to run on invalid code, which it is not prepared to do. Trivial fix for both <rdar://problem/7775941> and <rdar://problem/7775709>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101297 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
db32f0eee66682b5023179ce31968f6eab3e6244 |
12-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR6814 - Only print [-pedantic] on a diagnostic if -pedantic actually turned it on. If a diag is produced by a warning which is an extension but defaults to on, and has no warning group, don't print any option info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101071 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
04e442714c292d9381cad2ac14087991132bddca |
12-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR6814 - Only print [-pedantic] on a diagnostic if -pedantic actually turned it on. If a diag is produced by a warning which is an extension but defaults to on, and has no warning group, don't print any option info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101071 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9ad0d677107a73e492eedc886e41e66ee7fefc72 |
12-Apr-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix null dereference in 'WriteSourceLocation' when the FileEntry is null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101060 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ec55c941f2846db48bce4ed6dd2ce339e1a48962 |
12-Apr-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix null dereference in 'WriteSourceLocation' when the FileEntry is null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101060 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f853e7319cfb327c5390166b53f7c5d812bdbf1e |
11-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add haiku support, patch by Paul Davey! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100982 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
86ed3a326342fa2a8c9d9b5d1d7280c9bad2b007 |
11-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add haiku support, patch by Paul Davey! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100982 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e47793b6778a2142b96c276a2dbc5f30a04c47c3 |
10-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Disable diag::err_file_modified on Win32 completely, until someone cares to fix it. PR6812. - This is another attempt at silencing annoying buildbot failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100914 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0b3c773bdc4f5d5f3aaf882b2f7a5f14df6041e0 |
10-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Disable diag::err_file_modified on Win32 completely, until someone cares to fix it. PR6812. - This is another attempt at silencing annoying buildbot failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100914 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
12d8eca5dacd9cb347e2f464e9f3109affae7657 |
09-Apr-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
On Windows, disable the modification-time check for files used in precompiled headers and/or when reading the contents of the file into memory. These checks seem to be causing spurious regression-test failures on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100866 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9f692a0308975cf24ef117c05e31284a1a944e86 |
09-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
On Windows, disable the modification-time check for files used in precompiled headers and/or when reading the contents of the file into memory. These checks seem to be causing spurious regression-test failures on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100866 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0f96ef65426bcb7db60a4f1d4ca31d90b46b0e5f |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add clang -cc1 level support for "-ferror-limit 42" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100687 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
c100214fdc41a7ea215f75d433eb1cb829fd4330 |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add clang -cc1 level support for "-ferror-limit 42" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100687 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d21b55fdf392a252af792758302512a52cd2341a |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add capabilities to stop emitting errors after some limit. Right now the limit is 0 (aka disabled) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100684 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b205ac9fcd22b87b41697172d1983c5ae9dabaaf |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add capabilities to stop emitting errors after some limit. Right now the limit is 0 (aka disabled) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100684 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e6c39d3a3e77c17bb9aa97be6e2e1ae2dbd654db |
07-Apr-2010 |
Shih-wei Liao <sliao@google.com> |
libbcc Change-Id: Ieaa3ebd5a38f370752495549f8870b534eeedfc5
uiltins.cpp
MakeLists.txt
onvertUTF.c
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
akefile
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
ersion.cpp
|
9c669c7b673233e4aac507ecb3daf6acdfc2fba7 |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
Instead of counting totally diagnostics, split the count into a count of errors and warnings. This allows us to emit something like this: 2 warnings and 1 error generated. instead of: 3 diagnostics generated. This also stops counting 'notes' because they are just follow-on information about the previous diag, not a diagnostic in themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100675 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
53eee7ba970d21ff15bbd4334164037a3b4cc4b8 |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
Instead of counting totally diagnostics, split the count into a count of errors and warnings. This allows us to emit something like this: 2 warnings and 1 error generated. instead of: 3 diagnostics generated. This also stops counting 'notes' because they are just follow-on information about the previous diag, not a diagnostic in themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100675 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6c4e7875b76f4ab0709d008ade4c883ee61c75be |
03-Apr-2010 |
Eric Christopher <echristo@apple.com> |
Add option and macro definition for AES instructions. Now produces real assembly for testcases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100253 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eea12d17ec3527f4f9474571fd3011f3d825c45a |
03-Apr-2010 |
Eric Christopher <echristo@apple.com> |
Add option and macro definition for AES instructions. Now produces real assembly for testcases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100253 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b88ea9f1d1a402b0c9479c1c71a10cf65a5d4157 |
31-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Reinstate my CodeModificationHint -> FixItHint renaming patch, without the C-only "optimization". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100022 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
849b243d4065f56742a4677d6dc8277609a151f8 |
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Reinstate my CodeModificationHint -> FixItHint renaming patch, without the C-only "optimization". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100022 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
100fdef5f9490615be95cc921c88cdba11c36d85 |
31-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Revert r100008, which inexplicably breaks the clang-i686-darwin10 builder git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100018 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
275313cbb0847f1f117f60d144d113804d4fa42d |
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Revert r100008, which inexplicably breaks the clang-i686-darwin10 builder git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100018 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e885f84e7a6e363a54b9100afd1c63364808d959 |
31-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Rename CodeModificationHint to FixItHint, since we've been using the term "fix-it" everywhere and even *I* get tired of long names sometimes. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100008 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d0ebe080eee7c37e73754068b47fd90cc506e128 |
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Rename CodeModificationHint to FixItHint, since we've been using the term "fix-it" everywhere and even *I* get tired of long names sometimes. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100008 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8072597e1d95bcd34bf81697f2eeff70c1a54909 |
30-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Optimize PartialDiagnostic's memory-allocation behavior by placing a cache of PartialDiagnostic::Storage objects into an allocator within the ASTContext. This eliminates a significant amount of malloc traffic, for a 10% performance improvement in -fsyntax-only wall-clock time with 403.gcc's combine.c. Also, eliminate the RequireNonAbstractType hack I put in earlier, which was but a symptom of this larger problem. Fixes <rdar://problem/7806091>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99849 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fe6b2d481d91140923f4541f273b253291884214 |
30-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Optimize PartialDiagnostic's memory-allocation behavior by placing a cache of PartialDiagnostic::Storage objects into an allocator within the ASTContext. This eliminates a significant amount of malloc traffic, for a 10% performance improvement in -fsyntax-only wall-clock time with 403.gcc's combine.c. Also, eliminate the RequireNonAbstractType hack I put in earlier, which was but a symptom of this larger problem. Fixes <rdar://problem/7806091>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99849 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
78dc67e0d8836ec6de51c3091fd5bd0314b076f1 |
25-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Teach the diagnostic engine to provide more detailed information about how to handle a diagnostic during template argument deduction, which may be "substitution failure", "suppress", or "report". This keeps us from, e.g., emitting warnings while performing template argument deduction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99560 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
eab5d1eaaa662c849f1f9920dc8c6a31d7c32d47 |
25-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Teach the diagnostic engine to provide more detailed information about how to handle a diagnostic during template argument deduction, which may be "substitution failure", "suppress", or "report". This keeps us from, e.g., emitting warnings while performing template argument deduction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99560 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fdd2fc31be480a918db8088753b2514c842ac25f |
25-Mar-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
PS3 needs __PPC__. Should this be in the PPC target? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99513 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fb457977c8667ae0bae4e3cbfd14934ad21f011d |
25-Mar-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
PS3 needs __PPC__. Should this be in the PPC target? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99513 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
19e7d4709cf630b57d2e8aa783164bf417f6df4c |
22-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Fix a thinko and a typo in the delayed-diagnostic code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99178 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9e2dac9c9b6bc4384c816a447cca6516a03c89f2 |
22-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Fix a thinko and a typo in the delayed-diagnostic code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99178 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4f6f0f8ad4780a121b81cdaccca6e2a0ea195f76 |
22-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce the notion of a single "delayed" diagnostic into the Diagnostic subsystem, which is used in the rare case where we find a serious problem (i.e., an inconsistency in the file system) while we're busy formatting another diagnostic. In this case, the delayed diagnostic will be emitted after we're done with the other diagnostic. This is only to be used for fatal conditions detected at very inconvenient times, where we can neither stop the current diagnostic in flight nor can we suppress the second error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99175 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceManager.cpp
|
93ea5cb0edf8e509c5113e70cb05ee247c9bdf6b |
22-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce the notion of a single "delayed" diagnostic into the Diagnostic subsystem, which is used in the rare case where we find a serious problem (i.e., an inconsistency in the file system) while we're busy formatting another diagnostic. In this case, the delayed diagnostic will be emitted after we're done with the other diagnostic. This is only to be used for fatal conditions detected at very inconvenient times, where we can neither stop the current diagnostic in flight nor can we suppress the second error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99175 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceManager.cpp
|
a80645719e6a724695641d997c6f831b4ddf7177 |
21-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Keep track of the size/modification time of each file source-location entry in a precompiled header, so that we can detect modified files even when we miss in the stat cache. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99149 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2d52be56ff595341be3c6cec337af6763804ce66 |
21-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Keep track of the size/modification time of each file source-location entry in a precompiled header, so that we can detect modified files even when we miss in the stat cache. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99149 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
25e35c447f324047e43a2a527e87fe0b14f05d5b |
19-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Fix a longstanding (but previously unknown) bug in the lazy deserialization of precompiled headers, where the deserialization of the source location entry for a buffer (e.g., macro instantiation scratch space) would overwrite a one-element FileID cache in the source manager. When tickled at the wrong time, we would return the wrong decomposed source location and eventually cause c-index-test to crash. Found by dumb luck. It's amazing this hasn't shown up before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98940 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5de65721bd31e57f883634d9f10b1bff75c4ffc2 |
19-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Fix a longstanding (but previously unknown) bug in the lazy deserialization of precompiled headers, where the deserialization of the source location entry for a buffer (e.g., macro instantiation scratch space) would overwrite a one-element FileID cache in the source manager. When tickled at the wrong time, we would return the wrong decomposed source location and eventually cause c-index-test to crash. Found by dumb luck. It's amazing this hasn't shown up before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98940 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
09a177cc57f4ce38e0d2be4ba7bae440e6320a8f |
17-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Check the inode in addition to size and modification time to determine whether a file has changed since it was originally read. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98726 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0419a2375f16821e40ea48e5437fefe6a803f26d |
17-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Check the inode in addition to size and modification time to determine whether a file has changed since it was originally read. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98726 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1071378ede1eeb42f1230ebc65fcbeb22418a518 |
17-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Use a simple diagnostic (file modified) when we detect that a file has changed, rather than trying to point out how it changed. The "why" doesn't matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98725 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e39b600582f9183e3301c3e6cb48b76ac5087119 |
17-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Use a simple diagnostic (file modified) when we detect that a file has changed, rather than trying to point out how it changed. The "why" doesn't matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98725 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
147177da525a09e65f2d1f5b7b7ee51311cc66b0 |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Teach SourceManager's content cache to keep track of whether its buffer was invalid when it was created, and use that bit to always set the "Invalid" flag according to whether the buffer is invalid. This ensures that all accesses to an invalid buffer are marked invalid, improving recovery. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98690 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c815108d08b0417c6f1104e7df70dc5278839406 |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Teach SourceManager's content cache to keep track of whether its buffer was invalid when it was created, and use that bit to always set the "Invalid" flag according to whether the buffer is invalid. This ensures that all accesses to an invalid buffer are marked invalid, improving recovery. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98690 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8884f1af9c258316326940a81250f88600676e59 |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Update get*LineNumber() and get*ColumnNumber() functions to pass the Invalid bit through; there are no safety-critical callers of these functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98674 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
64e462dff03492c586be0349ec6aa3ad5cd92720 |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Update get*LineNumber() and get*ColumnNumber() functions to pass the Invalid bit through; there are no safety-critical callers of these functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98674 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
3d5c30c7576189dbe10bf1ca86dca307b4b04319 |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Audit all callers of SourceManager::getCharacterData(); update some of them to recover more gracefully on failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98672 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
a543016fe07030f695d6d56fd22c8c8da617e0d7 |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Audit all callers of SourceManager::getCharacterData(); update some of them to recover more gracefully on failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98672 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
2c3e2821703459a03c37e258dd2d70fdf87efbc2 |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Audit all getBuffer() callers (for both the FullSourceLoc and SourceManager versions), updating those callers that need to recover gracefully from failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98665 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
aae58b0c3efb5fa9f97a3e4b1c1a2d31077efe5b |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Audit all getBuffer() callers (for both the FullSourceLoc and SourceManager versions), updating those callers that need to recover gracefully from failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98665 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
12f7326e2cbd006859816b79326e9e665f902213 |
16-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Switch another function to StringRef instead of char pointer pairs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98631 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
ceafc4b63599d14f0b5b10ff92e22bf242682dce |
16-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Switch another function to StringRef instead of char pointer pairs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98631 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
5fb9b355e182d1ec046cdc061855d3ffb691e967 |
16-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Let SourceManager::getBufferData return StringRef instead of a pair of two const char*. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98630 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f6ac97b101c8840efa92bf29166077ce4049e293 |
16-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Let SourceManager::getBufferData return StringRef instead of a pair of two const char*. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98630 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1226abb6ed8d1f9afad889d618b79fb3c7bd4e9e |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce optional "Invalid" parameters to routines that invoke the SourceManager's getBuffer() and, therefore, could fail, along with Preprocessor::getSpelling(). Use the Invalid parameters in the literal parsers (string, floating point, integral, character) to make them robust against errors that stem from, e.g., PCH files that are not consistent with the underlying file system. I still need to audit every use caller to all of these routines, to determine which ones need specific handling of error conditions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98608 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
50f6af7a6d6951a63f3da7d4c5a7d3965bf73b63 |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce optional "Invalid" parameters to routines that invoke the SourceManager's getBuffer() and, therefore, could fail, along with Preprocessor::getSpelling(). Use the Invalid parameters in the literal parsers (string, floating point, integral, character) to make them robust against errors that stem from, e.g., PCH files that are not consistent with the underlying file system. I still need to audit every use caller to all of these routines, to determine which ones need specific handling of error conditions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98608 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
331eb3639454b3470a666553cd798f32a42a9c2e |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Use SourceManager's Diagnostic object for all file-reading errors, simplifying the SourceManager interfaces somewhat. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98598 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
36c35ba0aca641e60e5dbee8efbc620c08b9bd61 |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Use SourceManager's Diagnostic object for all file-reading errors, simplifying the SourceManager interfaces somewhat. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98598 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
40e0148c249727d064c9aef48aca7c896c8d21c1 |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Give SourceManager a Diagnostic object with which to report errors, and start simplifying the interfaces in SourceManager that can fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98594 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f715ca12bfc9fddfde75f98a197424434428b821 |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Give SourceManager a Diagnostic object with which to report errors, and start simplifying the interfaces in SourceManager that can fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98594 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
85f83d2cdd8957b595f183be73a73b5a3940e07f |
16-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Add some <cstdio> includes to unbreak the buildbots git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98591 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f9b0a58a103784495309543dce4469e44861b4cc |
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Add some <cstdio> includes to unbreak the buildbots git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98591 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
72898076bbfe83ff42f2c478fb10e5391948123b |
15-Mar-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce a new BufferResult class to act as the return type of SourceManager's getBuffer() (and similar) operations. This abstract can be used to force callers to cope with errors in getBuffer(), such as missing files and changed files. Fix a bunch of callers to use the new interface. Add some very basic checks for file consistency (file size, modification time) into ContentCache::getBuffer(), although these checks don't help much until we've updated the main callers (e.g., SourceManager::getSpelling()). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98585 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
aea67dbd653a2dd6dd5cc2159279e81e855b2482 |
15-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new BufferResult class to act as the return type of SourceManager's getBuffer() (and similar) operations. This abstract can be used to force callers to cope with errors in getBuffer(), such as missing files and changed files. Fix a bunch of callers to use the new interface. Add some very basic checks for file consistency (file size, modification time) into ContentCache::getBuffer(), although these checks don't help much until we've updated the main callers (e.g., SourceManager::getSpelling()). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98585 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9f72444851967d26c3ef21db31b67a3b80a01afb |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Reintroduce r98340 and r98341 now without copy/paste errors. Thanks to Ben for pointing this out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98345 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
50acf24b717a05a509e340f0ad0556de68fa4d5d |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Reintroduce r98340 and r98341 now without copy/paste errors. Thanks to Ben for pointing this out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98345 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
92d3b8ffef799318a6093b58dd9d06c615a6bed7 |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Back out r98340 abd r98341 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98344 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
6561adf16dd7d9c17749b15e0e062a23ed979853 |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Back out r98340 abd r98341 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98344 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
3a16d78a9bbed6e29c8f04d722b3c4a9588e7351 |
12-Mar-2010 |
Nuno Lopes <nunoplopes@sapo.pt> |
fix PR6584: __SSE3__ not defined with -mss3 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98342 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
33d3bcac0b53829dc9879d1d3ed95b3a1ef86687 |
12-Mar-2010 |
Nuno Lopes <nunoplopes@sapo.pt> |
fix PR6584: __SSE3__ not defined with -mss3 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98342 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
aa8b510845dd125fb890de5a9f639fc05c44b208 |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Switch parameter order for consistency (no functionality change) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98341 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
f9bc11085746567517ecbcd72ab214a8f16d97db |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Switch parameter order for consistency (no functionality change) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98341 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
476e9d8e9af59ea6fc4a6b6b9b419e43367aa81f |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Add keywords using StringRef git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98340 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
362f6f2d57794bf5d1512c285f73c122562ce7f5 |
12-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Add keywords using StringRef git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98340 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
8b5ca0d258b0dad88a220822ff35cc1b92ffdf74 |
10-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix -Wsign-compare warning reported by clang++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98170 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8515fbf1a1b89e9750ebf3e2ee2c9440424befee |
10-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix -Wsign-compare warning reported by clang++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98170 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2c02647980f16172a25117f6aafeacbf8fb320d7 |
06-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add mblaze target support, patch by Wesley Peck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97890 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9cbeb63901dbf64acfc489d297b513bf9ff6fd86 |
06-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add mblaze target support, patch by Wesley Peck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97890 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
647e39fc5f8b4898e54aba2c0fe2fecaf2c97afa |
05-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make sure the raw_string_ostream gets flushed so we don't accidentally return an empty string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97809 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
940f6465483a83fe856957a10592f52fdde0a7cd |
05-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make sure the raw_string_ostream gets flushed so we don't accidentally return an empty string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97809 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
8a1db93ddce4c6d7c81ce433b512806f3ed4f5b1 |
04-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add TCE target support, patch by Pekka J! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97746 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3a47c4e0a3e8d13ee4fb06cc3a98f9cfa9982400 |
04-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add TCE target support, patch by Pekka J! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97746 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d794f78d414f654885a02d6672ba59b6ed0484ba |
04-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in disabled case as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97716 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d41b4ec5803110a164ad576f4d7a374ed41d786f |
04-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in disabled case as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97716 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
850e20192ea602882f196f53457f9073a0bba1f4 |
04-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in -msse4.1 and -msse4.2 options and continuing a rather hacky solution for translating. Expanded on comment explaining the hack a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97714 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d39ebe2d2a24a331b89465191dce061fd9c6b5e4 |
04-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in -msse4.1 and -msse4.2 options and continuing a rather hacky solution for translating. Expanded on comment explaining the hack a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97714 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b45275280c16fb078d3eb2826a829a75eeb1fc89 |
03-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add framework for ARM builtins, Patch by Edmund Grimley Evans! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97656 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2752c0137d95aa2f4ee1cdff4b564bac842e041b |
03-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add framework for ARM builtins, Patch by Edmund Grimley Evans! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97656 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
61818d864df318f35ae72694c79a1c557521c369 |
03-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Use SVN_REVISION, not SVN_VERSION. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97625 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
ec5008807b03b5ede250d5ecc5bf5bc0aba032ef |
03-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Use SVN_REVISION, not SVN_VERSION. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97625 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
3b524978e22bba4e28aff0b644d0967294b26aef |
03-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Make getClangRevision() check that SVN_VERSION is an empty string (even if it is defined). This fixes the issue of this function returning '0' when SVN_VERSION is defined to be "". Fixes: <rdar://problem/7663667> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97620 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
971cc48dcae6719dc9e4e555fc4fcae8afc680fc |
03-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Make getClangRevision() check that SVN_VERSION is an empty string (even if it is defined). This fixes the issue of this function returning '0' when SVN_VERSION is defined to be "". Fixes: <rdar://problem/7663667> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97620 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
03cc0effa96475ca77bfb6d97dfa539cd45d36da |
02-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in some more MIPS command line options. Patch by Oleksandr Tymoshenko! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97544 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ed734737d5af31906e30e537d4a41c760ddcfc59 |
02-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in some more MIPS command line options. Patch by Oleksandr Tymoshenko! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97544 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b3f69bd589230e8d0f42fb9472281607ee292c9d |
27-Feb-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Robustify SourceManager::getLocation(), so that it returns an end-of-line source location when given a column number beyond the length of the line, or an end-of-file source location when given a line number beyond the length of the file. Previously, we would return an invalid location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97299 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d1eabfb15c87837c57d1eb658d75a1f48d6fd5ed |
27-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
Robustify SourceManager::getLocation(), so that it returns an end-of-line source location when given a column number beyond the length of the line, or an end-of-file source location when given a line number beyond the length of the file. Previously, we would return an invalid location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97299 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
573e99db08ff3a00883726baa34b9c088e29d53d |
19-Feb-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Use a little binary header in serialized diagnostics to help the deserializer skip over noise in the stream git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96641 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b9c903bc7c11adf86b1f1e68ad35cd49703dc654 |
19-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
Use a little binary header in serialized diagnostics to help the deserializer skip over noise in the stream git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96641 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
7f71c68f01b00d5335c53eccc115b1223cb573b5 |
19-Feb-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Re-apply my diagnostics-capture patch for CIndex, with some tweaks to try to address the msvc failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96624 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0a812cf707da15dadd19fdeb0178b9707f4e01a6 |
19-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
Re-apply my diagnostics-capture patch for CIndex, with some tweaks to try to address the msvc failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96624 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8a981127d8f98521c9275a059fee3461e3be0f92 |
18-Feb-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Rework how CIndex handles diagnostics. Rather than using a callback, we attach diagnostics to translation units and code-completion results, so they can be queried at any time. To facilitate this, the new StoredDiagnostic class stores a diagnostic in a serializable/deserializable form, and ASTUnit knows how to capture diagnostics in this stored form. CIndex's CXDiagnostic is a thin wrapper around StoredDiagnostic, providing a C interface to stored or de-serialized diagnostics. I've XFAIL'd one test case temporarily, because currently we end up storing diagnostics in an ASTUnit that's never returned to the user (because it contains errors). I'll introduce a temporary fix for this soon; the real fix will be to allow us to return and query invalid ASTs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96592 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a88084b78fd4ca5d3d858c14b02414f8cc399f02 |
18-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
Rework how CIndex handles diagnostics. Rather than using a callback, we attach diagnostics to translation units and code-completion results, so they can be queried at any time. To facilitate this, the new StoredDiagnostic class stores a diagnostic in a serializable/deserializable form, and ASTUnit knows how to capture diagnostics in this stored form. CIndex's CXDiagnostic is a thin wrapper around StoredDiagnostic, providing a C interface to stored or de-serialized diagnostics. I've XFAIL'd one test case temporarily, because currently we end up storing diagnostics in an ASTUnit that's never returned to the user (because it contains errors). I'll introduce a temporary fix for this soon; the real fix will be to allow us to return and query invalid ASTs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96592 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f803041305058ac5b65674e81c3ae490df472c09 |
16-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
add freebsd/ppc[64] support, patch by Nathan Whitehorn, PR6318 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96362 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e03ae30bc26bbcb0cddc688e3f35a97558118a5f |
16-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
add freebsd/ppc[64] support, patch by Nathan Whitehorn, PR6318 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96362 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2362b4caf5c0fff3968ba4f8190ebaad022e172e |
16-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Re-applying 96173. Looks like finally I got the test case right. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96321 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fcd302b5e44e21fce82b5d78133c5c8ba6ed0727 |
16-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Re-applying 96173. Looks like finally I got the test case right. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96321 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ac2946d5627eb3b7064ff966a072a4ca00ca8458 |
15-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
reverting back 96242 as it still causes a test failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96244 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5591a6b5a8dc1498cf997a4f748a5fb035107be4 |
15-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
reverting back 96242 as it still causes a test failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96244 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
522751c881f976615c73169d52c70c5819f41820 |
15-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Re-applying 96173 with corresponding changes in test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96242 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
aed63cbe10bbef09e2bb75592760b7dc8007bbfe |
15-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Re-applying 96173 with corresponding changes in test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96242 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9672e6cd0a4910529ba25ce3355f9e60222fa8a4 |
14-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
temporarily revert 96173, it is causing test failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96176 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
94baf7fc056f271d1be27c31265431d2e3e5b6c3 |
14-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
temporarily revert 96173, it is causing test failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96176 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f06ac4969f809c6fecb81718dae764f61fe87f7b |
14-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
renamed pic16 specifiic macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96173 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a5999e2a51b17b3ec53771d4e9b4a2eb505d6551 |
14-Feb-2010 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
renamed pic16 specifiic macros. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96173 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0574c3f56f2693b324c70abaa8dcb22623d4fa32 |
13-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix bug I introduced with assinging a temporary to a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96041 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
974be4d50a95317a85b111855946f5aa4bd15887 |
13-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix bug I introduced with assinging a temporary to a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96041 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
93f9b324137514b4fd95d28a95e356190488a37f |
12-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Make the following functions thread-safe but having them return an std::string that is reconstructed every time they are called: getClangRevision() getClangFullRepositoryVersion() getClangFullVersion() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96033 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
a2a9d6e4e5b6001b86b7dfc5db1ea296ce29a3d3 |
12-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Make the following functions thread-safe but having them return an std::string that is reconstructed every time they are called: getClangRevision() getClangFullRepositoryVersion() getClangFullVersion() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96033 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
2ebbae57e73b56bd2b1d19ffd28a30038f41e064 |
12-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
fix a bug in SourceManager::getInstantiationLocSlowCase, where we'd add an offset from the spelling location space to the instantiation location, which doesn't make sense and would lead up to the text diagnostics crashing when presented with non-sensical locations. This fixes rdar://7597492, a crash on 255.vortex. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96004 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a5c6c5814b4c9f562247d2182eb59ccad128dbde |
12-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
fix a bug in SourceManager::getInstantiationLocSlowCase, where we'd add an offset from the spelling location space to the instantiation location, which doesn't make sense and would lead up to the text diagnostics crashing when presented with non-sensical locations. This fixes rdar://7597492, a crash on 255.vortex. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96004 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5f35a15dc93999df76af48e7b694be1888b6177a |
11-Feb-2010 |
John McCall <rjmccall@apple.com> |
Suppress warnings if their instantiation location is in a system header, not their spelling location. This prevents warnings from being swallowed just because the caret is on the first parenthesis in, say, NULL. This is an experiment; the risk is that there might be a substantial number of system headers which #define symbols to expressions which inherently cause warnings. My theory is that that's rare enough that it can be worked around case-by-case, and that producing useful warnings around NULL is worth it. But I'm willing to accept that I might be empirically wrong. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95870 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
779cf424a153ca92d501af87cb50c7a701514a61 |
11-Feb-2010 |
John McCall <rjmccall@apple.com> |
Suppress warnings if their instantiation location is in a system header, not their spelling location. This prevents warnings from being swallowed just because the caret is on the first parenthesis in, say, NULL. This is an experiment; the risk is that there might be a substantial number of system headers which #define symbols to expressions which inherently cause warnings. My theory is that that's rare enough that it can be worked around case-by-case, and that producing useful warnings around NULL is worth it. But I'm willing to accept that I might be empirically wrong. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95870 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f8fd82ba49827db0f6a6ba00c55a7b56b12a19fa |
10-Feb-2010 |
Shih-wei Liao <sliao@google.com> |
Check in LLVM r95781.
uiltins.cpp
MakeLists.txt
onvertUTF.c
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
akefile
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
ersion.cpp
|
21f7bcaa607ffc73866f7b0c2141f449c2943bbf |
10-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Switch to using -fsjlj-exceptions instead of hard-coding it. Notably, this fixes calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling, for Darwin ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95787 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b2987d159a88ab0ee2e40c884eb4d77b42ab89b6 |
10-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Switch to using -fsjlj-exceptions instead of hard-coding it. Notably, this fixes calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling, for Darwin ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95787 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
438d00a23413bb5e63afa12a975fd2f2e6216293 |
05-Feb-2010 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
First stage of adding AltiVec support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95335 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
82287d19ded35248c4ce6a425ce74116a13ce44e |
05-Feb-2010 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
First stage of adding AltiVec support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95335 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
50349fac9368c25c7ac0ecd28009cb11051129e2 |
01-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
Don't explicitly force utf strings into the __TEXT,__ustring by setting the section of the generated global. This is an optimization done by the code generator, and the code being removed didn't handle the case when the string contained an embedded nul (which the code generator does correctly handle). This is rdar://7589850 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95003 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b9f709665a6fe9da5c67d0431de2e63c55dd5322 |
01-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
Don't explicitly force utf strings into the __TEXT,__ustring by setting the section of the generated global. This is an optimization done by the code generator, and the code being removed didn't handle the case when the string contained an embedded nul (which the code generator does correctly handle). This is rdar://7589850 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95003 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eaa3c705462edb79fdaa407ed407abe8b13f51e9 |
30-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify FreeBSD version parsing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94919 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3bb6530019990dba3e0269a204a5511947db01b3 |
30-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify FreeBSD version parsing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94919 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4a8f819bdd8f3af76f47146ffdc53a169a96a09f |
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Yay for more StringRefs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94917 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
83c021c6d33aa173cf1a6e3bc61006dabb042703 |
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Yay for more StringRefs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94917 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
41f80b5a55bdd4d008bd293b77efc8224182ed35 |
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
StringRef-ize the TargetInfo::ConstraintInfo constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94916 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f959fb5fb82ae2cbdf8635d734613a01818fb7bf |
30-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
StringRef-ize the TargetInfo::ConstraintInfo constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94916 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dbcf41af786a952a096e4ace0ecbf3ed5f04091b |
30-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
We don't need to place 0 in the URL string now that we return a StringRef. - URL can go into read only memory now. - Compilers will fold away all the strstr calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94887 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
e242d5f5fae8b16cb2d54b9dbb60855d4c67e67d |
30-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
We don't need to place 0 in the URL string now that we return a StringRef. - URL can go into read only memory now. - Compilers will fold away all the strstr calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94887 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
2a6630a33afb93960d28e6e9672f16c40278d39c |
30-Jan-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Fix alignment for msp430 integer types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94879 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
09f52a696e97d5efc933ed413ddb01d8c537417c |
30-Jan-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Fix alignment for msp430 integer types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94879 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ca5a30b4e4cf7676dee95764d774ec9700f42825 |
28-Jan-2010 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce serialization and deserialization of diagnostic information so that CIndex can report diagnostics through the normal mechanisms even when executing Clang in a separate process. This applies both when performing code completion and when using ASTs as an intermediary for clang_createTranslationUnitFromSourceFile(). The serialized format is not perfect at the moment, because it does not encapsulate macro-instantiation information. Instead, it maps all source locations back to the instantiation location. However, it does maintain source-range and fix-it information. To get perfect fidelity from the serialized format would require serializing a large chunk of the source manager; at present, it isn't clear if this code will live long enough for that to matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94740 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d93256e55673a17d18543397ec462416acb13792 |
28-Jan-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce serialization and deserialization of diagnostic information so that CIndex can report diagnostics through the normal mechanisms even when executing Clang in a separate process. This applies both when performing code completion and when using ASTs as an intermediary for clang_createTranslationUnitFromSourceFile(). The serialized format is not perfect at the moment, because it does not encapsulate macro-instantiation information. Instead, it maps all source locations back to the instantiation location. However, it does maintain source-range and fix-it information. To get perfect fidelity from the serialized format would require serializing a large chunk of the source manager; at present, it isn't clear if this code will live long enough for that to matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94740 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
da94a7787ee1953267e152a44a320c773b9df9a6 |
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM/APCS: Fix alignment of long double. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d410fa259e485b751258e07e750cf45cad01e7ea |
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
ARM/APCS: Fix alignment of long double. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e5e222fd8be7f3af7b18b0aeb8e76895b6d01c24 |
27-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Add support for 3dnow and 3dnowa, and define the target macros accordingly. (This is needed in order to build Qt). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94658 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9b0fb629fd12bc772a32fa2cb693b06fe5863316 |
27-Jan-2010 |
Anders Carlsson <andersca@mac.com> |
Add support for 3dnow and 3dnowa, and define the target macros accordingly. (This is needed in order to build Qt). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94658 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eab96a269b9c8192426790b9fd0af0d03ea2b6b4 |
26-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Stuff iPhoneOS into environment portion of the (llvm/clang) triple instead of keying off architecture. Also, fix version define to properly include the revision/micro component of the version number. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94487 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
21ae3196c9677a79523d294f9a62a4788ba40694 |
26-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Stuff iPhoneOS into environment portion of the (llvm/clang) triple instead of keying off architecture. Also, fix version define to properly include the revision/micro component of the version number. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94487 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f4b34a030729fff07d8a6501bfabbbd097c15045 |
24-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
-fno-rtti is now the default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94379 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
0bb46d285cb2bb0f582d0935f58f57a9be8bf2cd |
24-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
-fno-rtti is now the default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94379 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
7e85de74e7913777cb5fd05b6cf48c8f9bf2cb13 |
23-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename getClangFullVendorVersion() to getClangFullVersion(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94273 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
a18f1b88a7ef3d2c944bb1d3b6586a2860ce2baa |
23-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename getClangFullVendorVersion() to getClangFullVersion(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94273 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
b9aa98e712bdeb8c9b02ce49cd70d4b1312b51c3 |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Add 'clang_getClangVersion()' function to CIndex. This exposes the full Clang version string through the CIndex API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94242 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
04bb716aea8fd2372ac10b0c640cabc5e5caa615 |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Add 'clang_getClangVersion()' function to CIndex. This exposes the full Clang version string through the CIndex API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94242 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
aeeeb1c615f2310a76519e54a267b938c8d0ea0a |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Move version string generation (e.g., "clang 1.1 ...") to libBasic/Version.cpp, getClangFullVendorVersion(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94235 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
3687a5d83f5deb4b70b0c8e522c455d546f40101 |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Move version string generation (e.g., "clang 1.1 ...") to libBasic/Version.cpp, getClangFullVendorVersion(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94235 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ersion.cpp
|
fe942e746bf1b4448c7aec9c8a611d5ecd31db4d |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
(1) Rename getClangSubversionRevision() to getClangRevision(), and have it return a StringRef instead of an integer (to be more VCS agnostic). (2) Add getClangFullRepositoryVersion(), which contains an amalgamation of the repository name and the revision. (3) Change PCH to only emit the string returned by getClangFullRepositoryVersion() instead of also emitting the value of getClangSubversionRevision() (which has been removed). This is functionally equivalent. More cleanup to version string generation pending... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94231 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
f7a96a39958b3f919f26764777eec948b43d74bc |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
(1) Rename getClangSubversionRevision() to getClangRevision(), and have it return a StringRef instead of an integer (to be more VCS agnostic). (2) Add getClangFullRepositoryVersion(), which contains an amalgamation of the repository name and the revision. (3) Change PCH to only emit the string returned by getClangFullRepositoryVersion() instead of also emitting the value of getClangSubversionRevision() (which has been removed). This is functionally equivalent. More cleanup to version string generation pending... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94231 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
ec04e5806acd9ea1fd9daea82595938db0813a2f |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename getClangSubversionPath() -> getClangRepositoryPath() and have it return a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94213 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
517e676b9e1524e39beeb47718822f2647801d1a |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename getClangSubversionPath() -> getClangRepositoryPath() and have it return a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94213 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
986874893059a44cefbad83d9940ec55d3abfe51 |
21-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Update to use llvm/utils/GetSourceVersion to detect version number, instead of assuming SVN. This should be fixed to not necessarily be an integer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94081 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
38474aa780b095259b21001d589fb9875de2619d |
21-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Update to use llvm/utils/GetSourceVersion to detect version number, instead of assuming SVN. This should be fixed to not necessarily be an integer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94081 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
a088d5bd3141d05e8a9c4517c0d6f0cc1a0a3692 |
20-Jan-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Move the MacroBuilder utilitiy to its own header. Update references. Comments and/or improvements to the documentation are welcome. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93982 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
103b71c37a3c3a3da7128c1d0232a89b1e8d0d90 |
20-Jan-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Move the MacroBuilder utilitiy to its own header. Update references. Comments and/or improvements to the documentation are welcome. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93982 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9f20f15a1a2717bfae6b65ed16aff8015bce1941 |
20-Jan-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Actually remove the include that r93974 made unnecessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93975 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b3ee1df5a4d0db50f862a123bc7b404db2c22ab8 |
20-Jan-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Actually remove the include that r93974 made unnecessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93975 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4a2249c4cdb53843cc7879a477a17f1c55d26970 |
14-Jan-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
long long is 64 bits on msp430 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93451 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
26d18c1e1888e1b612addae6524c7a476a394a2a |
14-Jan-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
long long is 64 bits on msp430 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93451 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
90e699e5b4a012bb158ef710cbca5a7c7455d60e |
14-Jan-2010 |
John McCall <rjmccall@apple.com> |
Pre-emptive bugfixes in the diagnostics code: allow arbitrary punctuation 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
iagnostic.cpp
|
909c182f6a0e6169475eef6a71add14555b6162c |
14-Jan-2010 |
John McCall <rjmccall@apple.com> |
Pre-emptive bugfixes in the diagnostics code: allow arbitrary punctuation 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
iagnostic.cpp
|
933ef9aaf8e861f90cb46763a74a2c07e015bd15 |
14-Jan-2010 |
John McCall <rjmccall@apple.com> |
Add the %ordinal format modifier for turning '1' into '1st'. Hard-coded for 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
iagnostic.cpp
|
3be16b7d9d0ab075461ed3498b4c01b30b517c0e |
14-Jan-2010 |
John McCall <rjmccall@apple.com> |
Add the %ordinal format modifier for turning '1' into '1st'. Hard-coded for 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
iagnostic.cpp
|
e3258ff3df5a57e7f689e45cafda86cbd92e813e |
14-Jan-2010 |
John McCall <rjmccall@apple.com> |
Perform format-expansion on %select results. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93377 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9f28614bf1a8387000d8df57a713fcf69e198145 |
14-Jan-2010 |
John McCall <rjmccall@apple.com> |
Perform format-expansion on %select results. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93377 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
bd51dca82ccb6b91a6e3bdf691a46e641d6a5e85 |
13-Jan-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Predefine __weak attribute when doing objective-c rewriting for any target. (refixes radar 7530235). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93331 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7d957472ef9a09048c03d8a11028536f908c18b9 |
13-Jan-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Predefine __weak attribute when doing objective-c rewriting for any target. (refixes radar 7530235). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93331 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
83d4a601f0df94d704277b38d4ec120a4dd120c7 |
12-Jan-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Define __weak attribute for objective-c pointers in 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
argets.cpp
|
453c1349a5dfb581d960df3e1bcd266d6ba68277 |
12-Jan-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Define __weak attribute for objective-c pointers in 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
argets.cpp
|
f8a85780f66daface2ab31f356ccc565df4d964c |
09-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Hopefully unbreak build with g++ >= 4.3. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93060 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4872508294f41a4cb7150ffa9b20863bb00eef59 |
09-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Hopefully unbreak build with g++ >= 4.3. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93060 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9ffb1043390ed6ce9772df75ccf2362285d1672c |
09-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use MacroBuilder for TargetDefines instead of std::vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93058 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a99927774d07af9c6f0e1945531eadc910592945 |
09-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use MacroBuilder for TargetDefines instead of std::vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93058 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1eac081def1152b43873db3c3d6e5127787c5d14 |
09-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
improve support for dragonfly, patch by Sascha Wildner! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93044 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7a7ca281bcf50b34de1ce067d3c55879b81722ae |
09-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
improve support for dragonfly, patch by Sascha Wildner! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93044 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ad1010d663754058b1fa43a0ebe47d27e195d661 |
23-Dec-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
move a few more symbols to .rodata/.data.rel.ro git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92012 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2550d70aabb5f603e8f74cc5fb6a69a7af5b51f3 |
23-Dec-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
move a few more symbols to .rodata/.data.rel.ro git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92012 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
93e4192cb38df5789b0a531c916d6a5cd5d09ca9 |
23-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
implement -W[no-]fatal-errors, patch by Christian Adåker! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91938 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e663c720063fc9ff9f75bcbe38cd070c73c78b0e |
23-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
implement -W[no-]fatal-errors, patch by Christian Adåker! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91938 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ef9576f201b745e9866c52f894e0ff78e2d65f55 |
22-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Remove a FIXME, it's not actually more complicated than that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91924 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5affb539acc91ecb47216ae817d17accbd80d6a2 |
22-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Remove a FIXME, it's not actually more complicated than that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91924 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
96be2a493357b8172c880889a22d28dfdd0d1c78 |
22-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Honor -mfpu= and set __VFP_FP__ and __ARM_NEON__ "correctly". - 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
argets.cpp
|
a91320b8af7143f7af4c0665ffa62a3b244c0bd9 |
22-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Honor -mfpu= and set __VFP_FP__ and __ARM_NEON__ "correctly". - 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
argets.cpp
|
48075d80ceef950fedeb7c69bae4e358fad4c231 |
19-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Use front-end specific target features "soft-float" and "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
argets.cpp
|
97f52ac45369f6925b548404e61d511034c874ec |
19-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Use front-end specific target features "soft-float" and "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
argets.cpp
|
4f7cd963882f72fd85bf5add260fc6427792d647 |
19-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Targets: Allow CreateTargetInfo to mutate the target features. - 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
argets.cpp
|
b93292ab7f2b3d43a9e0ad6421f572d1f5a323b4 |
19-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Targets: Allow CreateTargetInfo to mutate the target features. - 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
argets.cpp
|
186e7d34e95da4efc1152c3e22bb2ec515e0a2d1 |
19-Dec-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add f80 entry for windows targets git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91746 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b381441bfb88ddd4a439f8305faaf6941321e5a4 |
19-Dec-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add f80 entry for windows targets git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91746 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
314713fd1dab8622d2eabc8b4ab01cd7bcbcd44a |
19-Dec-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use proper alignment for i16/i32 on msp430. This fixes PR5815. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91739 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5d7c2511a4d289bcbee6081a1804489234be0bfb |
19-Dec-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use proper alignment for i16/i32 on msp430. This fixes PR5815. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91739 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0a542ca3e2f4a85363612761a7d4f5fc38d9a879 |
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Define __thumb2__ for V6T2 targets and only define __USING_SJLJ_EXCEPTIONS__ on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91705 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0791aa52b6af724f4844bec86312a4e61dd8379c |
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Define __thumb2__ for V6T2 targets and only define __USING_SJLJ_EXCEPTIONS__ on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91705 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
33b4075302ac1cfe46a55330bf915a131346ccd8 |
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Fix predefines (__ARM_ARCH_..., __REGISTER_PREFIX). - 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
argets.cpp
|
eac7c53f16bc12bcd9baac756b6f9bb77b74b0ad |
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Fix predefines (__ARM_ARCH_..., __REGISTER_PREFIX). - 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
argets.cpp
|
4c3bd3f9f8f1937c1faf2225d14a802f7ea017f0 |
18-Dec-2009 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Tweaks for PS3 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ec387afb60cbc70f0cd00949fe55866729934fb7 |
18-Dec-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Tweaks for PS3 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91685 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b35fc38c2db5a81a81d56ef4bf0f8f9a71ad3147 |
18-Dec-2009 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Removing trailing directory separator, to make stat work git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91684 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
9a6ac540bab63380a4a78d8fad87f23c50878685 |
18-Dec-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Removing trailing directory separator, to make stat work git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91684 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
3b0f89abcd963f1637a6982befef474d7c5303fc |
16-Dec-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
fix PR5689: add support for 'o' and 'V' asm input operands git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91540 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
aa8e36108ff523e3a8b8a28fa9d95a9f1dcf0732 |
16-Dec-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
fix PR5689: add support for 'o' and 'V' asm input operands git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91540 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
608af42a97f5ed737e3cd25485a779f8af1577cb |
11-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
FileManager: Do not cache failed stats, it is easy to construct common 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
ileManager.cpp
|
475ddb4547ce35706ce1ff54b14bdcfdc51954c2 |
11-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
FileManager: Do not cache failed stats, it is easy to construct common 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
ileManager.cpp
|
59fecd133383ecf64d027ed9a8ed1fc9c65b7460 |
06-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add a pretty horrible hack to prevent clang from crashing with inconsistent PCH 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
ourceManager.cpp
|
21a8bed504a95df019771ab1a3dc9ecccfd9cfaa |
06-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add a pretty horrible hack to prevent clang from crashing with inconsistent PCH 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
ourceManager.cpp
|
486e9845f0f2f6b73f45e5015a202201ac2fd489 |
05-Dec-2009 |
Steve Naroff <snaroff@apple.com> |
Remove 'LangOpts' from Diagnostic (added in 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
iagnostic.cpp
|
0304c6cb7fd3b2137213858b1e5ae85ef3f4f8e2 |
05-Dec-2009 |
Steve Naroff <snaroff@apple.com> |
Remove 'LangOpts' from Diagnostic (added in 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
iagnostic.cpp
|
ae427a94f20d49c5e8a73b6458ed06b422813ab8 |
05-Dec-2009 |
Steve Naroff <snaroff@apple.com> |
Integrate the following from the 'objective-rewrite' branch: 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
iagnostic.cpp
|
e0c4d895ffe4320aa4e29485711ad7d154f2cc2b |
05-Dec-2009 |
Steve Naroff <snaroff@apple.com> |
Integrate the following from the 'objective-rewrite' branch: 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
iagnostic.cpp
|
0f45500a267ab15aa31bcfa4ac779d8300fb89ea |
03-Dec-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Minor cleanup to the code-completion-point logic suggested by Chris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90459 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
109ae73ec71a1d27358510ce049b59637b4a6b40 |
03-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Minor cleanup to the code-completion-point logic suggested by Chris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90459 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bd4cbba67a2cb7047c6f82e9b7a1e6f96748904e |
02-Dec-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Extend -remap-file=from;to to permit mapping from a non-existent 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
ileManager.cpp
|
057e567f1b375190779e5341f42861896cdee442 |
02-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Extend -remap-file=from;to to permit mapping from a non-existent 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
ileManager.cpp
|
d01fc222cedc08537c9d74e86ac69b4fb684f1a8 |
02-Dec-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Extend the source manager with the ability to override the contents of 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
ourceManager.cpp
|
2968442603b029949246467253eeac8139a5b6d8 |
02-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Extend the source manager with the ability to override the contents of 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
ourceManager.cpp
|
a211fccd7f4843258173c74b2bc80b8991d21b94 |
02-Dec-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Eliminate the unnecessary FirstFID cache variable from the source manager's ContentCache git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90294 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
4a160e16eb97bee03e36962d11aedc6452710bc5 |
02-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the unnecessary FirstFID cache variable from the source manager's ContentCache git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90294 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
56b32ba0a97826b6eb1b066f0cd31ec698c4732d |
02-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
In SourceManager::isBeforeInTranslationUnit, if we are trying to compare two 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
ourceManager.cpp
|
fbcc7bed1a0661ecc91b62e0696b8310887713f6 |
02-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
In SourceManager::isBeforeInTranslationUnit, if we are trying to compare two 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
ourceManager.cpp
|
6fc358ea6ce5c8f786a939f70c2d8ca015be512a |
01-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
pass the reason for failure up from MemoryBuffer and report it 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
ourceManager.cpp
|
39d9841ed4c0568d4b44dfbc12ac04491f60a374 |
01-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
pass the reason for failure up from MemoryBuffer and report it 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
ourceManager.cpp
|
a3172a36050a033d2e91117d8f2204c646b85dff |
01-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert Diagnostic::getCustomDiagID to take a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90244 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
32d4d80c26e8c4c1922cff4661e0b9f44a3aabfc |
01-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert Diagnostic::getCustomDiagID to take a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90244 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
50cee73129a38c5780dca6abb3ef6d3e288eb6e3 |
28-Nov-2009 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
This patch adds a PUNCTUATOR macro (specialization of TOK) in TokenKinds.def 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
okenKinds.cpp
|
59c55e724945daa060a5f1aaecbfd4de04770e93 |
28-Nov-2009 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
This patch adds a PUNCTUATOR macro (specialization of TOK) in TokenKinds.def 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
okenKinds.cpp
|
14a70a3beef619fd82fc190754023656554f452b |
21-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add SigAtomicType to TargetInfo, Needed for MSP and PIC Targets, Credit to Ken Dyck. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89520 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
9cf910efc4fb7001a6d276ed2eabf01f0f0efaaa |
21-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add SigAtomicType to TargetInfo, Needed for MSP and PIC Targets, Credit to Ken Dyck. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89520 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
ed7bdbc4e365e9f280fddafc2a6a02c92c6eaae7 |
19-Nov-2009 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Added preliminary support step for PS3 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89362 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3f6918a8cc933de5f31139603af4c926e338ff6c |
19-Nov-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Added preliminary support step for PS3 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89362 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c85b911b3e178a14c63e3d5e2ed7e2492f0a3132 |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Eliminate TargetInfo::getDefaultLangOptions, this kind of logic is better done in the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89073 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2fc430d5483545b47a5a22f45338ff54f5362e34 |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Eliminate TargetInfo::getDefaultLangOptions, this kind of logic is better done in the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89073 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e6c9f54d16b0af0c3962d456dbc37699d0ccde08 |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move -fnext-runtime defaulting to driver (and change clang-cc default to -fnext-runtime), instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89058 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c5a97ec19408c3dca4b6a6385f11d8c783b94d0b |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move -fnext-runtime defaulting to driver (and change clang-cc default to -fnext-runtime), instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89058 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2614ec30662bebbb1b9b7a4fa4c82eb5f5fc34b0 |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move -fms-extensions defaulting to driver, instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89057 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0be42c44f0199c5023b542d6a6d2e66eb594f27d |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move -fms-extensions defaulting to driver, instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89057 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8d1811b3c8c69167225f8a22614fdcde3a13d105 |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move char-is-signed defaulting to driver, instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89053 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1f95e6567faab67f4363d650f73121359c4bdbab |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move char-is-signed defaulting to driver, instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89053 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
097309f513177f708ddf986ffc8afe1becbfe56f |
15-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add MIPS support to Triple for Linux and the PSP. Credit to Bruno Cardoso Lopes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88850 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
84423a8c8450a1f3ce82730fb35d5ee4e7980701 |
15-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add MIPS support to Triple for Linux and the PSP. Credit to Bruno Cardoso Lopes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88850 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ca3e991c52d516df8069e9e64261cc5b821f3ecc |
15-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetOptions and use it when constructing targets. - 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
argets.cpp
|
d58c03f42ebb4e548c2b53fa25b1cfe02ebb9ac0 |
15-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetOptions and use it when constructing targets. - 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
argets.cpp
|
d6a7a0870c56e5652bac047d22c74e97235e44b5 |
14-Nov-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move DISABLE_INLINE to the front of the decl so MSVC can parse it. Patch by Amine Khaldi! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88797 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c997eb4ac1b332406b1f16d4eddce7988d68c56b |
14-Nov-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move DISABLE_INLINE to the front of the decl so MSVC can parse it. Patch by Amine Khaldi! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88797 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d01de3a57d667e9a241d5117caecfd91252fcdcd |
12-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
do not store wchar/char16/char32/intmax width/alignment info 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
argetInfo.cpp
argets.cpp
|
9184646509d015ea66e796113a8c68598681374b |
12-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
do not store wchar/char16/char32/intmax width/alignment info 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
argetInfo.cpp
argets.cpp
|
8dd8f2672d6fc45c99318ab81b6dbcab38c18166 |
11-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Simplifiy target feature handling by coalescing all the logic into InitializeCompileOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86826 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
29a790ba422cfeeea9546b6e76777d98fa73cd67 |
11-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Simplifiy target feature handling by coalescing all the logic into InitializeCompileOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86826 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2e17d91821b0454b4ad7146c729256a210951e7b |
07-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
teach the various targets what native integer types they have. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86395 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
1932e12d8bf435b9d449906bea7edcf183aa5d19 |
07-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
teach the various targets what native integer types they have. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86395 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
fb8b967819e9d8f49ac606ec73ac9ccfa6d8f177 |
06-Nov-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Strip off the /clang/tools/clang at the end of the Subversion URL, if it's there git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86195 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
1fbf1f0052d6758774e565039ba69780295eb8dd |
06-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Strip off the /clang/tools/clang at the end of the Subversion URL, if it's there git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86195 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
4176705b836ea3720fcec92428c688fb0a9fc9b1 |
05-Nov-2009 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Eliminate tabls git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86183 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
40d1bb6383c14d5f8249d0640e8088a91b694c66 |
05-Nov-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Eliminate tabls git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86183 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
cffa5b706a6ccbc5c2f96e6778d0e1b33b666144 |
05-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
clean up integer preprocessor type definitions, patch by Ken Dyck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86177 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
9099e7bcda3922cee0cffcdf21332ac4aa193cea |
05-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
clean up integer preprocessor type definitions, patch by Ken Dyck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86177 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
e65800a6496207b51379f92540789206b990781e |
05-Nov-2009 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Adding -fshort-wchar option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86167 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
a6fda124bf380479529d6a80b84b62cacd3cb707 |
05-Nov-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Adding -fshort-wchar option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86167 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
d1319d2d62b108c7c24c92e73d4d101b035d1037 |
04-Nov-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Implement support for parsing dependent template-ids that refer to overloaded operators, e.g., p->template operator+<T>() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85989 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
ca1bdd7c269a2390d43c040a60511edd017ee130 |
04-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement support for parsing dependent template-ids that refer to overloaded operators, e.g., p->template operator+<T>() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85989 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
6b767bf83cfdcd5c30c1cef42e0edf6f77ce6d8c |
03-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
pr5371 likely has nothing to do with this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85862 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
170b765785a00e8a66bf7f917dd5ec355d32d2d8 |
03-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
pr5371 likely has nothing to do with this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85862 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0bf990cfa97f627d9d7c2599cf49f872edd5b79b |
02-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add note to FIXME about PR5371. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85825 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3963e756e35d61e4a0c973f301a068c9bfd2f346 |
02-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add note to FIXME about PR5371. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85825 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3b822f1b2faac5db9cc6297485f82ac5fe417b0b |
25-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
rename getTypeSigned() -> isTypeSigned() per daniel's review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85076 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
961f0708fb66375acf47f9e9bc1aecfb3f992aea |
25-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
rename getTypeSigned() -> isTypeSigned() per daniel's review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85076 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
07cfc4a0d855feceb52f960664952484154125d0 |
24-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix cmake failure trying to get SVN info for non-SVN trees. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85015 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
5c14dcebdece3b2bb70ba0afa01f093676870b14 |
24-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix cmake failure trying to get SVN info for non-SVN trees. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85015 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
09e95f0f2829673cfb8a02d4533f004a5cb6d6c0 |
24-Oct-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Add a preprocessor define for adding a "near" section attribute for allowing objects to be placed at shared memory. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85007 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7de7009a00ba502e49978fb9b8a7dcd5c2743151 |
24-Oct-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Add a preprocessor define for adding a "near" section attribute for allowing objects to be placed at shared memory. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85007 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
274ce7a0d9b9e7742e88b86c5a3627491e440e36 |
23-Oct-2009 |
John Thompson <john.thompson.jtsoftware@gmail.com> |
Fixed undefined behavior in pushMappings when the stack has to resize. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84924 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ca2c3e2cfc630db614298e8d7f2aaca4507e01e1 |
23-Oct-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Fixed undefined behavior in pushMappings when the stack has to resize. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84924 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
40a75fef39da6855688629ed68045d3690b29c75 |
21-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
add helpful methods to TargetInfo for querying builtin integer type properties, patch by Ken Dyck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84746 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
b304f77cb621a47221f2aa2d35acdb5c730421ff |
21-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
add helpful methods to TargetInfo for querying builtin integer type properties, patch by Ken Dyck! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84746 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
72f4aae0cff32005612e3d53ad20f9a2db7971de |
21-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
hookize wint_t's definition, patch by Edward O'Callaghan (from PR5233). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84740 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
e64ef80363c84f4f431e26b61db554c89beeddb6 |
21-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
hookize wint_t's definition, patch by Edward O'Callaghan (from PR5233). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84740 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
f170dc1c5113bb1749cb77f15609e961688e8c6d |
20-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
teach FormatDiagnostic to aggregate previously formatted arguments and pass them down into the ArgToStringFn implementation. This allows redundancy across operands to a diagnostic to be eliminated. This isn't used yet, so no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84602 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b54d8af9a66cc20a6a9a9219c7eaea8df7ee7fd4 |
20-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
teach FormatDiagnostic to aggregate previously formatted arguments and pass them down into the ArgToStringFn implementation. This allows redundancy across operands to a diagnostic to be eliminated. This isn't used yet, so no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84602 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
1ed2bb804102b54d62426d8aa4f60bcd6f2a6cb0 |
18-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
PR5218: Replace IdentifierInfo::getName with StringRef version, now that clients are updated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84447 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
dentifierTable.cpp
|
01eb9b9683535d8a65c704ad2c545903409e2d36 |
18-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
PR5218: Replace IdentifierInfo::getName with StringRef version, now that clients are updated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84447 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
dentifierTable.cpp
|
0a7ef9afd7cf9bda3f76cff3092d09d3474b9686 |
18-Oct-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
The AuroraUX toolchain has conflicting wchar_t between the system stdlib.h header and the clang stddef.h header where clang was defining as int where we use long. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84416 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
991f9a74e7f60bff080673dc9107e330e2167310 |
18-Oct-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
The AuroraUX toolchain has conflicting wchar_t between the system stdlib.h header and the clang stddef.h header where clang was defining as int where we use long. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84416 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5b224aefafc55b7253a1adf79f9a8db438a33ce3 |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Avoid std::string thrashing in MultiKeywordSelector::getName(), and simplify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84343 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
76b61ccc603fad1c631948bf1e49f31343de76e9 |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Avoid std::string thrashing in MultiKeywordSelector::getName(), and simplify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84343 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
282ce8b016e88ddc41dd26d124ccc77b7bf5e35e |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Use raw_ostream for formatting integers, and use IdentifierInfo::getNameStr instead of getName. - -2 FIXMEs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84337 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
23e47c6b6e8ccdd8daa378ab2a879644425c72d8 |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Use raw_ostream for formatting integers, and use IdentifierInfo::getNameStr instead of getName. - -2 FIXMEs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84337 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f0281ef6cb826acaf5090ea65d69164fe28e9352 |
16-Oct-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Add support for a chain of stat caches in the FileManager, rather than 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84263 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
52e7108f51a4a9f4d6e84f33fb594d06e1d79560 |
16-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
Add support for a chain of stat caches in the FileManager, rather than 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84263 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
e63051bde67283ae5571e67443a4267d51309c33 |
16-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
increase helpfulness of assert message. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84240 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5a3ce9b10c164d9bf75a70d429e55d4e171a9a9e |
16-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
increase helpfulness of assert message. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84240 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
174219b75299de4f9529b12083ec17702020e99d |
16-Oct-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Disallow arbitrary custom inline asm constraints for msp430. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84219 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
03265b6046225e5d4e04071acb91294cfe215931 |
16-Oct-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Disallow arbitrary custom inline asm constraints for msp430. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84219 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bba981c237207bf87b57575837748a53c64f10d9 |
14-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
fix some cfstring related issues: 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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84077 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
278b9f06933c385ffbccc15f8491787470cb4a1b |
14-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
fix some cfstring related issues: 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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84077 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f1aa12fb490a02785a57140f0af5163be5f24619 |
13-Oct-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Unify our diagnostic printing for errors of the form, "we didn't like 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84028 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3f09327b26033d0a9676d52d80cf92c48f581aff |
13-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
Unify our diagnostic printing for errors of the form, "we didn't like 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84028 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
79c224bf5891b7973af422943c14b7700fb7116e |
13-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
fix PR4938 by recognizing % as a modifier on outputs, previously we only recognized it on inputs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83939 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
4053983963cb94a6129da47bca8cce637c8b7bff |
13-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
fix PR4938 by recognizing % as a modifier on outputs, previously we only recognized it on inputs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83939 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
4da7a1673aac9afa26f409fd9834a229c9436afc |
09-Oct-2009 |
Mike Stump <mrs@apple.com> |
"Someone pointed out that in my previous Targets.cpp patch I didn't handle the long size difference for one of the Windows targets." Patch by John Thompson. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83592 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a55cce8b3e579e62a503976235de5d35fcf6a893 |
09-Oct-2009 |
Mike Stump <mrs@apple.com> |
"Someone pointed out that in my previous Targets.cpp patch I didn't handle the long size difference for one of the Windows targets." Patch by John Thompson. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83592 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ec0240c63cbf1e94db49fc2dd03c33988925ba53 |
09-Oct-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Installation of Clang libraries and headers, from Axel Naumann! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83582 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
14ea5696417a8e8d244a07091284cdeba57c6d4d |
09-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
Installation of Clang libraries and headers, from Axel Naumann! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83582 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
45e728a16a4ed8662ae0b051940f4a984ce520a6 |
05-Oct-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Provide a common set of routines in Version.h that return Subversion branch/revision information. Use that information in the driver, rather than one-off branch/revision computation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83321 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile
ersion.cpp
|
b8d1191fdeb4eec9bc5cf9bf4b027add0fb467b3 |
05-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
Provide a common set of routines in Version.h that return Subversion branch/revision information. Use that information in the driver, rather than one-off branch/revision computation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83321 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile
ersion.cpp
|
693c150ce62f552b0586fdc4d0accdab2cc00c92 |
05-Oct-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Pre-commit commit to get URL keyword expansion for Clang version information git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83319 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
60b5d8ed5993a2551c60e1b2400c3414a7070687 |
05-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
Pre-commit commit to get URL keyword expansion for Clang version information git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83319 91177308-0d34-0410-b5e6-96231b3b80d8
ersion.cpp
|
2c16e4ed32512b381e2afb3a9df95a208107374a |
27-Sep-2009 |
Cédric Venet <cedric.venet@laposte.net> |
Handle Eli remark on mingw __declspec macro definition git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82894 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9a7b0855a6b3ecb5fdaa363722cba3e827752cb9 |
27-Sep-2009 |
Cedric Venet <cedric.venet@laposte.net> |
Handle Eli remark on mingw __declspec macro definition git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82894 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8d8e9d6bde271729b7df6f89bbc08742cd7cde2a |
23-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Factor Windows target into VS, MinGW and Cygwin variants. - Patch by John Thompson! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82621 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9fe4a5d8a60016952e61db03e358f69557ca923c |
23-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Factor Windows target into VS, MinGW and Cygwin variants. - Patch by John Thompson! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82621 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
aa339184940ceb3aa0cac0b5cb45262796aa3341 |
23-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
implement support for __builtin_eh_return_data_regno on x86-32 and x86-64. This implements PR5034 and rdar://6836445. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82614 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
21fb98ee003e992b0c4e204d98a19e0ef544cae3 |
23-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
implement support for __builtin_eh_return_data_regno on x86-32 and x86-64. This implements PR5034 and rdar://6836445. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82614 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
54f62dc6b91b7b0c7e98d34090e8464bc23c00d8 |
22-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Reconcile Clang/ARM target data string with llvm-gcc (module eabi weirdness). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82578 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dff10dcee09ed48a0d74676299726b3533ea9b41 |
22-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Reconcile Clang/ARM target data string with llvm-gcc (module eabi weirdness). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82578 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4d8a77769e8da39c0cd25d67941cb153fb4a9782 |
22-Sep-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Replace the -code-completion-dump option with -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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82571 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b657f115c3b4e262e72906a28cbcf3eaccd9460c |
22-Sep-2009 |
Douglas Gregor <dgregor@apple.com> |
Replace the -code-completion-dump option with -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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82571 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7c7bfebb4c1a266a0bcd1b66f816995842e709e1 |
18-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
don't stick an uninitialized 'stat' buf into the stat cache, fill it with zeros. This avoids a GCC warning (PR5000) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82194 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
f1affe6129442b230d3d09b1938e07a7b341a102 |
18-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
don't stick an uninitialized 'stat' buf into the stat cache, fill it with zeros. This avoids a GCC warning (PR5000) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82194 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
70aa572f9b5ebb13221f2062f40459a58bc59497 |
17-Sep-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Initial implementation of a code-completion interface in Clang. In 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". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82166 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
81b747b7fcc91c2fba9a3183d8fac80adbfc1d3e |
17-Sep-2009 |
Douglas Gregor <dgregor@apple.com> |
Initial implementation of a code-completion interface in Clang. In 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". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82166 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
369c21c03bfc33b75c55b964632bb08ee0eae74e |
17-Sep-2009 |
Mike Stump <mrs@apple.com> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82164 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
10880397d205009e06e278b4c25d17f28ddf2d4e |
17-Sep-2009 |
Mike Stump <mrs@apple.com> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82164 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f015656de550b6b935178f640486e9cccbf40aa9 |
17-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Incremental improvement to preprocessor defines. - Based on patch by Shantonu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82147 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e1f63b38a0a668a2756c77b92f440c03977d7ca1 |
17-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Incremental improvement to preprocessor defines. - Based on patch by Shantonu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82147 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
40b774e7149e39cbf2a1556a0a4e979fe1b7eb84 |
17-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add ARM register names and aliases. - Patch by Shantonu Sen! <rdar://problem/6922650> clang doesn't know about ARM registers for inline asm clobber lists git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82132 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c1f2cddb8cccbcc53ab4311672a53b18eb6dc55f |
17-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add ARM register names and aliases. - Patch by Shantonu Sen! <rdar://problem/6922650> clang doesn't know about ARM registers for inline asm clobber lists git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82132 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
14d2bb718cfcb6dbb5a281957807fa7af7159b69 |
16-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
fix some ppc register name issues, patch by Richard Pennington! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82009 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e94e0d413ff375d9b02a38124377cb333d5059a9 |
16-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
fix some ppc register name issues, patch by Richard Pennington! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82009 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0d83d5116ec471aa80c4aaa4aab3e5d91b9265f2 |
14-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetInfo::getABI(), and base ARM APCS vs AAPCS choice on that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81735 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
018ba5ab0671d9b6eefecaffc118c869bea151a1 |
14-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetInfo::getABI(), and base ARM APCS vs AAPCS choice on that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81735 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b95316353240ddd7552b818f44ff320e4133f77d |
14-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM target tweaks. - Change TargetData string to match llvm-gcc. - Some -target-abi support for 'apcs-gnu', most importantly the alignment of double and long long changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81732 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a2a416150455d049e8663227fbe7c30c2a948618 |
14-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM target tweaks. - Change TargetData string to match llvm-gcc. - Some -target-abi support for 'apcs-gnu', most importantly the alignment of double and long long changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81732 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3f361b5c731e14d7fa08efd76a93f2f912e66e73 |
11-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Swizzle the target triple based on -mthumb, and update clang-cc to recognize thumb-foo-bar as an ARM target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81497 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f4aa4f61de7d364364dc94bbf83ff71448a11327 |
11-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Swizzle the target triple based on -mthumb, and update clang-cc to recognize thumb-foo-bar as an ARM target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81497 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
25cf760b54d3b88633827501013bc51a29b28aba |
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
onvertUTF.c
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
onvertUTF.c
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
|
6ba693c29fa2d99ba4b6a8f24f785fadfa825c25 |
05-Sep-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace some instances of std::string with StringRefs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81079 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
458fb10ef5ba2d7b375c6c64095c1458af0a5be3 |
05-Sep-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace some instances of std::string with StringRefs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81079 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
62a7cbc34a427d95d86fb35c69ac073c252465a9 |
03-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add basic support for -pthread. - Patch by David Chisnall, with PCH and Darwin support mixed in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80883 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5345c391c65d1780a0d7b0102b7f735cc3f82732 |
03-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add basic support for -pthread. - Patch by David Chisnall, with PCH and Darwin support mixed in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80883 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3e208d820f141072cfbb82bee660850654932e66 |
26-Aug-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Improve diagnostics and recovery when the nested-name-specifier of a 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80056 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
dacd434c49658286c380c7b4c357d76d53cb4aa1 |
26-Aug-2009 |
Douglas Gregor <dgregor@apple.com> |
Improve diagnostics and recovery when the nested-name-specifier of a 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80056 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2e967de5e6f7a9ab2e382bc3b3bed638d12bdd4b |
24-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove TargetInfo::getTargetPrefix(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79907 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
55cc2ed722e041228670d26d548e5590e355aced |
24-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove TargetInfo::getTargetPrefix(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79907 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
608b388b563b5ccf7eeac5da78b539ea8f7ae4cd |
24-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch TargetInfo to store an llvm::Triple. - Primarily to discourage clients form making decisions based on the string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79901 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1752ee4849f4c37f5e03193e658be92650b0e65a |
24-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch TargetInfo to store an llvm::Triple. - Primarily to discourage clients form making decisions based on the string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79901 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
31bc304905ece1072f5029eb821e309aecaf88f4 |
24-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
API changes to match llvm ToT. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79868 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
d57a7ef9252964bc6c8471451d7bd395b0520cb8 |
24-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
API changes to match llvm ToT. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79868 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
2ec1729793a77b86a31abd65da4b93cacbdf6b34 |
23-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace cerr with errs(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79854 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
6cb7c1a43b0c8f739d1f54b7fdae5ede86033496 |
23-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace cerr with errs(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79854 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
ourceManager.cpp
|
50353f11e6421455826f76023b745df8284938c9 |
23-Aug-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Don't install Clang libraries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79824 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
7ebe97166a4d720a187ab08ba927027e0d32274c |
23-Aug-2009 |
Douglas Gregor <dgregor@apple.com> |
Don't install Clang libraries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79824 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
9e2b9e01aeaf38e474da3acce29f2f751b727ad7 |
20-Aug-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Issue an error if the user specifies parameters in a function marked as ISR. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79544 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
da3e03ec5d7161135bd90c0786421e8994bcc2f8 |
20-Aug-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Issue an error if the user specifies parameters in a function marked as ISR. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79544 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f0ff32f7c7e1523df96ab0c415e687ddf5e9b386 |
19-Aug-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add TCE target to clang; patch by Mikael Lepistö. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79462 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b63decfa6e1b165693f1fbfe52d5faec832968f7 |
19-Aug-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add TCE target to clang; patch by Mikael Lepistö. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79462 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0433a02f13f468188837dfe7e084acabb8c9d562 |
19-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch to SmallString::str from SmallString::c_str. - Several FIXMEs due to non-Twinification of IRBuilder. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79455 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7765934ad7e157b5fcf925792a38e01b1edbcf8a |
19-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch to SmallString::str from SmallString::c_str. - Several FIXMEs due to non-Twinification of IRBuilder. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79455 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8ba3de0bc0f150def1c892855f3beb5671cf6908 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert CreateTargetInfo to use a Triple instead of manul string munging. - Patch by Yonggang Luo (with some formatting tweaks by Eli and myself). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79320 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9d6fa61582b3a4c752ca745ae27b48afefce1ba3 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert CreateTargetInfo to use a Triple instead of manul string munging. - Patch by Yonggang Luo (with some formatting tweaks by Eli and myself). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79320 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6177437d712b72b9924e9c2782575c6c907e2a7d |
17-Aug-2009 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Support compilation for the blackfin back-end git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79271 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1eb434346f2e0dbc10d8fa72a9d01e4b0c2d7761 |
17-Aug-2009 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Support compilation for the blackfin back-end git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79271 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b42484294c23bdb2a706904ac06d3782795d506b |
12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
improve path handling, patch by Baptiste Lepilleur! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78824 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
46730b261c46765c51a9aa83c2571a2a8705482a |
12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
improve path handling, patch by Baptiste Lepilleur! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78824 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
f54f221a727289dc60865f2d6243ea16a671482b |
12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
use the new llvm::Triple parsing stuffola for handling darwin version #'s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78794 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4c28b1cefe77dfd04ddf74599895b2f9796998c8 |
12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
use the new llvm::Triple parsing stuffola for handling darwin version #'s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78794 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
43954311b4159a6f058ff19a5d66817afe0d025f |
10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix a couple of problems with section attributes: 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 :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78586 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
797c3c4f5dc4fda735e55c6b5d6270a54cf6d263 |
10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix a couple of problems with section attributes: 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 :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78586 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4e21ba4855b2fd685ac9843574482d1d5f0458f7 |
04-Aug-2009 |
Mike Stump <mrs@apple.com> |
Add armv7 support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78092 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
59e657236236351623ddea0b3c87b60d209d40ab |
04-Aug-2009 |
Mike Stump <mrs@apple.com> |
Add armv7 support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78092 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
57f236f1fb6b7f2c2330d6a39dcc98f57836f7c2 |
16-Jul-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Hook in s390x stuff into clang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76099 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
89e887fd73dd87c1118e13ebddf11aed9e25b763 |
16-Jul-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Hook in s390x stuff into clang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76099 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fa011bdce0fb4da854bbaee2e9038cad8470598b |
16-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
codegen string literals using private linkage now like llvm-gcc, eliminating some target hooks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75895 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
95b851e55c328af4b69da7bfc1124bf258c0ffe5 |
16-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
codegen string literals using private linkage now like llvm-gcc, eliminating some target hooks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75895 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2bcacb61cf94b71e5c87f29d517f8dc29fe3993e |
14-Jul-2009 |
Alisdair Meredith <public@alisdairm.net> |
Basic support for C++0x unicode types. Support for literals will follow in an incremental patch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75622 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
f5c209d23b20ada4a9b6235db50317239cbf6ae1 |
14-Jul-2009 |
Alisdair Meredith <public@alisdairm.net> |
Basic support for C++0x unicode types. Support for literals will follow in an incremental patch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75622 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
25fff084d798d6c3996849bb0cfa371c0b6232af |
13-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
add netbsd support, patch by Krister Kalfridsson! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75492 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b62bb2842f239e047b9b94174201f3abcfbeebb1 |
13-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
add netbsd support, patch by Krister Kalfridsson! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75492 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dab77f1143e8bb77b9107a81fa311af5355f87c5 |
12-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
add push/pop semantics for diagnostics. Patch by Louis Gerbarg! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75431 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
04ae2df026b275aae5dddfc0db5ca55ff4e62179 |
12-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
add push/pop semantics for diagnostics. Patch by Louis Gerbarg! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75431 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cd2cb6657db128eb17ea680d7c81ddef0a69742c |
08-Jul-2009 |
Duncan Sands <baldrick@free.fr> |
Correct FreeBSD target info, fixing PR4514. Patch by Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75003 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e90faf4f218880999637db1a5cd670eb63e5abc |
08-Jul-2009 |
Duncan Sands <baldrick@free.fr> |
Correct FreeBSD target info, fixing PR4514. Patch by Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75003 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d75fd0bbe45561335190b1b78b95663c9179fa42 |
07-Jul-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
pic16 preproc defs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74893 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7f579b19b6f219d6c96002ac81bc2e8bb65911d1 |
07-Jul-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
pic16 preproc defs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74893 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
96ada0288fcb79f90a854f6e6333164a04f75310 |
06-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
More tweaks to types for OpenBSD. Patch by Jonathan Gray. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74805 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6036ebe330ff97223d7d226de6eb3a74af5aeb32 |
06-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
More tweaks to types for OpenBSD. Patch by Jonathan Gray. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74805 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1c79f4b84a044d060345621559fda5c1f74007a6 |
05-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Per PR4506, fix the type of size_t on OpenBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74795 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
624c1467809b409dcfa596b176ef45943442296b |
05-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Per PR4506, fix the type of size_t on OpenBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74795 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3c79eeefa6374946455ccdba3f46b94394ef0c9c |
03-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add an intermediate typedef for __builtin_va_tag to make it a bit easier to deal with for AST pretty-printing/rewriting. Patch by Abramo Bagnara. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74752 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dc043166e3a688b14367b71ba69f741e4a0216b2 |
03-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add an intermediate typedef for __builtin_va_tag to make it a bit easier to deal with for AST pretty-printing/rewriting. Patch by Abramo Bagnara. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74752 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
937331fdd6b863ec5ed0725405fb5b1666d588a1 |
01-Jul-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Two fixes to make Clang build on Visual C++ (again), from Alisdair Meredith. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74606 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a3844922f685620002412df0a88d22393e5c1241 |
01-Jul-2009 |
Douglas Gregor <dgregor@apple.com> |
Two fixes to make Clang build on Visual C++ (again), from Alisdair Meredith. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74606 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
38e3180fb0d08290be62eb24c84a27e5ccdc5110 |
01-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix for PR4192: fix the definition of int64_t on x86_64 Linux. 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; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74583 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
3c7b6e46c5f9bdbe0676c52d80df98b68b02be99 |
01-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix for PR4192: fix the definition of int64_t on x86_64 Linux. 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; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74583 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
36565e5d6293d28804ad36c94bd5d878a13643b6 |
30-Jun-2009 |
Edwin Török <edwintorok@gmail.com> |
Reapply r74532, and inherit from OSTargetInfo instead of from Target. 'make test' passes now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74539 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5f6c19419184da428ad8982c1a5d706dbf4896ed |
30-Jun-2009 |
Torok Edwin <edwintorok@gmail.com> |
Reapply r74532, and inherit from OSTargetInfo instead of from Target. 'make test' passes now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74539 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2d98f9f72adc9d4d64e5b47b3afc81b45ccd6cd0 |
30-Jun-2009 |
Edwin Török <edwintorok@gmail.com> |
Revert 74532 till I figure out why it breaks a bunch of tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74536 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b0a5b2423c1fc8e2b1823c3c6c31bf3980e571ba |
30-Jun-2009 |
Torok Edwin <edwintorok@gmail.com> |
Revert 74532 till I figure out why it breaks a bunch of tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74536 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d1e86869e3e4532d02c7b4ab1197f23c9d234dd0 |
30-Jun-2009 |
Edwin Török <edwintorok@gmail.com> |
Use templates instead of creating a new class for each OS/Target combination. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74532 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
50dd810b22306d4c0460dac3545de73db6745d67 |
30-Jun-2009 |
Torok Edwin <edwintorok@gmail.com> |
Use templates instead of creating a new class for each OS/Target combination. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74532 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7099c789f054f1e7480f498d60aa94b0326c285f |
30-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
Key decisions about 'bool' vs '_Bool' to be based on a new flag in langoptions. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74493 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
e4f2142d00fa5fdb580c4e2413da91882d955381 |
30-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
Key decisions about 'bool' vs '_Bool' to be based on a new flag in langoptions. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74493 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
6d77d6ad00312bbc096fd478b297e41056df899a |
30-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Use true/false instead of 1/0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74479 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
811844d5eb35c7d14054f33f8676bcffb9584195 |
30-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Use true/false instead of 1/0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74479 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
36a025107925e1483598c5311792a77f220b6fe0 |
30-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Don't define __KPRINTF_ATTRIBUTE__ unconditionally on OpenBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74467 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
43a3643eaf6d411b43b01cbbf85a197ffdaba204 |
30-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Don't define __KPRINTF_ATTRIBUTE__ unconditionally on OpenBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74467 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
64c77a1c70299f698a657361a247f12a503782fb |
29-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
OpenBSD support. - Patch by Jonathan Gray! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74453 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f7b8eec37c8c8012fa525c71fb29a58c9f29beef |
29-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
OpenBSD support. - Patch by Jonathan Gray! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74453 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
39e99a4bd7d690178f494899078d0723522d5247 |
29-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Make the StackProtector bitfield use enums instead of obscure numbers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74414 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4ebe3e4c811a376c423a544f5e76ee2e96533324 |
29-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Make the StackProtector bitfield use enums instead of obscure numbers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74414 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e1d4f5d6840e99b8345dd755ec4a335ff4539fcf |
28-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Add stack protector support to clang. This generates the 'ssp' and 'sspreq' 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74405 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
45483f7a1b3e57b4603b141bee80596b2d4dd443 |
28-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Add stack protector support to clang. This generates the 'ssp' and 'sspreq' 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74405 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2a310fe1518af351c8f64a1dc828c3f21e881129 |
26-Jun-2009 |
Nate Begeman <natebegeman@mac.com> |
OpenCL 1.0 Support: support "bool, true, false" tokens when compiling for OpenCL git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74224 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
72b60e35600f5789056f73eca35713a1b83b6594 |
26-Jun-2009 |
Nate Begeman <natebegeman@mac.com> |
OpenCL 1.0 Support: support "bool, true, false" tokens when compiling for OpenCL git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74224 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
949a4cfea0c4ec7c1979111a2e6b3e8d77afaeb0 |
25-Jun-2009 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Fix column checking for SourceManager::getLocation(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74194 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
081445cb66b28a633f02b5fba06807ef79e29f67 |
25-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix column checking for SourceManager::getLocation(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74194 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a8a69e1837cdb6ccba7c8fed5ecc28cd9a1ef2e1 |
24-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
fix the type of wchar_t for windows, PR4417 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74083 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
85de9e75ecce165374faf20d7b4e843a1f63e720 |
24-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
fix the type of wchar_t for windows, PR4417 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74083 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
07d94ac3d0994d794bb82f9642a717d61c6f2b6f |
24-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix warning when building w/o asserts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74020 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5eee090e3880f3763a9a81a6780a84829f1c6bd0 |
24-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix warning when building w/o asserts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74020 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a9e9e0089d7fd4e5dc737a870b519a411a81fbdd |
24-Jun-2009 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::ÃsBeforeInTranslationUnit() which can compare 2 source locations and determine which one comes before the other, relative to the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74014 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2aa03d588bd2d3c73deb662880c2244bf2e384b9 |
24-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::ÃsBeforeInTranslationUnit() which can compare 2 source locations and determine which one comes before the other, relative to the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74014 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5912220b54135f50487aa2a7f7d3ef8e827dea71 |
23-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
__APPLE_CC__ should only be set when building for darwin targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73934 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7478bbfea8ec19962ba8e47d0b8b4de15f5a5943 |
23-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
__APPLE_CC__ should only be set when building for darwin targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73934 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7a12ac8c389cfd8fb4d6d15323bda180e7b74786 |
23-Jun-2009 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
In SourceManager::createFileID missed setting ContentCache's FirstFID in another place. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73931 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ea703f1218971511181765c37073c03e1437c5cc |
23-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In SourceManager::createFileID missed setting ContentCache's FirstFID in another place. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73931 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
219f3402cfbe84eac700c6908202f8952a258475 |
20-Jun-2009 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Slight modification to column checking inside SourceManager::getLocation(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73826 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
93edc3c874257077aac59db7f897cee984113db2 |
20-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Slight modification to column checking inside SourceManager::getLocation(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73826 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
af0d4d517b43b7dd7dde06d27c5055b49f5fe0f5 |
20-Jun-2009 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getLocation() to get a source location out of a "file:line:column" triplet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73823 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
10b46d2f0b976676d10681d73fe061b5ae409b36 |
20-Jun-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce SourceManager::getLocation() to get a source location out of a "file:line:column" triplet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73823 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ef5de7028439ca0849d78e2063409dabeceb5004 |
16-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
follow-on to my patch: some targets (like sparc) do not have target-specific builtins, and do not set the count. Just default to 0 for these targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73510 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
ff1d4d97a191ca84a703ef8d6c71ef6934090c4d |
16-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
follow-on to my patch: some targets (like sparc) do not have target-specific builtins, and do not set the count. Just default to 0 for these targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73510 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
2b323a09520aeefc657a5be52d45dd286380b789 |
16-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
my refactoring of builtins changed target-specific builtins to only be 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73492 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
030e8fe5aabe6a50ed7da3182df8cbce446bfeab |
16-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
my refactoring of builtins changed target-specific builtins to only be 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73492 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
a78418407762f4e287c58c549670fb6690145c67 |
15-Jun-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Base SFINAE error suppression counting on the class of an error, not its (possibly-remapped) diagnostics. Thanks, Chris! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73390 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8439fac3ce6c26db7982e34d119bf905b57eac91 |
15-Jun-2009 |
Douglas Gregor <dgregor@apple.com> |
Base SFINAE error suppression counting on the class of an error, not its (possibly-remapped) diagnostics. Thanks, Chris! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73390 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
95d6c95238d03080803549be81139f03a098016e |
14-Jun-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Update LLVM. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73332 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5e9f35c7cb61aea46f56d46c77cbcf47c0cf28ba |
14-Jun-2009 |
Douglas Gregor <dgregor@apple.com> |
Update LLVM. 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73332 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
c46fcddc0bb2256110a710801f34a560453e3549 |
14-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
Sink the BuiltinInfo object from ASTContext into the preprocessor and initialize it early in clang-cc. This ensures that __has_builtin works in all modes, not just when ASTContext is around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73319 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
1b63e4f732dbc73d90abf886b4d21f8e3a165f6d |
14-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
Sink the BuiltinInfo object from ASTContext into the preprocessor and initialize it early in clang-cc. This ensures that __has_builtin works in all modes, not just when ASTContext is around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73319 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
|
99ca9d64d362891c197bfda097e4994c41a67690 |
14-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
move the various builtins stuff from libast to libbasic. This fixes a layering violation in lib/Basic/Targets.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73318 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
MakeLists.txt
argets.cpp
|
6b15cdc1312f8fc45c86ee75e2a85106700e97f6 |
14-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
move the various builtins stuff from libast to libbasic. This fixes a layering violation in lib/Basic/Targets.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73318 91177308-0d34-0410-b5e6-96231b3b80d8
uiltins.cpp
MakeLists.txt
argets.cpp
|
ea39092a252e62e7f7fa52e6418e90a6bc46ff6d |
09-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add stack alignment to x86_64 target data. - <rdar://problem/6948443> WARNING: Linking two modules of different data layouts! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73093 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9e7d596b5450ac3998b419e44b82a73002936858 |
09-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add stack alignment to x86_64 target data. - <rdar://problem/6948443> WARNING: Linking two modules of different data layouts! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73093 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b28055e70d5cb10e92e1f48c1271b0ef2cd69bb9 |
08-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Minor tweaks to the Windows target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73083 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9c2f84eded86c086446ec25101cc65b0eb38da09 |
08-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Minor tweaks to the Windows target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73083 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7e17aed44bda5f10d93913125ad38cda83a0aaff |
08-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
PR4346: add "R" asm register constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73081 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
12b2da0350b24b396f87c8479234ec57d875f72f |
08-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
PR4346: add "R" asm register constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73081 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6b6ca949df5444625f4b527ae2da1d3cb8fc03fe |
08-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Misc minor fixes for clang for the Windows target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73050 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
abc4e32603bd9d3e392e23762cc366e45d772685 |
08-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Misc minor fixes for clang for the Windows target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73050 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
69400adadbdd7ab4b9b70dad3da21554f14442aa |
07-Jun-2009 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Remove dead code: 'NewEntry' is not used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73027 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a106fea080c9a9fd50c9e5fc26b9752c43614639 |
07-Jun-2009 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Remove dead code: 'NewEntry' is not used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73027 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d9389beef9a889d95ea8417cc44db22e30ad9523 |
05-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Move CharIsSigned from TargetInfo to LangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72928 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
15b91764d08e886391c865c4a444d7b51141c284 |
05-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Move CharIsSigned from TargetInfo to LangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72928 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
eff0a42db6b07f91e3a7e7f78c209707b81a3ef8 |
05-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Move a couple Darwin-specific defines into getDarwinDefines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72900 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2de4feeef29c837466a5f109e75f37ec2022bb28 |
05-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Move a couple Darwin-specific defines into getDarwinDefines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72900 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b9c50b4446153d6c3ad2f9d8d5b29a2364aee98e |
03-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Back out r72764; I should have looked more carefully before committing this. The correct replacement for "Y" and "Yt" is "x". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72765 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bb32e6dc801746fa3e09446f3730eb613fb59c2e |
03-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Back out r72764; I should have looked more carefully before committing this. The correct replacement for "Y" and "Yt" is "x". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72765 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a3b7514ad82317129b176682d167af9cd669a1cc |
03-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
PR3678: Add support for "Yt" asm register constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72764 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a3c29e11b8354af47ec21e3f8eb459e087c6f4b8 |
03-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
PR3678: Add support for "Yt" asm register constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72764 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ae8f1e8dc923784b70c18dd6cf82e5d1722b27d9 |
02-Jun-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Add floating point details to PIC16 Target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72713 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9eb4cef6bc7f6ef9f1fa2ae688935727968c486f |
02-Jun-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Add floating point details to PIC16 Target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72713 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
468ca6d53a966e286f9e16ba4d5b3096ebdc7e9b |
29-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add a couple missing ARM defines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72583 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
19262421fa6985dedd03df512a758238682db9d3 |
29-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add a couple missing ARM defines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72583 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a456b7faf9914b6963051965462506d5cc316221 |
22-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
A few more tweaks for Solaris; please correct me if it's wrong somehow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72240 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
09c3a6d72540e734d97fa36e3fca9d0a37d72ebe |
22-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
A few more tweaks for Solaris; please correct me if it's wrong somehow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72240 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5415abdb5ca3b3265be14aec48495d33bfb7a0d8 |
22-May-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Improve target support for Solaris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72237 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
163a7c79eaa9eff7d4ced3e4b62baa628b9538b1 |
22-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Improve target support for Solaris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72237 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e069049301f88ae1e919a86ae103c2055715d984 |
18-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Avoid potential out-of-bounds access in SourceManager::getLineNumber. - Chris, please see added FIXMEs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72019 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
4106d696d7d0725fcd442fdda28a07049d47c573 |
18-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Avoid potential out-of-bounds access in SourceManager::getLineNumber. - Chris, please see added FIXMEs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72019 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
78a2f41e566e3b34b99bf26ace2e71c6bc299b9d |
17-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Targets without long long should reduce the size of intmax_t accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71966 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3f7a5310d43ea58c07d06965b46718a8012b1f76 |
17-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Targets without long long should reduce the size of intmax_t accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71966 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f595559306b5b53fb954e74b33c7cabc8a93845e |
08-May-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide dummy va_list typedef for msp430 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71233 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eb71685510e0640b43e34ae9b567dcadb64075ee |
08-May-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide dummy va_list typedef for msp430 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71233 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c2e55de49d4485f58a2cdb06f63ecc6504733575 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Handle -march for the LLVM recognized cpu names. - x86 target feature handling should not be feature complete, even if the code quality is lacking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71123 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3ac79049abf396487546e8807e8763403f444a07 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Handle -march for the LLVM recognized cpu names. - x86 target feature handling should not be feature complete, even if the code quality is lacking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71123 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0838f96643db1611a52e015733f94b19b8a5d52d |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
More x86 target feature support. - Apologies for the extremely gross code duplication, I want to get this working and then decide how to get this information out of the back end. - This replaces -m[no-]sse4[12] by -m[no-]sse4, it appears gcc doesn't distinguish them? - -msse, etc. now properly disable/enable related features. - Don't always define __SSE3__... - The main missing functionality bit here is that we don't initialize the features based on the CPU for all -march options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71117 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
17ca3638e852ba81f389e9f896ed0420b52ae606 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
More x86 target feature support. - Apologies for the extremely gross code duplication, I want to get this working and then decide how to get this information out of the back end. - This replaces -m[no-]sse4[12] by -m[no-]sse4, it appears gcc doesn't distinguish them? - -msse, etc. now properly disable/enable related features. - Don't always define __SSE3__... - The main missing functionality bit here is that we don't initialize the features based on the CPU for all -march options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71117 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
106c79a6e35f5b8ea256506ea5b73244f6e483b9 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Tweak x86 -mcpu defaults. - Default to yonah on Darwin (to get SSE3). - Default to Pentium4 (32-bit) and x86-64 (64-bit) on non-Darwin. Welcome to the 21st century. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71069 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
500aec477c82660adda912c35b634006017933be |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Tweak x86 -mcpu defaults. - Default to yonah on Darwin (to get SSE3). - Default to Pentium4 (32-bit) and x86-64 (64-bit) on non-Darwin. Welcome to the 21st century. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71069 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f803ad8e9f634c7462466c16294528c0dade1848 |
06-May-2009 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6860124 - invalid input constraint 'J' in asm This recognizes all the target-independent constant constraints that have target-specific meanings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71064 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
1d13879044344c06d2933c268391ab8a2a2f46e7 |
06-May-2009 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6860124 - invalid input constraint 'J' in asm This recognizes all the target-independent constant constraints that have target-specific meanings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71064 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
07181d709860d06026afa3b4ee5b6a65b48c9005 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Improve handling of (X86) target features. - This is a WIP... - This adds -march= handling to the driver, and fixes the defaulting of -mcpu on Darwin (which was using the wrong test). Instead of handling -m{sse, ...} in the driver, pass them to clang-cc as -target-feature [+-]name In clang-cc, communicate with the (clang) target to discover the legal features of a target, and the features which are enabled based on -mcpu. This is currently hardcoded just enough to not be a feature regression, we need to get this information from the backend's TableGen information somehow. This is used to construct the full list of features which are being used, which is in turn used to initialize the predefines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71061 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
868bd0aa9281929ef50d2e9a8c82a036906f53f5 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Improve handling of (X86) target features. - This is a WIP... - This adds -march= handling to the driver, and fixes the defaulting of -mcpu on Darwin (which was using the wrong test). Instead of handling -m{sse, ...} in the driver, pass them to clang-cc as -target-feature [+-]name In clang-cc, communicate with the (clang) target to discover the legal features of a target, and the features which are enabled based on -mcpu. This is currently hardcoded just enough to not be a feature regression, we need to get this information from the backend's TableGen information somehow. This is used to construct the full list of features which are being used, which is in turn used to initialize the predefines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71061 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
954bd3fb831e20017c986cf78d739d517dfe0e96 |
03-May-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Hook msp430 in git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70774 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
73c64e5fb9c69bc1bb6af0e0b089875d088e0434 |
03-May-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Hook msp430 in git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70774 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e7772383ce8ee572ce9c9a7e8dcac9c8e8b68274 |
03-May-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Whitespace cleanup git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70773 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a7c4717f5fb40847a79c0013a8ce8f86940be288 |
03-May-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Whitespace cleanup git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70773 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5b6ac53a46c10bd9126dfa1a5d1d87635f824f87 |
02-May-2009 |
Chris Lattner <sabre@nondot.org> |
when creating custom warning diagnostics, do not attempt to map them with -Werror. Custom diags cannot be mapped, and this makes -Werror cause a determinstic crash for the checker and other clients of the custom diagnostics machinery. rdar://6816191 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70639 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a7e1898e6b84ed7911d1f25c975b27b78a4950cb |
02-May-2009 |
Chris Lattner <sabre@nondot.org> |
when creating custom warning diagnostics, do not attempt to map them with -Werror. Custom diags cannot be mapped, and this makes -Werror cause a determinstic crash for the checker and other clients of the custom diagnostics machinery. rdar://6816191 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70639 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e695d8c916919c401f324e02d1c1b3675ddf9f2c |
28-Apr-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Simplify the scheme used for keywords, and change the classification scheme to be more useful. The new scheme introduces a set of categories that should be more readable, and also reflects what we want to consider as an extension more accurately. Specifically, it makes the "what is a keyword" determination accurately reflect whether the keyword is a GNU or Microsoft extension. I also introduced separate flags for keyword aliases; this is useful because the classification of the aliases is mostly unrelated to the classification of the original keyword. This patch treats anything that's in the implementation namespace (prefixed with "__", or "_X" where "X" is any upper-case letter) as a keyword without marking it as an extension. This is consistent with the standards in that an implementation is allowed to define arbitrary extensions in the implementation namespace without violating the standard. This gets rid of all the nasty "extension used" warnings for stuff like __attribute__ in -pedantic mode. We still warn for extensions outside of the the implementation namespace, like typeof. If someone wants to implement -Wextensions or something like that, we could add additional information to the keyword table. This also removes processing for the unused "Boolean" language option; such an extension isn't supported on any other C implementation, so I don't see any point to adding it. The changes to test/CodeGen/inline.c are required because previously, we weren't actually disabling the "inline" keyword in -std=c89 mode. I'll remove Boolean and NoExtensions from LangOptions in a follow-up commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70281 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
eb32fde032a250091134db56a3aeaea6b09f6594 |
28-Apr-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Simplify the scheme used for keywords, and change the classification scheme to be more useful. The new scheme introduces a set of categories that should be more readable, and also reflects what we want to consider as an extension more accurately. Specifically, it makes the "what is a keyword" determination accurately reflect whether the keyword is a GNU or Microsoft extension. I also introduced separate flags for keyword aliases; this is useful because the classification of the aliases is mostly unrelated to the classification of the original keyword. This patch treats anything that's in the implementation namespace (prefixed with "__", or "_X" where "X" is any upper-case letter) as a keyword without marking it as an extension. This is consistent with the standards in that an implementation is allowed to define arbitrary extensions in the implementation namespace without violating the standard. This gets rid of all the nasty "extension used" warnings for stuff like __attribute__ in -pedantic mode. We still warn for extensions outside of the the implementation namespace, like typeof. If someone wants to implement -Wextensions or something like that, we could add additional information to the keyword table. This also removes processing for the unused "Boolean" language option; such an extension isn't supported on any other C implementation, so I don't see any point to adding it. The changes to test/CodeGen/inline.c are required because previously, we weren't actually disabling the "inline" keyword in -std=c89 mode. I'll remove Boolean and NoExtensions from LangOptions in a follow-up commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70281 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
578851959507ebbfcbfc14a795f0ec9bda8a4462 |
27-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Be more careful in our teardown of the PCHReader after deciding to ignore a PCH file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70251 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2bf1eb09f06a9792fa94dff0703f2aa2c4bace2a |
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Be more careful in our teardown of the PCHReader after deciding to ignore a PCH file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70251 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6cc5d1953169b8efbb5a86fff4d2b18de3b77579 |
27-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Implement caching of stat() calls for precompiled headers, which is essentially the same thing we do with pretokenized headers. stat() caching improves performance of the Cocoa-prefixed "Hello, World" by 45%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70223 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
4fed3f47f6b9e31d603c5c2d1f6d8ec2e1241e57 |
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement caching of stat() calls for precompiled headers, which is essentially the same thing we do with pretokenized headers. stat() caching improves performance of the Cocoa-prefixed "Hello, World" by 45%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70223 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
32e231c5db47643c2d0b131ce193289613b3f361 |
27-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Load most of the source manager's information lazily from the PCH file. In particular, only eagerly load source location entries for files and for the predefines buffer. Other buffers and macro-instantiation source location entries are loaded lazily. With the Cocoa-prefixed "Hello, World", we only load 815/26555 source location entities. This halves the amount of user time we spend in this "Hello, World" program with -fsyntax-only (down to .007s). This optimization is part 1 of 2 for the source manager. This eliminates most of the user time in loading a PCH file. We still spend too much time initialize File structures (especially in the calls to stat), so we need to either make the loading of source location entries for files lazy or import the stat cache from the PTH implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70196 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7f94b0b0c6791013d2f72ced9b4bedd3b23673a6 |
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Load most of the source manager's information lazily from the PCH file. In particular, only eagerly load source location entries for files and for the predefines buffer. Other buffers and macro-instantiation source location entries are loaded lazily. With the Cocoa-prefixed "Hello, World", we only load 815/26555 source location entities. This halves the amount of user time we spend in this "Hello, World" program with -fsyntax-only (down to .007s). This optimization is part 1 of 2 for the source manager. This eliminates most of the user time in loading a PCH file. We still spend too much time initialize File structures (especially in the calls to stat), so we need to either make the loading of source location entries for files lazy or import the stat cache from the PTH implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70196 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ce066715485bcbaef75127726123466f334ae488 |
27-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Some fixes for PCH (de-)serialization of Objective-C AST nodes: - Deal with the Receiver/ClassInfo shared storage in ObjCMessageExpr - Implement PCH support for ImplicitParamDecl - Fix the handling of the body of an ObjCMethodDecl - Several cast -> cast_or_null fixes - Make Selector::getIdentifierInfoForSlot work for 1-argument, NULL selectors. - Make Selector::getAsString() work with NULL selectors. - Fix the names of VisitObjCAtCatchStmt and VisitObjCAtFinallyStmt in the PCH reader and writer; these were never getting called. At this point, all of the pch-test tests pass for C and Objective-C. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70163 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
405bad07391494d2eb025f8222c256c66b56e5f8 |
27-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Some fixes for PCH (de-)serialization of Objective-C AST nodes: - Deal with the Receiver/ClassInfo shared storage in ObjCMessageExpr - Implement PCH support for ImplicitParamDecl - Fix the handling of the body of an ObjCMethodDecl - Several cast -> cast_or_null fixes - Make Selector::getIdentifierInfoForSlot work for 1-argument, NULL selectors. - Make Selector::getAsString() work with NULL selectors. - Fix the names of VisitObjCAtCatchStmt and VisitObjCAtFinallyStmt in the PCH reader and writer; these were never getting called. At this point, all of the pch-test tests pass for C and Objective-C. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70163 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
9eb395f7173bcde053cafd7b575f12f973f583b5 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
in a tied operand, don't copy over the name or constraint string, just the flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70137 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
d68876176a0d2c19e3864e7d38f6036c4f72f0a3 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
in a tied operand, don't copy over the name or constraint string, just the flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70137 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
0cd323da459fbce4e19d1bbf2923afe80bb39e44 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
pull operands names "[foo]" into ConstraintInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70136 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
2819fa85651526d59ade4fdc9da2cadd7b132973 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
pull operands names "[foo]" into ConstraintInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70136 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
9f8e50205526b02ae170d4e0f0b10bf0b3e66f87 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
pull the constraint string into the ConstraintInfo struct instead of passing it around in addition to it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70135 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
432c86969eced2ce658b3f3f2aa7407c8864f21b |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
pull the constraint string into the ConstraintInfo struct instead of passing it around in addition to it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70135 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
c49cc1a57583d78783137ff7914526617d032af7 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
change TargetInfo::ConstraintInfo to be a struct that contains the enum along with some other data. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70114 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
44def070435a2b5d67f0534f7a3a85a7389d60f2 |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
change TargetInfo::ConstraintInfo to be a struct that contains the enum along with some other data. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70114 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
eccb51d39a22a7cd1b4c61fedf43416a42990542 |
26-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Lazily load the controlling macros for all of the headers known in the PCH file. In the Cocoa-prefixed "Hello, World" benchmark, this takes us from reading 503 identifiers down to 37 and from 470 macros down to 4. It also results in an 8% performance improvement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70094 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
8c5a760b82e73ed90b560090772db97e2ae27b09 |
26-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Lazily load the controlling macros for all of the headers known in the PCH file. In the Cocoa-prefixed "Hello, World" benchmark, this takes us from reading 503 identifiers down to 37 and from 470 macros down to 4. It also results in an 8% performance improvement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70094 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
433d972221fd4a112c94e20e8b160f3b226a29b9 |
23-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
some arm triples have weird characters in them, just fuzzy match on armv* to be more compatible git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69864 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5b37dc03803621f8b4de3f42b2d1988a1b410bda |
23-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
some arm triples have weird characters in them, just fuzzy match on armv* to be more compatible git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69864 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
608ff6223083952584ba0ada6d70070bbc2f045f |
22-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Remove the serialization code that predates precompiled headers. Future approaches to (de-)serializing ASTs will be based on the PCH infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69828 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ileManager.cpp
dentifierTable.cpp
angOptions.cpp
ourceLocation.cpp
ourceManager.cpp
|
370187c8a3e96517c943329f2511737a04b85450 |
22-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Remove the serialization code that predates precompiled headers. Future approaches to (de-)serializing ASTs will be based on the PCH infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69828 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ileManager.cpp
dentifierTable.cpp
angOptions.cpp
ourceLocation.cpp
ourceManager.cpp
|
6b27fc3358837d5c8f59ae2f05fe36394d20db42 |
22-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Add missing dependency, patch by Jason Haslam! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69819 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
25bcbaf55691f15db3e2bbf7b4c53056a04c6a54 |
22-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Add missing dependency, patch by Jason Haslam! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69819 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
88b4e51f1f1d676f260b6b2a0affbbd55afa1f0b |
21-Apr-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Pass and return aggregate types directly to function calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69668 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
70aa5f9e9f3ec77327f701562efc53d7c36c5843 |
21-Apr-2009 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Pass and return aggregate types directly to function calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69668 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0ecc9514dd8a3c6cc2f2c1302f5ce3ec6c62b500 |
20-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Don't crash in the diagnostic printer if we happen to get passed a null string / identifier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69575 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e46e354ecb9a04c8d3724ae2b0f95f4424e3f69c |
20-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Don't crash in the diagnostic printer if we happen to get passed a null string / identifier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69575 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9b343070dcd19f948a392caf8a1b6cd8ed0a8b8d |
20-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
move group twiddling options into Diagnostic.cpp instead of Warnings.cpp. Warnings.cpp now doesn't need to #include tblgen produced output directly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69559 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3bc172bc6a787842db6fea351cf6929539fca70d |
20-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
move group twiddling options into Diagnostic.cpp instead of Warnings.cpp. Warnings.cpp now doesn't need to #include tblgen produced output directly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69559 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8f5751758930cdecf2768a506c1614df44a598ea |
19-Apr-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add target property for whether thread-local storage is supported. Let me know if I messed up for some target. Note that for Windows, we should be able to support it (MSVC supports "__declspec(thread)"), but I'm pretty sure LLVM doesn't know how to generate the correct code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69552 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
b030f0272500c6c5602f587ac029ee0dc0e5a05c |
19-Apr-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add target property for whether thread-local storage is supported. Let me know if I messed up for some target. Note that for Windows, we should be able to support it (MSVC supports "__declspec(thread)"), but I'm pretty sure LLVM doesn't know how to generate the correct code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69552 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
25ac1c16a52867bbe8d202321efab6d234be5bd9 |
19-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
actually just do this on all x86 targets, it won't hurt non-glibc ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69528 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5417544b42581366f45d8164f9cbbd1a2e99c485 |
19-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
actually just do this on all x86 targets, it won't hurt non-glibc ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69528 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
919a57b0f109fa2245d00736a3187741fe32bf40 |
19-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Define __NO_MATH_INLINES on linux/x86 so that we don't get inline functions in glibc header files that use FP Stack inline asm which the backend can't deal with (PR879). This "fixes" PR3970 for linux. Other affected systems should do similar things. Maybe this should just go to the general i386/x86-64 sections? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69527 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
09b5cc69f0f979e4fb0dbf24e43ced5ffadd0a84 |
19-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Define __NO_MATH_INLINES on linux/x86 so that we don't get inline functions in glibc header files that use FP Stack inline asm which the backend can't deal with (PR879). This "fixes" PR3970 for linux. Other affected systems should do similar things. Maybe this should just go to the general i386/x86-64 sections? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69527 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a8a1f612ddc095da5ce8c44297637888f78a3fd9 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
optimize and comment GetDiagInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69273 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
87d854ebedb43a9ff0f55591821dc5600984e479 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
optimize and comment GetDiagInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69273 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3bce75be7d8dbcd25ef33ea153660a63169e2112 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
merge several scattered tables into StaticDiagInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69272 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
121f60c2aa51eae81eac75a9bd8c076140896f3d |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
merge several scattered tables into StaticDiagInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69272 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
542429cf7fabdd576cd2a371ba24a332e7346ef2 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Implement Diagnostic::getWarningOptionForDiag with information from tblgen, this implements -fdiagnostics-show-option in clang-cc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69271 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
33dd2822f3972afe99b61315a890f8bad8ee5d7f |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Implement Diagnostic::getWarningOptionForDiag with information from tblgen, this implements -fdiagnostics-show-option in clang-cc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69271 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8ee040e4581ec7530eae4b689ab7a4a9c9ce9bbd |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
tblgen is now passing diagnostic group information in the .inc file, ignore it everywhere. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69269 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
19cbb44e3c4f2181dafa2ab92d3e3a26619b71d9 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
tblgen is now passing diagnostic group information in the .inc file, ignore it everywhere. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69269 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a96ec3bcfecbf4d1a9b4b6523060eb591a905810 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
implement framework for -fdiagnostics-show-option, but tblgen isn't passing down the right info yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69268 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d51d74a3e89c5e5fc9bfd2814996a5feab6dc932 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
implement framework for -fdiagnostics-show-option, but tblgen isn't passing down the right info yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69268 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
85b1ac8086b3ceaf6602590c5bb0236150ae0d7c |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
move handling of -pedantic and -pedantic-errors into Diagnostics, out of Warnings.cpp. This simplifies warnings.cpp and makes it more efficient. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69266 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b54b276a920246c595a0498da281821eb9d22996 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
move handling of -pedantic and -pedantic-errors into Diagnostics, out of Warnings.cpp. This simplifies warnings.cpp and makes it more efficient. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69266 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8444dd14fb028ecd77751405c8be4ea8686ce6f1 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
arrange for -Wno-error=foo warnings to be immune to -Werror as they are supposed to be. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69265 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2b07d8fe9e8a8ba12d64066632e17a9a5308a12e |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
arrange for -Wno-error=foo warnings to be immune to -Werror as they are supposed to be. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69265 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0958cff64be2a6fa11889c64ae54944b85912bce |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
change mappings to distinguish between "unset", "set by the user" and "set to the default value". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69264 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
691f1ae7164ba78c3dd7ac20c487399935b9544b |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
change mappings to distinguish between "unset", "set by the user" and "set to the default value". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69264 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2de848348b84343921047017e2ac8c294acbd3cf |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
fix some out of bounds array access problems, which manifest particularly spectacularly when built for x86-64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69197 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fe526d2be9faf52a40640ed610baba9bc6cb16d8 |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
fix some out of bounds array access problems, which manifest particularly spectacularly when built for x86-64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69197 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0baad39be4f0379cc847e0f867c5f5addab32385 |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
move {'s git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69179 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d2aa7c90e7646c509f3493fa8548635ccf4a2d0a |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
move {'s git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69179 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e5d60a3d4be1eaa0b6349236787e3ee92bbfc8ff |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Make diagnostic class explicit in the diag record instead of implicit from its parenting. Now that diag mapping is explicit, eliminate the fatal and extwarn classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69177 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
8a941e0c71d318430648e24eeca91a464a46eba9 |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Make diagnostic class explicit in the diag record instead of implicit from its parenting. Now that diag mapping is explicit, eliminate the fatal and extwarn classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69177 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
13d17ac85da60e14f4dace39d6c438a5ea016757 |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Tblgen now passes the default mapping explicitly, instead of having it be tied to the diag class. This requires an LLVM tree update. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69175 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4ac072aceb9c68f7a023050e2ab9ccacb4fe6e5b |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Tblgen now passes the default mapping explicitly, instead of having it be tied to the diag class. This requires an LLVM tree update. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69175 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
015b4e1bb608f6c89e6c0daaadae57ff33375766 |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Rejigger how -pedantic and -pedantic-errors work and their interaction with other diagnostic mapping. In the new scheme, -Wfoo or -Wno-foo or -Werror=foo all override the -pedantic options, and __extension__ robustly silences all extension diagnostics in their scope. An added bonus of this change is that MAP_DEFAULT goes away, meaning that per-diagnostic mapping information can now be stored in 2 bits, doubling the density of the Diagnostic::DiagMapping array. This also substantially simplifies Diagnostic::getDiagnosticLevel. OTOH, this temporarily introduces some "macro intensive" code in Diagnostic.cpp. This will be addressed in a later patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69154 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
27ceb9d77d929f02a8a811d189a96885629c7c0c |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Rejigger how -pedantic and -pedantic-errors work and their interaction with other diagnostic mapping. In the new scheme, -Wfoo or -Wno-foo or -Werror=foo all override the -pedantic options, and __extension__ robustly silences all extension diagnostics in their scope. An added bonus of this change is that MAP_DEFAULT goes away, meaning that per-diagnostic mapping information can now be stored in 2 bits, doubling the density of the Diagnostic::DiagMapping array. This also substantially simplifies Diagnostic::getDiagnosticLevel. OTOH, this temporarily introduces some "macro intensive" code in Diagnostic.cpp. This will be addressed in a later patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69154 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
1214b585792644466e8cd19e3274df3f9836a09f |
14-Apr-2009 |
Mike Stump <mrs@apple.com> |
Fixup whitespacing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69055 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
aa771a838a8f39633947ccc597e11d57e2839089 |
14-Apr-2009 |
Mike Stump <mrs@apple.com> |
Fixup whitespacing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69055 91177308-0d34-0410-b5e6-96231b3b80d8
onvertUTF.c
|
635f97f496328be23baade4b8c0e2cb5f4215d34 |
13-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Include the SourceManager's line table in the PCH file. We can now properly cope with #line directives in PCH files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68963 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bd94500d3aa60092fb0f1e90f53fb0d03fa502a8 |
13-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Include the SourceManager's line table in the PCH file. We can now properly cope with #line directives in PCH files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68963 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
cdad0ba825bd59e5ee9ccd4e5894f15171440208 |
13-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Factor the internals of SourceManager (specially, LineTableInfo) into a separate Internals header. No functionality change git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68960 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d4f77aa7c276be49aee5e59ef509cb91e26aa79f |
13-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Factor the internals of SourceManager (specially, LineTableInfo) into a separate Internals header. No functionality change git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68960 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
93f6453ea5d78a155b992fadb5961bdd4dcbbed6 |
10-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Support -miphoneos-version-min in clang-cc. - Patch by Shantonu Sen (with a minor tweak to split out getDarwin{OSX,IPhoneOS}Defines)! - <rdar://problem/6776277> Need clang-cc/ccc-analyzer support for -miphoneos-version-min git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68815 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8d33cd77dc1086f70f1699ea012702d0df7eba1a |
10-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Support -miphoneos-version-min in clang-cc. - Patch by Shantonu Sen (with a minor tweak to split out getDarwin{OSX,IPhoneOS}Defines)! - <rdar://problem/6776277> Need clang-cc/ccc-analyzer support for -miphoneos-version-min git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68815 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0e004a10bfb9560c7b2507267362672d3e93f3fb |
08-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Add initial support for -imacros. Right now it has the same semantics as -include, but that will be fixed soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68625 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
b8e240ed8b8f58c7b7fe82776bd6147b437f5d53 |
08-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Add initial support for -imacros. Right now it has the same semantics as -include, but that will be fixed soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68625 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
d4f7f625722ab57348b8bb698bb78da2f1a6b7ac |
08-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
remove fixme! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68589 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
837e897660a527cfe2b443ae7303f6cc8ba99a83 |
08-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
remove fixme! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68589 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f90a29f55cc9f1f8ef84b542c585ee7936b472f9 |
08-Apr-2009 |
Mike Stump <mrs@apple.com> |
Add basic support for arm static analysis checking. Radar 6699395 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68582 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
437bb4b6ecf23bd016203dee80983402cdcb761e |
08-Apr-2009 |
Mike Stump <mrs@apple.com> |
Add basic support for arm static analysis checking. Radar 6699395 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68582 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8181e6240469cf261c18235b3265e2285ee41af1 |
07-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Fariborz points out that weak is now defined to the attribute even in C mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68520 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
10d2427386124b69c150bef0163b525404bbb545 |
07-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Fariborz points out that weak is now defined to the attribute even in C mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68520 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
33854aaf48b57c7eb2c8b8e66f31ddfe47b2b231 |
07-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
The __weak and __strong defines are common to all darwin targets and are even set in C mode. As such, move them to Targets.cpp. __OBJC_GC__ is also darwin specific, but seems reasonable to always define it when in objc-gc mode. This fixes rdar://6761450 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68494 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3a5cbd37c91d29bbd169ae869b234ed1fc954cb6 |
07-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
The __weak and __strong defines are common to all darwin targets and are even set in C mode. As such, move them to Targets.cpp. __OBJC_GC__ is also darwin specific, but seems reasonable to always define it when in objc-gc mode. This fixes rdar://6761450 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68494 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8fcffeb6ce16ac977e11f965077e8dfbb62dd4bd |
04-Apr-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide sema proper values of maximal number of arguments passed in registers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68413 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
264a76cdf382c507f4d43e64c89f1503f003ac95 |
04-Apr-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide sema proper values of maximal number of arguments passed in registers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68413 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6a91648fe9226db360759a23c89bb5aec3f3ceab |
03-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add target hook for setting symbol prefix and section of unicode string literals. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68363 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a9668e0b4c451a1021fe650c451b54dc98c2d18d |
03-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add target hook for setting symbol prefix and section of unicode string literals. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68363 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ae27fb4c9e76b400271b4fb7a8fc3669060c44c5 |
03-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Fix a little typo that was killing de-serialization git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68354 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
2b63fbc9bf79e98e824cd9a6d5104242756dc6b7 |
03-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Fix a little typo that was killing de-serialization git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68354 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
df7b891cd0061de2ce84557c74c3fc3f73bd6566 |
03-Apr-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Resynchronize Decl/VarDecl serialization code with the structures git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68346 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3050ed44aea059f1bb48d05b6dd64478bd8ed0aa |
03-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Resynchronize Decl/VarDecl serialization code with the structures git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68346 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
82e5db22dbf69459dc108176bbef86bd1287c151 |
01-Apr-2009 |
Steve Naroff <snaroff@apple.com> |
Add ConvertUTF module from http://www.unicode.org/Public/PROGRAMS/CVTUTF. #ifdef'd out the 5 conversion routines that we don't currently need. Still need a bit more work in GetAddrOfConstantCFString(). Added a FIXME to indicate this. Expect to remove the FIXME today... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68208 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
onvertUTF.c
|
e9b7d8ace8674585818990cff585daae7745bd88 |
01-Apr-2009 |
Steve Naroff <snaroff@apple.com> |
Add ConvertUTF module from http://www.unicode.org/Public/PROGRAMS/CVTUTF. #ifdef'd out the 5 conversion routines that we don't currently need. Still need a bit more work in GetAddrOfConstantCFString(). Added a FIXME to indicate this. Expect to remove the FIXME today... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68208 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
onvertUTF.c
|
c3a4893262053ed2efc04a6128358cc8f706a5a0 |
01-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Target hooks for IRgen of [cf]string literals. - Notably, set section on cfstring literal string data (for now, this is done everywhere because it matches what we were already doing for the CFString data itself) - <rdar://problem/6599098> [irgen] linker requires objc string data to go into cstring git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68160 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8e5c2b8072f4409c7c0004331d1db9652d5209c0 |
01-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Target hooks for IRgen of [cf]string literals. - Notably, set section on cfstring literal string data (for now, this is done everywhere because it matches what we were already doing for the CFString data itself) - <rdar://problem/6599098> [irgen] linker requires objc string data to go into cstring git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68160 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
04ede30ad07d083cb0c7769cea52a9865bf8b41d |
29-Mar-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix the default for intptr_t on *BSD x86-32 and Windows. Slight cleanup by moving the general case to the generic x86-32 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68015 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1afabd948520c2607309383655600b46083e083a |
29-Mar-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix the default for intptr_t on *BSD x86-32 and Windows. Slight cleanup by moving the general case to the generic x86-32 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68015 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
88fd99486b25f23ab3a70e552051e43ad57b09af |
23-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Ad FreeBSD ARM target info. - Patch by Ed Schoeten! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67527 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e0107a3d1e9477bb3fc0bf0dbe1b52cbdd23a77 |
23-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Ad FreeBSD ARM target info. - Patch by Ed Schoeten! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67527 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
46970ed35b8989a3c1b787beab82125493ccbd1a |
20-Mar-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Eliminate post-diagnostic hooks. Instead, implement a Sema-specific variant of DiagnosticBuilder that emits the template instantiation backtrace when needed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67413 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
25a88bbf042317976f0d9cbfa87dfe89426e8393 |
20-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Eliminate post-diagnostic hooks. Instead, implement a Sema-specific variant of DiagnosticBuilder that emits the template instantiation backtrace when needed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67413 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
c345a80ada9bbdc1e72b94c78bd0505438b6e162 |
20-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
refactor some code, fixing a problem discovered by the dragonfly bsd people, where clang was defining "i386" even when in non-gnu mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67378 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ca45cffe5e17f5c2cd2f4d9f631924c704f0f184 |
20-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
refactor some code, fixing a problem discovered by the dragonfly bsd people, where clang was defining "i386" even when in non-gnu mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67378 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ab81f16dee732c88a226aa554a6721725ee7b12a |
20-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
pass langoptions around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67376 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
318ca7106d59c9851125b9b8979e2dff05b390d0 |
20-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
pass langoptions around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67376 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
796824014e267eb99d8e80b01eff55f3d5be8b44 |
20-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
pass LangOptions into TargetInfo::getTargetDefines, so that targets can have language-specific defines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67375 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
33328642a7a8a126918814ddcbcebf83c121ad54 |
20-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
pass LangOptions into TargetInfo::getTargetDefines, so that targets can have language-specific defines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67375 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
23974ac63841eada280bdd4821091d1b127242a5 |
20-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Bindir and Win32 builds work, so switch to .inc files. Leave the .def files in the tree for a day or so longer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67346 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4d7a089144f336b11e5e8ce437b3b27bce2b310d |
20-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Bindir and Win32 builds work, so switch to .inc files. Leave the .def files in the tree for a day or so longer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67346 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4019749cbf775a28f952a3f10ed4467a5152d682 |
19-Mar-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Allow notes to be printed following a fatal error, then suppress any diagnostics following those notes. Make exceeding the template instantiation depth a fatal error. Thanks to Daniel for pointing out the problem! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67320 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
525c4b0d1bd1a70bf269adecf91b192f3e6c1a89 |
19-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Allow notes to be printed following a fatal error, then suppress any diagnostics following those notes. Make exceeding the template instantiation depth a fatal error. Thanks to Daniel for pointing out the problem! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67320 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
026a2ef889178bbf6707465b73909aa38aaf7e6b |
17-Mar-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Build system changes to use TableGen to generate the various diagnostics. This builds on the patch that Sebastian committed and then revert. Major differences are: - We don't remove or use the current ".def" files. Instead, for now, we just make sure that we're building the ".inc" files. - Fixed CMake makefiles to run TableGen and build the ".inc" files when needed. Tested with both the Xcode and Makefile generators provided by CMake, so it should be solid. - Fixed normal makefiles to handle out-of-source builds that involve the ".inc" files. I'll send a separate patch to the list with Sebastian's changes that eliminate the use of the .def files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67058 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile
|
a393e9eedcc28b25f521a4feceb3b56e3d0d360f |
17-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Build system changes to use TableGen to generate the various diagnostics. This builds on the patch that Sebastian committed and then revert. Major differences are: - We don't remove or use the current ".def" files. Instead, for now, we just make sure that we're building the ".inc" files. - Fixed CMake makefiles to run TableGen and build the ".inc" files when needed. Tested with both the Xcode and Makefile generators provided by CMake, so it should be solid. - Fixed normal makefiles to handle out-of-source builds that involve the ".inc" files. I'll send a separate patch to the list with Sebastian's changes that eliminate the use of the .def files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67058 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile
|
eee67792c8f4abd48c28e7b3267022fda25bca8d |
14-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Revert the switch to the tablegen diags. It fails for seperate objdir builds and cmake builds, and I have no clue what to do about it. Revisit this after someone with a clue about the build systems has looked at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67009 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e89b6b272f9f3b15afa56a701a4d7a6b1001ed34 |
14-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Revert the switch to the tablegen diags. It fails for seperate objdir builds and cmake builds, and I have no clue what to do about it. Revisit this after someone with a clue about the build systems has looked at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67009 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fa70786a0bc7a28c23c389fbe538038e1ea97ce2 |
14-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Switch diagnostics from .def to tablegen files. Please validate the Windows build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67007 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3801d71fbeb6e74a22cdd6a858e10d887bc29c7a |
14-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Switch diagnostics from .def to tablegen files. Please validate the Windows build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67007 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f45afe6bcfe63fc672f2311cc62e80275a857e9d |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Diagnostic files for Frontend and move a couple errors over. - Notably, clang now exits with an error if it can't find a file. This flushed out a bug in the CGColorSpace.c test case. :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66789 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
50f4f469024928670f2d634c445686d00eeb89b7 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Diagnostic files for Frontend and move a couple errors over. - Notably, clang now exits with an error if it can't find a file. This flushed out a bug in the CGColorSpace.c test case. :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66789 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
93468495c02e53c3e6a9f92335496a6fd32bb9fd |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Use standard Diagnostic interface for diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66786 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4ad4b3ebbe5769143389dccfcfadb666a4ba5940 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Use standard Diagnostic interface for diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66786 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0119bbf6116f62afd808427e79f2d92d4d22fa41 |
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Clear all the linetable state in clear(), fixing problems with "clang t.i s.i" where the .i files contain line markers. rdar://6667812 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66619 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1841aa19aa577437f3b0ff8ce1ff8deafa20d6c8 |
11-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Clear all the linetable state in clear(), fixing problems with "clang t.i s.i" where the .i files contain line markers. rdar://6667812 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66619 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
fee85d6b7303d9a7ac28836141ded2fcf9bd07a9 |
10-Mar-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Add a notion of "post-diagnostic hooks", which are callbacks attached to a diagnostic that will be invoked after the diagnostic (if it is not suppressed). The hooks are allowed to produce additional diagnostics (typically notes) that provide more information. We should be able to use this to help diagnostic clients link notes back to the diagnostic they clarify. Comments welcome; I'll write up documentation and convert other clients (e.g., overload resolution failures) if there are no screams of protest. As the first client of post-diagnostic hooks, we now produce a template instantiation backtrace when a failure occurs during template instantiation. There's still more work to do to make this output pretty, if that's even possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66557 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ee1828a6b5ae1bc4ea300e48f3840ac1ec5be295 |
10-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Add a notion of "post-diagnostic hooks", which are callbacks attached to a diagnostic that will be invoked after the diagnostic (if it is not suppressed). The hooks are allowed to produce additional diagnostics (typically notes) that provide more information. We should be able to use this to help diagnostic clients link notes back to the diagnostic they clarify. Comments welcome; I'll write up documentation and convert other clients (e.g., overload resolution failures) if there are no screams of protest. As the first client of post-diagnostic hooks, we now produce a template instantiation backtrace when a failure occurs during template instantiation. There's still more work to do to make this output pretty, if that's even possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66557 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
24c169debdbe1f6779664296f1b831eeb00bc051 |
10-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove some now-unneeded calls to llvm::errs().flush(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66555 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
4a77edb3f0fabc8e214a3d5636c4d0aff031645c |
10-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove some now-unneeded calls to llvm::errs().flush(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66555 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
e1fa84b29f24110b09b76b9174eafe70f0035088 |
10-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Add FullSourceLoc::getDecomposedLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66522 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
321abd4583dc02a254489132c5ccbe125d18ce4f |
10-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Add FullSourceLoc::getDecomposedLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66522 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
8be6f744bc18836256beffedd2440a67b6a229c2 |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Revert my last couple patches until I can get them to not make the tests fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66317 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d42ffbd22fc7eb61321f6a88173ee424991f01c6 |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Revert my last couple patches until I can get them to not make the tests fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66317 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a732e852da1662171989ebccaa025bc3170efa8e |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Teach Diagnostic about Selector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66314 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b9eb3afc9eafbb1c6815c8b63633065f370be6a5 |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Teach Diagnostic about Selector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66314 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a05c34b7b0c4c529ac9349c28cd0996d384ba8c3 |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Selector: (changes made after discussing this more with Steve Naroff) - Make Selector::getAsIdentifierInfo() private. Using IdentifierInfo* in Selector is an implementation detail that clients shouldn't think about. - Modify diagnostic emission in Sema::ProcessPropertyDecl to not use Selector::getAsIdentifierInfo() (which could crash when IdentifierInfo* is null) and instead use Selector::getAsString(). - Tidy up Selector::getAsString() implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66313 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
150ec292a6e7995a711cedbe7a10a25d664a6c6b |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Selector: (changes made after discussing this more with Steve Naroff) - Make Selector::getAsIdentifierInfo() private. Using IdentifierInfo* in Selector is an implementation detail that clients shouldn't think about. - Modify diagnostic emission in Sema::ProcessPropertyDecl to not use Selector::getAsIdentifierInfo() (which could crash when IdentifierInfo* is null) and instead use Selector::getAsString(). - Tidy up Selector::getAsString() implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66313 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
402c27ca915f1ec46de0032472481d72736a17ab |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Handle null IdentifierInfo* in Selector::getAsString(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66307 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
f5ed3961d21450c4fe98a00d7170da71b485328e |
07-Mar-2009 |
Ted Kremenek <kremenek@apple.com> |
Handle null IdentifierInfo* in Selector::getAsString(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66307 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
c24b889ca4ac3c0af96c30cbf5d4db8165ff2dfe |
05-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Include information about compound statements when crashing in sema or the parser. For example, we now print out: 0. t.c:5:10: in compound statement {} 1. t.c:3:12: in compound statement {} 2. clang t.c -fsyntax-only git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66108 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
ae50fa0a9e7217b043ed4ffe175af4b26dc90f34 |
05-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Include information about compound statements when crashing in sema or the parser. For example, we now print out: 0. t.c:5:10: in compound statement {} 1. t.c:3:12: in compound statement {} 2. clang t.c -fsyntax-only git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66108 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
c96f3d932df38c85a3d2589f756fd0ed2643f3f8 |
04-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
allocate MultiKeywordSelector's out of a bump pointer allocator instead of malloc. This has two advantages 1) no more leaking them, 2) fewer calls to malloc. This changes us from calling malloc 3685/1390/883/2974/1185 times respectively on 16/20/24/28/32 byte objects when parsing cocoa.h with pth and -disable-free to calling it 2816/1020/702/2903/1168 times each respectively. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66017 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
5f7d2284c4b2f08d155732454002e68dc40c33ef |
04-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
allocate MultiKeywordSelector's out of a bump pointer allocator instead of malloc. This has two advantages 1) no more leaking them, 2) fewer calls to malloc. This changes us from calling malloc 3685/1390/883/2974/1185 times respectively on 16/20/24/28/32 byte objects when parsing cocoa.h with pth and -disable-free to calling it 2816/1020/702/2903/1168 times each respectively. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66017 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
f6790a803435e05567812367280879268a962157 |
03-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
implement support for propagating *features* down to the code generator and defining target-specific macros based on them (like __SSE3__ and friends). After extensive discussion with Daniel, this work will need driver support, which will translate things like -msse3 into a -mattr feature. Until this work is done, the code in clang.cpp is disabled and the X86TargetInfo ctor still defaults to SSE2. With these two things changed, this code will work. PR3634 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65966 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
6328cc316d7032517399da9230a197cd29f2664d |
03-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
implement support for propagating *features* down to the code generator and defining target-specific macros based on them (like __SSE3__ and friends). After extensive discussion with Daniel, this work will need driver support, which will translate things like -msse3 into a -mattr feature. Until this work is done, the code in clang.cpp is disabled and the X86TargetInfo ctor still defaults to SSE2. With these two things changed, this code will work. PR3634 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65966 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
715fe4c00d89cf2337e633577173f28fafca19ee |
02-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Add plumbing to support programatically defining __SSE2__ and friends, even though we still hard code sse2 for now. No support for 3dnow or sse4a, but someone could add that if they desired. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65886 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
84f0ea849e79b08093933970c056d8b8d7be3c82 |
02-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Add plumbing to support programatically defining __SSE2__ and friends, even though we still hard code sse2 for now. No support for 3dnow or sse4a, but someone could add that if they desired. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65886 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bef1d7225ab94e3f5a8205ec0544d70062e1577a |
02-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
minor cleanups to target-specific #defines, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65885 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c0f5921215b476d19a84fe353b8e1763a09b3156 |
02-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
minor cleanups to target-specific #defines, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65885 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
7d6220ca4a53b38673473fd461ff8e983d22225e |
02-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
improve compatibility with GCC 4.4, patch by Michel Salim (PR3697) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65884 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
ourceLocation.cpp
argets.cpp
|
3daed52a57d03765223021f5f921bdc280c8f3cc |
02-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
improve compatibility with GCC 4.4, patch by Michel Salim (PR3697) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65884 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
ourceLocation.cpp
argets.cpp
|
36834a75d9a3daaf87b6ef25a06ccf084eb43561 |
28-Feb-2009 |
Anders Carlsson <andersca@mac.com> |
TargetInfo::validateAsmConstraint now takes a reference to the full constraints string. This will make it possible to support multi-character constraints. No functionality change (for now). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65696 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
066d2ea7521896efc05cce7aa46fdd3a7ba96c28 |
28-Feb-2009 |
Anders Carlsson <andersca@mac.com> |
TargetInfo::validateAsmConstraint now takes a reference to the full constraints string. This will make it possible to support multi-character constraints. No functionality change (for now). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65696 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
61be3601335d62fc5bd59ea89d6efff7576bf58d |
27-Feb-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Clean up and document code modification hints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65641 91177308-0d34-0410-b5e6-96231b3b80d8
okenKinds.cpp
|
b2fb6de9070fea9abc56c8e8d5469066e964cefe |
27-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Clean up and document code modification hints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65641 91177308-0d34-0410-b5e6-96231b3b80d8
okenKinds.cpp
|
3bb3000049dd841d51cfad730bd056d1467f92f0 |
26-Feb-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduce code modification hints into the diagnostics system. When we know how to recover from an error, we can attach a hint to the diagnostic that states how to modify the code, which can be one of: - Insert some new code (a text string) at a particular source location - Remove the code within a given range - Replace the code within a given range with some new code (a text string) Right now, we use these hints to annotate diagnostic information. For example, if one uses the '>>' in a template argument in C++98, as in this code: template<int I> class B { }; B<1000 >> 2> *b1; we'll warn that the behavior will change in C++0x. The fix is to insert parenthese, so we use code insertion annotations to illustrate where the parentheses go: test.cpp:10:10: warning: use of right-shift operator ('>>') in template argument will require parentheses in C++0x B<1000 >> 2> *b1; ^ ( ) Use of these annotations is partially implemented for HTML diagnostics, but it's not (yet) producing valid HTML, which may be related to PR2386, so it has been #if 0'd out. In this future, we could consider hooking this mechanism up to the rewriter to actually try to fix these problems during compilation (or, after a compilation whose only errors have fixes). For now, however, I suggest that we use these code modification hints whenever we can, so that we get better diagnostics now and will have better coverage when we find better ways to use this information. This also fixes PR3410 by placing the complaint about missing tokens just after the previous token (rather than at the location of the next token). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65570 91177308-0d34-0410-b5e6-96231b3b80d8
okenKinds.cpp
|
4b2d3f7bcc4df31157df443af1b80bcaa9b58bba |
26-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Introduce code modification hints into the diagnostics system. When we know how to recover from an error, we can attach a hint to the diagnostic that states how to modify the code, which can be one of: - Insert some new code (a text string) at a particular source location - Remove the code within a given range - Replace the code within a given range with some new code (a text string) Right now, we use these hints to annotate diagnostic information. For example, if one uses the '>>' in a template argument in C++98, as in this code: template<int I> class B { }; B<1000 >> 2> *b1; we'll warn that the behavior will change in C++0x. The fix is to insert parenthese, so we use code insertion annotations to illustrate where the parentheses go: test.cpp:10:10: warning: use of right-shift operator ('>>') in template argument will require parentheses in C++0x B<1000 >> 2> *b1; ^ ( ) Use of these annotations is partially implemented for HTML diagnostics, but it's not (yet) producing valid HTML, which may be related to PR2386, so it has been #if 0'd out. In this future, we could consider hooking this mechanism up to the rewriter to actually try to fix these problems during compilation (or, after a compilation whose only errors have fixes). For now, however, I suggest that we use these code modification hints whenever we can, so that we get better diagnostics now and will have better coverage when we find better ways to use this information. This also fixes PR3410 by placing the complaint about missing tokens just after the previous token (rather than at the location of the next token). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65570 91177308-0d34-0410-b5e6-96231b3b80d8
okenKinds.cpp
|
72efecb2d962a2293f027c521acb9b5ea1031d79 |
25-Feb-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Minor refactoring. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65414 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
84d013393cb6af5e422b04bccd762857b5b06b60 |
25-Feb-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Minor refactoring. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65414 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
27f5896fb2fb105d810ce99e037bc7ebb1cd785f |
25-Feb-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
patch for two things. make sure objc2's nonfragile abi is enacted for Leopard too. add -fobjc-gc-only flag to the image_info symbol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65413 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
66a5c2c0da225d45334c8062f10e73b7dee50681 |
25-Feb-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
patch for two things. make sure objc2's nonfragile abi is enacted for Leopard too. add -fobjc-gc-only flag to the image_info symbol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65413 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
273dce44728339a573ae98785b2f4c18481c36b7 |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add support for amd64-*, patch by Brooks Davis! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65124 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
54fefbe9931284c8b78e4cb1cd5f13038f480b9f |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add support for amd64-*, patch by Brooks Davis! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65124 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0b53af20d4a56a5ec3bc5072aaa3a14f6d6fecd1 |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
replace a dirty hack with a clean solution. Too bad we can't use Blocks for our callbacks ;-) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65083 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
92dd386e3f05d176b45a638199d51f536bd9d1c4 |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
replace a dirty hack with a clean solution. Too bad we can't use Blocks for our callbacks ;-) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65083 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2bd4a5a5a36b49a146e66088d099f7f6f2985ac4 |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Fix a long standard problem with clang retaining "too much" sugar information about types. We often print diagnostics where we say "foo_t" is bad, but the user doesn't know how foo_t is declared (because it is a typedef). Fix this by expanding sugar when present in a diagnostic (and not one of a few special cases, like vectors). Before: t.m:5:2: error: invalid operands to binary expression ('typeof(P)' and 'typeof(F)') MAX(P, F); ^~~~~~~~~ t.m:1:78: note: instantiated from: #define MAX(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; }) ^ After: t.m:5:2: error: invalid operands to binary expression ('typeof(P)' (aka 'struct mystruct') and 'typeof(F)' (aka 'float')) MAX(P, F); ^~~~~~~~~ t.m:1:78: note: instantiated from: #define MAX(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; }) ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65081 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d0344a4a6182ad704881cbbaa21cca14913d2296 |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Fix a long standard problem with clang retaining "too much" sugar information about types. We often print diagnostics where we say "foo_t" is bad, but the user doesn't know how foo_t is declared (because it is a typedef). Fix this by expanding sugar when present in a diagnostic (and not one of a few special cases, like vectors). Before: t.m:5:2: error: invalid operands to binary expression ('typeof(P)' and 'typeof(F)') MAX(P, F); ^~~~~~~~~ t.m:1:78: note: instantiated from: #define MAX(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; }) ^ After: t.m:5:2: error: invalid operands to binary expression ('typeof(P)' (aka 'struct mystruct') and 'typeof(F)' (aka 'float')) MAX(P, F); ^~~~~~~~~ t.m:1:78: note: instantiated from: #define MAX(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; }) ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65081 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f1790ca8a7ece12dcdc11cd91f66bb601c0813f4 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64760 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bff5c512af8ca7ac92e974e04c06ff4f820e4ee1 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64760 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bf9a0e34c7c718081ffeafb79cd510341b2c2927 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64758 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
387616edf98739f4a0dd234c907e2b913e6a535d |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64758 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
724231a849b420feebd99b55e333c661e916858f |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix a minor bug with my previous patch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64747 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
336f26be05c30c0c65b8b518d68f04c29b43b3d2 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix a minor bug with my previous patch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64747 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
44b39837bbe5f6543afbe42245eff6957f4fe7c3 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix notes so that they are always filtered with the same logic as the last non-note diagnostic that preceeded them. This ensures that diagnostics in main files which have notes with locations in system headers get all the bits and pieces emitted or not in a unit. This fixes PR3215. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64746 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f5d2328fc849288c3a62e43d065685f516d57091 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix notes so that they are always filtered with the same logic as the last non-note diagnostic that preceeded them. This ensures that diagnostics in main files which have notes with locations in system headers get all the bits and pieces emitted or not in a unit. This fixes PR3215. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64746 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2e8a7aa7c15274813f876f4b2ca6ce38382c56c4 |
16-Feb-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Supply the header corresponding to a library builtin as a separate argument to the LIBBUILTIN macro git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64676 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b1152d842c6599e41581302a85a0f53928253add |
16-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Supply the header corresponding to a library builtin as a separate argument to the LIBBUILTIN macro git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64676 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
46558bfca05fd9ff0e4aaddb23f51ca6e199524a |
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add a new SourceManager::getInstantiationRange helper method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64606 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6678133b8ce642f93e5141f056fa643112041ad0 |
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add a new SourceManager::getInstantiationRange helper method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64606 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bc7a3cb00cca3dd84c1009ea74df12545747e99c |
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
track "just a little more" location information for macro instantiations. Now instead of just tracking the expansion history, also track the full range of the macro that got replaced. For object-like macros, this doesn't change anything. For _Pragma and function-like macros, this means we track the locations of the ')'. This is required for PR3579 because apparently GCC uses the line of the ')' of a function-like macro as the location to expand __LINE__ to. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64601 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e7fb48466afcbf2c4ccdfa658824282fdc3c512c |
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
track "just a little more" location information for macro instantiations. Now instead of just tracking the expansion history, also track the full range of the macro that got replaced. For object-like macros, this doesn't change anything. For _Pragma and function-like macros, this means we track the locations of the ')'. This is required for PR3579 because apparently GCC uses the line of the ')' of a function-like macro as the location to expand __LINE__ to. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64601 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
23d232614940858972080d808959f0645318f74e |
14-Feb-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Add -ffreestanding to suppress the implicit declaration of library builtins like printf and malloc. Fixes PR3586 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64566 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3573c0c0b44a1ac8f76a00af1bc75e94ca03d704 |
14-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Add -ffreestanding to suppress the implicit declaration of library builtins like printf and malloc. Fixes PR3586 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64566 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fb8208525a27101a3ec5b0b0aa002fc64599b22a |
14-Feb-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Define __ELF__ on FreeBSD. Patch by Roman Divacky! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64557 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2793bda429909d0c5c73334342ac69672754d801 |
14-Feb-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Define __ELF__ on FreeBSD. Patch by Roman Divacky! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64557 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c47ed4ab909515b4ba1d3630b8327e8d98743b4a |
14-Feb-2009 |
Cédric Venet <cedric.venet@laposte.net> |
Fix the build on win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64556 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ea684e699ea84e61711e279f5fa7a1b9f3d46bc2 |
14-Feb-2009 |
Cedric Venet <cedric.venet@laposte.net> |
Fix the build on win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64556 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
99de95343eb09885ab9aa898dc9dba117b40179d |
14-Feb-2009 |
Argiris Kirtzidis <akyrtzi@gmail.com> |
Define __ELF__ for linux systems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64553 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
487cdee2f5bf641af4532fe4af79545997d8f5e3 |
14-Feb-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Define __ELF__ for linux systems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64553 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d9ef724225b3f0edf54a76aae0eda4f5447d5eeb |
13-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Give TargetInfo a new IntPtrType to hold the intptr_t type for a target. Make Preprocessor.cpp define a new __INTPTR_TYPE__ macro based on this. On linux/32, set intptr_t to int, instead of long. This fixes PR3563. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64495 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
6ad474f82f0cf32e13128d89fa5ad3a37ae73530 |
13-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Give TargetInfo a new IntPtrType to hold the intptr_t type for a target. Make Preprocessor.cpp define a new __INTPTR_TYPE__ macro based on this. On linux/32, set intptr_t to int, instead of long. This fixes PR3563. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64495 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
d09b9f773b86b3057615d1cc32cbf48c4ed638d3 |
12-Feb-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Make nonfragile-abi the default for darwin's 64bit abi for objective-c programs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64386 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a30b17b90033f40bb909d630466c2a04499b7bf0 |
12-Feb-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Make nonfragile-abi the default for darwin's 64bit abi for objective-c programs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64386 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
358123c2e3098540c8c9b124a70a82785ffaf0e7 |
12-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
FileManager: - set the 'StatSysCallCache' object using a setter method instead of FileManager's constructor. This allows the cache to be installed after the FileManager object is created. - Add 'file mode' to FileEntry (useful for stat caching) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64351 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
96438f319bb07d9a40564b5e01333f82c0c8a61e |
12-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
FileManager: - set the 'StatSysCallCache' object using a setter method instead of FileManager's constructor. This allows the cache to be installed after the FileManager object is created. - Add 'file mode' to FileEntry (useful for stat caching) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64351 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
fb1beec181da8649efbe2273509316e6f7d4cc97 |
12-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
search and replaceo? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64348 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
3102c83f6eac0cbbd698471173672c3e47a6914c |
12-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
search and replaceo? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64348 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
5830b773c03657c0a53f68dee9ea8985b884aa4d |
12-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Add lightweight shim "clang::StatSysCallCache" that caches 'stat' system calls for use by FileManager. FileManager now takes a StatSysCallCache* in its constructor (which defaults to NULL). This will be used for evaluating whether or not caching 'stat' system calls in PTH is a performance win. This shim adds no observable performance impact in the case where the 'StatSysCallCache*' is null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64345 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
fc7052d4a241ee6fc70afea7c1c9560147f0a49c |
12-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Add lightweight shim "clang::StatSysCallCache" that caches 'stat' system calls for use by FileManager. FileManager now takes a StatSysCallCache* in its constructor (which defaults to NULL). This will be used for evaluating whether or not caching 'stat' system calls in PTH is a performance win. This shim adds no observable performance impact in the case where the 'StatSysCallCache*' is null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64345 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
534234c87a201b20f496a37855b30510a5f5595d |
06-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
simplify and refactor a bunch of type definition code in Preprocessor predefines buffer initialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63919 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
2b5abf515f9696912452f431c7738691cf97f4f1 |
06-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
simplify and refactor a bunch of type definition code in Preprocessor predefines buffer initialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63919 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
aab419ad381794352f65a94fe054b0cf40438617 |
06-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
don't emit any diagnostics after a fatal one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63914 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
15221422eda7bac679e38b07512feda49715ef66 |
06-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
don't emit any diagnostics after a fatal one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63914 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6d6f11ffb540320e1d04b1ef745aaee01404a8c5 |
05-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add support to the diagnostics machinery for mapping warnings and errors to 'fatal' error severity. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63894 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
da0cbc1ad4a553c4de111c1181ec7b42c5ddefce |
05-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add support to the diagnostics machinery for mapping warnings and errors to 'fatal' error severity. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63894 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
bfbfbaf0389b851f87c217880476c2a9d1474b80 |
05-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make clang agree with gcc 4.2's x86-64 predefines and settings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63849 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
06ebe862f03d584a20e581d040fe06eec3afd5b3 |
05-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make clang agree with gcc 4.2's x86-64 predefines and settings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63849 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8405e094790920196aa4af714ca5d17259b0d20d |
05-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix some differences between apple gcc and clang on darwin/x86-32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63846 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d427ad4cceab4481be0ac5cc2a190148ccc181e2 |
05-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix some differences between apple gcc and clang on darwin/x86-32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63846 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
09be81b04e4e5f8c4c57f952fb6d82dcdbb56b85 |
04-Feb-2009 |
Douglas Gregor <doug.gregor@gmail.com> |
Some name-lookup-related fixes, from Piotr Rak! - Changes Lookup*Name functions to return NamedDecls, instead of Decls. Unfortunately my recent statement that it will simplify lot of code, was not quite right, but it simplifies some... - Makes MergeLookupResult SmallPtrSet instead of vector, following Douglas suggestions. - Adds %qN format for printing qualified names to Diagnostic. - Avoids searching for using-directives in Scopes, which are not DeclScope, during unqualified name lookup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63739 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
47b9a1ca55e61e37f5a368740e29de190345acc6 |
04-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Some name-lookup-related fixes, from Piotr Rak! - Changes Lookup*Name functions to return NamedDecls, instead of Decls. Unfortunately my recent statement that it will simplify lot of code, was not quite right, but it simplifies some... - Makes MergeLookupResult SmallPtrSet instead of vector, following Douglas suggestions. - Adds %qN format for printing qualified names to Diagnostic. - Avoids searching for using-directives in Scopes, which are not DeclScope, during unqualified name lookup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63739 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
778ae2186a65d7dfd0defd8e2740dd03e32b6b3e |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Implement handling of file entry/exit notifications from GNU line markers, including maintenance of the virtual include stack. For something like this: # 42 "bar.c" 1 # 142 "bar2.c" 1 #warning zappa # 92 "bar.c" 2 #warning gonzo # 102 "foo.c" 2 #warning bonkta we now produce these three warnings: #1: In file included from foo.c:3: In file included from bar.c:42: bar2.c:143:2: warning: #warning zappa #warning zappa ^ #2: In file included from foo.c:3: bar.c:92:2: warning: #warning gonzo #warning gonzo ^ #3: foo.c:102:2: warning: #warning bonkta #warning bonkta ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63722 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
137b6a6149c53dbbcb8fba98e524d9ad0f3c8736 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Implement handling of file entry/exit notifications from GNU line markers, including maintenance of the virtual include stack. For something like this: # 42 "bar.c" 1 # 142 "bar2.c" 1 #warning zappa # 92 "bar.c" 2 #warning gonzo # 102 "foo.c" 2 #warning bonkta we now produce these three warnings: #1: In file included from foo.c:3: In file included from bar.c:42: bar2.c:143:2: warning: #warning zappa #warning zappa ^ #2: In file included from foo.c:3: bar.c:92:2: warning: #warning gonzo #warning gonzo ^ #3: foo.c:102:2: warning: #warning bonkta #warning bonkta ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63722 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d0ff602b3059f07f9fea574482b81952884eec44 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make getFileCharacteristic linetable aware. line markers that play around with the 'is system header' bit now function correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63720 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6b3066780bda02e3117d71a18ca2f430ed1454af |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make getFileCharacteristic linetable aware. line markers that play around with the 'is system header' bit now function correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63720 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7bf7851dcecf9384ac67b082617ad2c49042ee4a |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
propagate linemarker flags down into the the line table, currently ignoring include stack push/pop info though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63719 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9d79ebac47ffde6a1cb312f4c09b66b1b9a397fb |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
propagate linemarker flags down into the the line table, currently ignoring include stack push/pop info though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63719 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1a2fbe45f1f98b31bacdb607554e6c5048c25a0d |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
replace gimpy linear search with svelte binary search ;-) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63717 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6c1fbe05efa93ebabae7150c915624efd8f3f715 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
replace gimpy linear search with svelte binary search ;-) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63717 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f13775452ad9ae880aacf402c4c09a9d0a3ab939 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make my atrocious linear search at least search in the order that is more likely to hit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63714 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1c4a49813bcf9e24711e5963ea6b2c27e5113a6e |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make my atrocious linear search at least search in the order that is more likely to hit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63714 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
aabd322448990573c76fdeded8df9b9978f96133 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add comment git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63712 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0e0e5da00e92a9ee97b2469009355926ee8d94bf |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add comment git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63712 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
74ae2d96e178dfde1cdd93769a9032c07ce6994b |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add the difference in the line marker phys line number and the query point to the returned presumed location. We now produce: foo.h:92:2: warning: #warning blarg! #warning blarg! ^ foo.h:93:2: warning: #warning blarg! #warning blarg! ^ foo.h:94:2: warning: #warning blarg! #warning blarg! ^ for: #line 92 "foo.h" #warning blarg! #warning blarg! #warning blarg! blarg indeed! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63710 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
fc391330724ad2d3f0f486dc7a0ce96e9e73c33b |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add the difference in the line marker phys line number and the query point to the returned presumed location. We now produce: foo.h:92:2: warning: #warning blarg! #warning blarg! ^ foo.h:93:2: warning: #warning blarg! #warning blarg! ^ foo.h:94:2: warning: #warning blarg! #warning blarg! ^ for: #line 92 "foo.h" #warning blarg! #warning blarg! #warning blarg! blarg indeed! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63710 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6f9fa5a9f18dcd10d7a5787b2cdd9809941f107c |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add really really trivial #line support, where #line now makes every location below it report as coming from the #line location. For example, with: #line 92 "foo.h" #warning blarg! #warning blarg! we now emit: foo.h:92:2: warning: #warning blarg! #warning blarg! ^ foo.h:92:2: warning: #warning blarg! #warning blarg! ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63709 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3cd949c27c63f544a081b9a750740064ddef181b |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
add really really trivial #line support, where #line now makes every location below it report as coming from the #line location. For example, with: #line 92 "foo.h" #warning blarg! #warning blarg! we now emit: foo.h:92:2: warning: #warning blarg! #warning blarg! ^ foo.h:92:2: warning: #warning blarg! #warning blarg! ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63709 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2d89c564719b2f812cafbe0d4a39d914001ff21e |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
lower the interface to getLineNumber like we did for getColumnNumber. This fixes a FIXME in SourceManager::getPresumedLoc because we now just decompose the sloc once. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63701 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
30fc933e5fbbb5f0ea60c47976d435254e378536 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
lower the interface to getLineNumber like we did for getColumnNumber. This fixes a FIXME in SourceManager::getPresumedLoc because we now just decompose the sloc once. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63701 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
e79fc8576f1d0937a6343ed438be9ed0cb0a88d6 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make SM::getColumnNumber take a predecomposed FileID/offset, which makes it clear to clients that they have to pick an instantiation or spelling location before calling it and allows optimization based on that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63698 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
7da5aea7669e6db3e593162b8a123aef06a04d07 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
make SM::getColumnNumber take a predecomposed FileID/offset, which makes it clear to clients that they have to pick an instantiation or spelling location before calling it and allows optimization based on that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63698 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
fa45efd7389808435b571222fcfbbe82352f8dbe |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
build per-fid linetable entries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63694 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
23b5dc65451b1f91c0ecf337216c8ff473308cc2 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
build per-fid linetable entries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63694 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6256b2bb3fd39020fee719410b295962c8397e4e |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
more plumbing for #line propagation. Use happy bit #3 out of FileInfo :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63672 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ac50e3427cb9eb3dc9f13f29a78f00ef3122433d |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
more plumbing for #line propagation. Use happy bit #3 out of FileInfo :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63672 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b06739c6ba693c7f71adf420e4152a6e2183e48d |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
stub out basic #line handling calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63667 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
4c4ea17d7f991516c37a871dfa4bbe5723fa85f0 |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
stub out basic #line handling calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63667 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
917d7c62453ae45d1a7913116a08fbdc581a39bd |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
reclaim my precious bit in FileInfo by ensuring that ContentCache objects are 8-byte aligned. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63630 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
00282d6e1194655a2e89f940bd6fa8484b52e666 |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
reclaim my precious bit in FileInfo by ensuring that ContentCache objects are 8-byte aligned. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63630 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8dedb840b73e0c969d2cb2e2095be9795850ef39 |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
switch SourceManager from using an std::map and std::list of ContentCache objects to using a densemap and list, and allocating the ContentCache objects from a bump pointer. This does not speed up or slow down things substantially, but gives us control over their alignment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63628 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0d0bf8cf58b35302312cc155287fde3e81eb25a7 |
03-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
switch SourceManager from using an std::map and std::list of ContentCache objects to using a densemap and list, and allocating the ContentCache objects from a bump pointer. This does not speed up or slow down things substantially, but gives us control over their alignment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63628 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8d9b1d84416ce012517da473bd37ec995f897266 |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
next round of diagnostics cleanups, moving some diags around, eliminating #defines, etc. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63318 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
19e8e2cffc19606d0f44e7c2897cd126ffd3f9b0 |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
next round of diagnostics cleanups, moving some diags around, eliminating #defines, etc. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63318 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
86a2484a87df299b1eeb17d379337eb073394f5d |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Fix -Wimplicit-function-declaration, which required some refactoring and changes in various diagnostics code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63282 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
88eccaf06f9d88191723e71bdf5ca68409393be6 |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Fix -Wimplicit-function-declaration, which required some refactoring and changes in various diagnostics code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63282 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9f69c91bc412a14c251525702871eeed90a355da |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Add method FullSourceLoc::getBufferData(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63229 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
3632a35e811096da86d957c3e6ba0e73d75782f5 |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Add method FullSourceLoc::getBufferData(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63229 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
4dfc45a9af2f73303069f0a55947b57f3bd0794b |
28-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
long long and double have 64-bit alignment on x86-64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63191 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
778601f8d38a924bba51d0239afd22b6ddde8ff7 |
28-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
long long and double have 64-bit alignment on x86-64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63191 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
91d4f7a5da30371a2c15395e48b60e455008b2e0 |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
On Windows use a BumpPtrAllocator for the UniqueFileContainer's StringMap. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63162 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
75368893339d89f6523c312b0a0eb23d438b6dff |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
On Windows use a BumpPtrAllocator for the UniqueFileContainer's StringMap. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63162 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
abe189e738c71097d14b8657ffeff3cebce6aa29 |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
FileManager: Use a BumpPtrAllocator for the StringMaps DirEntries and FileEntries. Performance impact (clang -fsyntax-only INPUTS/Cocoa_h.m): non-PTH: 0.4% improvement PTH: 0.8% improvement git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63159 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
f3eb9219cf4b4e80c377d37aed72d5d6d840b7bc |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
FileManager: Use a BumpPtrAllocator for the StringMaps DirEntries and FileEntries. Performance impact (clang -fsyntax-only INPUTS/Cocoa_h.m): non-PTH: 0.4% improvement PTH: 0.8% improvement git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63159 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
abd7e40d930d5e96458ea60df8db3aa4fd68aaf7 |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Add a some comments to designate Windows-specific/Unix-specific code. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63157 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
cb8d58b82859d2c56b679b901de38f416e2b6f48 |
28-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Add a some comments to designate Windows-specific/Unix-specific code. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63157 91177308-0d34-0410-b5e6-96231b3b80d8
ileManager.cpp
|
dd3a4fe10568b3eb4f0f24b9a51b4d70b87a0d5f |
27-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
If an input constraint refers to an output constraint, it should have the same constraint info as the output constraint. Fixes PR3417 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63127 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
03eb543cf7ebee463b33b5802b83ac92c21770cf |
27-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
If an input constraint refers to an output constraint, it should have the same constraint info as the output constraint. Fixes PR3417 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63127 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
52a425b852e4641d46073a697a48a457c8f655e2 |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Split the single monolithic DiagnosticKinds.def file into one .def file for each library. This means that adding a diagnostic to sema doesn't require all the other libraries to be rebuilt. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63111 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
20c6b3b85e186cd52d5d99489132d71d498159eb |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Split the single monolithic DiagnosticKinds.def file into one .def file for each library. This means that adding a diagnostic to sema doesn't require all the other libraries to be rebuilt. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63111 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
836774b81b2a48a2cde1e08abb1f5f5e0b21ae97 |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Introduce a new PresumedLoc class to represent the concept of a location as reported to the user and as manipulated by #line. This is what __FILE__, __INCLUDE_LEVEL__, diagnostics and other things should follow (but not dependency generation!). This patch also includes several cleanups along the way: - SourceLocation now has a dump method, and several other places that did similar things now use it. - I cleaned up some code in AnalysisConsumer, but it should probably be simplified further now that NamedDecl is better. - TextDiagnosticPrinter is now simplified and cleaned up a bit. This patch is a prerequisite for #line, but does not actually provide any #line functionality. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63098 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
b9c3f966b103f7cfe8e5e60007c4c8b38f7298eb |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Introduce a new PresumedLoc class to represent the concept of a location as reported to the user and as manipulated by #line. This is what __FILE__, __INCLUDE_LEVEL__, diagnostics and other things should follow (but not dependency generation!). This patch also includes several cleanups along the way: - SourceLocation now has a dump method, and several other places that did similar things now use it. - I cleaned up some code in AnalysisConsumer, but it should probably be simplified further now that NamedDecl is better. - TextDiagnosticPrinter is now simplified and cleaned up a bit. This patch is a prerequisite for #line, but does not actually provide any #line functionality. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63098 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
66284fdcc3076f74b2ca0fe539f293204fc12727 |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make -print-stats print stats about the amount of the SLoc address space we used up. Some interesting data: For c99-intconst-1.c: 6912762 SLocEntry's allocated, 25592386B of Sloc address space used. For cocoa.h: 26469 SLocEntry's allocated, 10278752B of Sloc address space used. For carbon.h: 27364 SLocEntry's allocated, 12398141B of Sloc address space used. Clearly 2G of sloc address space should be enough for anyone?! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63093 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
08c375cd52b8f6b6a6915a2007205bc8179f41e9 |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make -print-stats print stats about the amount of the SLoc address space we used up. Some interesting data: For c99-intconst-1.c: 6912762 SLocEntry's allocated, 25592386B of Sloc address space used. For cocoa.h: 26469 SLocEntry's allocated, 10278752B of Sloc address space used. For carbon.h: 27364 SLocEntry's allocated, 12398141B of Sloc address space used. Clearly 2G of sloc address space should be enough for anyone?! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63093 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ff7c53d543a9b3778c70467ef82396d311ffd3f5 |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
add SparcV8 asm register info support. Patch by Ben Lickly! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63085 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e957f537451794225a541ed3fd75bc3c7bb21a6f |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
add SparcV8 asm register info support. Patch by Ben Lickly! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63085 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cf36e2eb15b72a2e957933a77cf0b16411535dac |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
now that everything properly handles multiply instantiated source locations, allow creation of them. We can now say that a token was instantiated here, then here, then here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63034 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3c125576d971dfd4d81be93813a8896f302d992b |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
now that everything properly handles multiply instantiated source locations, allow creation of them. We can now say that a token was instantiated here, then here, then here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63034 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
8d92c1a4b0b12b12accec6b736b49140e4722875 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make getInstantiationLoc and getSpellingLoc handle multiply instantiated locations, and move the slow case out of line. No perf change on cocoa.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63033 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
addb797ca2b5afc1a1e82fd8d5d6eb2a592e75a9 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make getInstantiationLoc and getSpellingLoc handle multiply instantiated locations, and move the slow case out of line. No perf change on cocoa.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63033 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
18ad558fa66c113eb6d24fc528bb93b75f3ed1a2 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
fix a negated conditional in getDecomposedInstantiationLocSlowCase, which I think is rdar://6527005, and make getDecomposedSpellingLocSlowCase handle nested spelling locations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63030 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
bcd1a1b5af0b2d57b20fc393a8c3b0badc58c450 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
fix a negated conditional in getDecomposedInstantiationLocSlowCase, which I think is rdar://6527005, and make getDecomposedSpellingLocSlowCase handle nested spelling locations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63030 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d2051b43cbbcb5a549ffd24134bf0a33f83469a9 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
start plumbing together the line table information. So far we just unique the Filenames in #line directives, assigning them UIDs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63010 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5b9a504720fb52594ca3686e10eb6c0cfa2e7d62 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
start plumbing together the line table information. So far we just unique the Filenames in #line directives, assigning them UIDs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63010 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
68b28fff13a7e8e23096cd314a97b02bae06490e |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Lazily paging in file contents is a big win for PTH, strip out the old testing code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63006 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
987cd3da36e90aa21a9e290f5b383cf010762b83 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Lazily paging in file contents is a big win for PTH, strip out the old testing code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63006 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
27c0ced6e7af1b40d1e26a366eee2f95089edb47 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Check in the long promised SourceLocation rewrite. This lays the ground work for implementing #line, and fixes the "out of macro ID's" problem. There is nothing particularly tricky about the code, other than the very performance sensitive SourceManager::getFileID() method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62978 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
de7aeefc5573d669ed476d7bda7a8940d3bcadb7 |
26-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Check in the long promised SourceLocation rewrite. This lays the ground work for implementing #line, and fixes the "out of macro ID's" problem. There is nothing particularly tricky about the code, other than the very performance sensitive SourceManager::getFileID() method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62978 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ff235da00701306ec70390c3ede586c93d63ef44 |
24-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Handle the 'e' constraint. Fixes PR3385 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62923 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
79bc64ceb2586246c74b2584be56ecef00a0c9c1 |
24-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Handle the 'e' constraint. Fixes PR3385 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62923 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e1a34ba17b133e3476506c3e2f2c4524e71be61 |
23-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Added virtual method DiagnosticClient::IncludeInDiagnosticCounts(). This is used by Diagnostics to determine if a diagnostic sent to a given DiagnosticClient should be included in the count of diagnostics. The default implementation of this method returns 'true'. Implemented DiagCollector::IncludeInDiagnosticCounts() to return 'false' so that the batching of diagnostics for use with BugReporter doesn't mess up the count of real diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62873 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
cabe66811fe43835b8c5a0854552768fc53261e3 |
23-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Added virtual method DiagnosticClient::IncludeInDiagnosticCounts(). This is used by Diagnostics to determine if a diagnostic sent to a given DiagnosticClient should be included in the count of diagnostics. The default implementation of this method returns 'true'. Implemented DiagCollector::IncludeInDiagnosticCounts() to return 'false' so that the batching of diagnostics for use with BugReporter doesn't mess up the count of real diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62873 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5b747d00f5b116bb9764242c51d2a90ba7307f6f |
21-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Add a bit to IdentifierInfo that acts as a simple predicate which tells us whether Preprocessor::HandleIdentifier needs to be called. Because this method is only rarely needed, this saves a call and a bunch of random checks. This drops the time in HandleIdentifier from 3.52ms to .98ms on cocoa.h on my machine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62675 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
6a170eb3ea6d6319277becabef68eb1a26bf8766 |
21-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Add a bit to IdentifierInfo that acts as a simple predicate which tells us whether Preprocessor::HandleIdentifier needs to be called. Because this method is only rarely needed, this saves a call and a bunch of random checks. This drops the time in HandleIdentifier from 3.52ms to .98ms on cocoa.h on my machine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62675 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
e807f8520de8e3bdf61a1f0b74891aebd88539f0 |
21-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Fix: <rdar://problem/6510344> [pth] PTH slows down regular lexer considerably (when it has substantial work) Changes to IdentifierTable: - High-level summary: StringMap never owns IdentifierInfos. It just references them. - The string map now has StringMapEntry<IdentifierInfo*> instead of StringMapEntry<IdentifierInfo>. The IdentifierInfo object is allocated using the same bump pointer allocator as used by the StringMap. Changes to IdentifierInfo: - Added an extra pointer to point to the StringMapEntry<IdentifierInfo*> in the string map. This pointer will be null if the IdentifierInfo* is *only* used by the PTHLexer (that is it isn't in the StringMap). Algorithmic changes: - Non-PTH case: IdentifierInfo::get() will always consult the StringMap first to see if we have an IdentifierInfo object. If that StringMapEntry references a null pointer, we allocate a new one from the BumpPtrAllocator and update the reference in the StringMapEntry. - PTH case: We do the same lookup as with the non-PTH case, but if we don't get a hit in the StringMap we do a secondary lookup in the PTHManager for the IdentifierInfo. If we don't find an IdentifierInfo we create a new one as in the non-PTH case. If we do find and IdentifierInfo in the PTHManager, we update the StringMapEntry to refer to it so that the IdentifierInfo will be found on the next StringMap lookup. This way we only do a binary search in the PTH file at most once for a given IdentifierInfo. This greatly speeds things up for source files containing a non-trivial amount of code. Performance impact: While these changes do add some extra indirection in IdentifierTable to access an IdentifierInfo*, I saw speedups even in the non-PTH case as well. Non-PTH: For -fsyntax-only on Cocoa.h, we see a 6% speedup. PTH (with Cocoa.h in token cache): 11% speedup. I also did an experiment where we did -fsyntax-only on a source file including a large header and Cocoa.h, but the token cache did not contain the larger header. For this file, we were seeing a performance *regression* when using PTH of 3% over non-PTH. Now we are seeing a performance improvement of 9%! Tests: The serialization tests are now failing. I looked at this extensively, and I my belief is that this change is unmasking a bug rather than introducing a new one. I have disabled the serialization tests for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62636 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
ea9c26b3dbd74a1497f5609ae6e19a85f42b6073 |
21-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Fix: <rdar://problem/6510344> [pth] PTH slows down regular lexer considerably (when it has substantial work) Changes to IdentifierTable: - High-level summary: StringMap never owns IdentifierInfos. It just references them. - The string map now has StringMapEntry<IdentifierInfo*> instead of StringMapEntry<IdentifierInfo>. The IdentifierInfo object is allocated using the same bump pointer allocator as used by the StringMap. Changes to IdentifierInfo: - Added an extra pointer to point to the StringMapEntry<IdentifierInfo*> in the string map. This pointer will be null if the IdentifierInfo* is *only* used by the PTHLexer (that is it isn't in the StringMap). Algorithmic changes: - Non-PTH case: IdentifierInfo::get() will always consult the StringMap first to see if we have an IdentifierInfo object. If that StringMapEntry references a null pointer, we allocate a new one from the BumpPtrAllocator and update the reference in the StringMapEntry. - PTH case: We do the same lookup as with the non-PTH case, but if we don't get a hit in the StringMap we do a secondary lookup in the PTHManager for the IdentifierInfo. If we don't find an IdentifierInfo we create a new one as in the non-PTH case. If we do find and IdentifierInfo in the PTHManager, we update the StringMapEntry to refer to it so that the IdentifierInfo will be found on the next StringMap lookup. This way we only do a binary search in the PTH file at most once for a given IdentifierInfo. This greatly speeds things up for source files containing a non-trivial amount of code. Performance impact: While these changes do add some extra indirection in IdentifierTable to access an IdentifierInfo*, I saw speedups even in the non-PTH case as well. Non-PTH: For -fsyntax-only on Cocoa.h, we see a 6% speedup. PTH (with Cocoa.h in token cache): 11% speedup. I also did an experiment where we did -fsyntax-only on a source file including a large header and Cocoa.h, but the token cache did not contain the larger header. For this file, we were seeing a performance *regression* when using PTH of 3% over non-PTH. Now we are seeing a performance improvement of 9%! Tests: The serialization tests are now failing. I looked at this extensively, and I my belief is that this change is unmasking a bug rather than introducing a new one. I have disabled the serialization tests for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62636 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
1737bd5b2ae87c2fe2d50868c2158f7f91516cf4 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceManager::getCanonicalFileID -> getFileID. There is no longer such thing as a non-canonical FileID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62499 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
a11d61793341fea195c29a0dab3fbd74f2b39a8c |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceManager::getCanonicalFileID -> getFileID. There is no longer such thing as a non-canonical FileID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62499 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
c69327fe19231ce503fb14100c4f79759aed9435 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove the public SourceManager::getContentCacheForLoc method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62497 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2fa3ec888a980bf09e3d68435e227d3c4280bf70 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove the public SourceManager::getContentCacheForLoc method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62497 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9b94e1bc3596363efdc356e70648efb92048f6ef |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove the SourceManager:: and FullSourceLoc::getFileEntryForLoc methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62496 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
b21e5a0fdd9bd6e6c6885428798070f0a9f71295 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove the SourceManager:: and FullSourceLoc::getFileEntryForLoc methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62496 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
71e443ac92dfcabc34e8c1a9ac12a7ab602b9d37 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
SourceManager::getBufferData(SourceLocation) is dead, delete it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62495 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
31530bae788dea5c79e72a1f99a56c3f5c6aa36f |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
SourceManager::getBufferData(SourceLocation) is dead, delete it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62495 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
10ea72bafb85f8f60f3547db54c7f9f990e821a3 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
some minor cleanups to SourceManager, and eliminate the SourceManager::getBuffer(SourceLocation) method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62494 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
a90a4d4a0a365f991b92e925436ec63ef4969839 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
some minor cleanups to SourceManager, and eliminate the SourceManager::getBuffer(SourceLocation) method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62494 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
a3e9bd2f35cbaceff3258966540bd916eb98dc01 |
18-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Handle the 'X' constraint. Fixes <rdar://problem/6504897>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62446 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
775841fd76a7aead92c10cec4acb5e8a199f53b1 |
18-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Handle the 'X' constraint. Fixes <rdar://problem/6504897>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62446 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
b5c856952c206e629257552bc453cfa3975eb800 |
18-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Add sema support for symbolic names in inline asm statements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62441 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
42e1ee0702d8267d632df0fdb5c479a582877c6f |
18-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Add sema support for symbolic names in inline asm statements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62441 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ff1ba1f740734ddb0e40207462307a489cefc685 |
18-Jan-2009 |
Nate Begeman <natebegeman@mac.com> |
Fit in 80 cols git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62439 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ca0134259bd498b397c304a0f5b6a55bdaba05cc |
18-Jan-2009 |
Nate Begeman <natebegeman@mac.com> |
Fit in 80 cols git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62439 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2aaa0a0c99d5288309144eee09e9247cea6c3df5 |
18-Jan-2009 |
Nate Begeman <natebegeman@mac.com> |
Allow targets to override IntMaxTWidth git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62434 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
22b9d5a1fd9067785b62d9237bae6ee2a9b40afc |
18-Jan-2009 |
Nate Begeman <natebegeman@mac.com> |
Allow targets to override IntMaxTWidth git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62434 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
7b49cec50220b69d83616aea2d5da3ce049611a0 |
18-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Change TargetInfo::validateInputConstraint to take begin/end name iterators instead of the number of outputs. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62433 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
45b050e72d058131e6f169fe54888bb91a003fb5 |
18-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Change TargetInfo::validateInputConstraint to take begin/end name iterators instead of the number of outputs. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62433 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
10aaf53ac6464331d773706c1c66f5cc00e44817 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceLocation::getFileID to getChunkID, because it returns the chunk ID not the file ID. This exposes problems in TextDiagnosticPrinter where it should have been using the canonical file ID but wasn't. Fix these along the way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62427 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
3b4d5e955e819dd3a4bed37ea2e47d6e4cb05274 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceLocation::getFileID to getChunkID, because it returns the chunk ID not the file ID. This exposes problems in TextDiagnosticPrinter where it should have been using the canonical file ID but wasn't. Fix these along the way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62427 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
f4f776a489cfcf4fda9a8c6a16329c7a1f726561 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
this massive patch introduces a simple new abstraction: it makes "FileID" a concept that is now enforced by the compiler's type checker instead of yet-another-random-unsigned floating around. This is an important distinction from the "FileID" currently tracked by SourceLocation. *That* FileID may refer to the start of a file or to a chunk within it. The new FileID *only* refers to the file (and its #include stack and eventually #line data), it cannot refer to a chunk. FileID is a completely opaque datatype to all clients, only SourceManager is allowed to poke and prod it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62407 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
2b2453a7d8fe732561795431f39ceb2b2a832d84 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
this massive patch introduces a simple new abstraction: it makes "FileID" a concept that is now enforced by the compiler's type checker instead of yet-another-random-unsigned floating around. This is an important distinction from the "FileID" currently tracked by SourceLocation. *That* FileID may refer to the start of a file or to a chunk within it. The new FileID *only* refers to the file (and its #include stack and eventually #line data), it cannot refer to a chunk. FileID is a completely opaque datatype to all clients, only SourceManager is allowed to poke and prod it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62407 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
ac49bb4836894b75d0dc2f6fb2703ed7a8d9ff35 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make "ContentCache::Buffer" mutable to avoid a const_cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62403 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
05816591ec488a933dfecc9ff9f3cbf3c32767c2 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
make "ContentCache::Buffer" mutable to avoid a const_cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62403 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
438f939575eadda9724fe897c03328cdad1f0f81 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Make FullSourceLoc derive from SourceLocation instead of containing one. Containment is generally better than derivation, but in this case FullSourceLoc really 'isa' SourceLocation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62375 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
a50bd54164393ca3cd08016e7099bdeb531b5014 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Make FullSourceLoc derive from SourceLocation instead of containing one. Containment is generally better than derivation, but in this case FullSourceLoc really 'isa' SourceLocation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62375 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
6bca88b965b3d7a96bb97a86d93d8fdefa1d90c2 |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
elimiante FullSourceLoc::getCanonicalFileID git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62374 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
4abb87ef149b98b5762eadaaf10c1ccf35dc7c41 |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
elimiante FullSourceLoc::getCanonicalFileID git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62374 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
eccf95e552de02358e391977821137c3ecdba0d3 |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove FullSourceLoc::isFileID git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62371 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
0cf7bb937d5ed21118eeb45a93eb916723cc75a1 |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove FullSourceLoc::isFileID git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62371 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
18c8dc0eedcdf7c81028c1e29d001fd331a99a4c |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
more SourceLocation lexicon change: instead of referring to the "logical" location, refer to the "instantiation" location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62316 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
f7cf85b330bedd2877e1371fb0a83e99751ae162 |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
more SourceLocation lexicon change: instead of referring to the "logical" location, refer to the "instantiation" location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62316 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
ourceManager.cpp
|
74f6701b77493fb60c98ac036e8a24eddaa6219b |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
rename "virtual location" of a macro to "instantiation location". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62315 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
88054dee0402e4d3c1f64e6b697acc47195c0d72 |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
rename "virtual location" of a macro to "instantiation location". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62315 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
cdf600ee2c48a0299a0bc15da479b6a818c997ed |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Change some terminology in SourceLocation: instead of referring to the "physical" location of tokens, refer to the "spelling" location. This is more concrete and useful, tokens aren't really physical objects! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62309 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceLocation.cpp
ourceManager.cpp
|
df7c17a8d02fe09a3466786bae3e40fc3252687a |
16-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Change some terminology in SourceLocation: instead of referring to the "physical" location of tokens, refer to the "spelling" location. This is more concrete and useful, tokens aren't really physical objects! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62309 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceLocation.cpp
ourceManager.cpp
|
d976c3d889dc90b684c4a3fbdbe975e525db6c4f |
15-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
IdentifierInfo: - IdentifierInfo can now (optionally) have its string data not be co-located with itself. This is for use with PTH. This aspect is a little gross, as getName() and getLength() now make assumptions about a possible alternate representation of IdentifierInfo. Perhaps we should make IdentifierInfo have virtual methods? IdentifierTable: - Added class "IdentifierInfoLookup" that can be used by IdentifierTable to perform "string -> IdentifierInfo" lookups using an auxilliary data structure. This is used by PTH. - Perform tests show that IdentifierTable::get() does not slow down because of the extra check for the IdentiferInfoLookup object (the regular StringMap lookup does enough work to mitigate the impact of an extra null pointer check). - The upshot is that now that some IdentifierInfo objects might be owned by the IdentiferInfoLookup object. This should be reviewed. PTH: - Modified PTHManager::GetIdentifierInfo to *not* insert entries in IdentifierTable's string map, and instead create IdentifierInfo objects on the fly when mapping from persistent IDs to IdentifierInfos. This saves a ton of work with string copies, hashing, and StringMap lookup and resizing. This change was motivated because when processing source files in the PTH cache we don't need to do any string -> IdentifierInfo lookups. - PTHManager now subclasses IdentifierInfoLookup, allowing clients of IdentifierTable to transparently use IdentifierInfo objects managed by the PTH file. PTHManager resolves "string -> IdentifierInfo" queries by doing a binary search over a sorted table of identifier strings in the PTH file (the exact algorithm we use can be changed as needed). These changes lead to the following performance changes when using PTH on Cocoa.h: - fsyntax-only: 10% performance improvement - Eonly: 30% performance improvement git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62273 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
72b1b15ee88aac0a63e2c1dc53fe22f5ab297b20 |
15-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
IdentifierInfo: - IdentifierInfo can now (optionally) have its string data not be co-located with itself. This is for use with PTH. This aspect is a little gross, as getName() and getLength() now make assumptions about a possible alternate representation of IdentifierInfo. Perhaps we should make IdentifierInfo have virtual methods? IdentifierTable: - Added class "IdentifierInfoLookup" that can be used by IdentifierTable to perform "string -> IdentifierInfo" lookups using an auxilliary data structure. This is used by PTH. - Perform tests show that IdentifierTable::get() does not slow down because of the extra check for the IdentiferInfoLookup object (the regular StringMap lookup does enough work to mitigate the impact of an extra null pointer check). - The upshot is that now that some IdentifierInfo objects might be owned by the IdentiferInfoLookup object. This should be reviewed. PTH: - Modified PTHManager::GetIdentifierInfo to *not* insert entries in IdentifierTable's string map, and instead create IdentifierInfo objects on the fly when mapping from persistent IDs to IdentifierInfos. This saves a ton of work with string copies, hashing, and StringMap lookup and resizing. This change was motivated because when processing source files in the PTH cache we don't need to do any string -> IdentifierInfo lookups. - PTHManager now subclasses IdentifierInfoLookup, allowing clients of IdentifierTable to transparently use IdentifierInfo objects managed by the PTH file. PTHManager resolves "string -> IdentifierInfo" queries by doing a binary search over a sorted table of identifier strings in the PTH file (the exact algorithm we use can be changed as needed). These changes lead to the following performance changes when using PTH on Cocoa.h: - fsyntax-only: 10% performance improvement - Eonly: 30% performance improvement git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62273 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
c87c346a7e12dde38568053c9fc672761ee8432b |
12-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Make sure to initialize the ConstraintInfo to 0 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62068 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
0e936db474731964e72c11a4b24dd75460457f8d |
12-Jan-2009 |
Anders Carlsson <andersca@mac.com> |
Make sure to initialize the ConstraintInfo to 0 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62068 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
2bb9e6c5493c744a439c4800bcde4d0a190dee23 |
06-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
SourceManager: Implement "lazy" creation of MemBuffers for source files. - Big Idea: Source files are now mmaped when ContentCache::getBuffer() is first called. While this doesn't change the functionality when lexing regular source files, it can result in source files not being paged in when using PTH. - Performance change: - No observable difference (-fsyntax-only/-Eonly) on Cocoa.h when doing regular source lexing. - No observable time difference (-fsyntax-only/-Eonly) on Cocoa.h when using PTH. We do observe, however, a reduction of 279K in memory mapped source code (3% reduction). The majority of pages from Cocoa.h (and friends) are still being pulled in, however, because any literal will cause Preprocessor::getSpelling() to be called (causing the source for the file to get pulled in). The next possible optimization is to cache literal strings in the PTH file to avoid the need for the original header sources entirely. - Right now there is a preprocessor directive to toggle between "lazy" and "eager" creation of MemBuffers. This is not permanent, and is there in the short term to just test additional optimizations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61827 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
5b034ad3ec0aa1ad6bcb3624390f030038670705 |
06-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
SourceManager: Implement "lazy" creation of MemBuffers for source files. - Big Idea: Source files are now mmaped when ContentCache::getBuffer() is first called. While this doesn't change the functionality when lexing regular source files, it can result in source files not being paged in when using PTH. - Performance change: - No observable difference (-fsyntax-only/-Eonly) on Cocoa.h when doing regular source lexing. - No observable time difference (-fsyntax-only/-Eonly) on Cocoa.h when using PTH. We do observe, however, a reduction of 279K in memory mapped source code (3% reduction). The majority of pages from Cocoa.h (and friends) are still being pulled in, however, because any literal will cause Preprocessor::getSpelling() to be called (causing the source for the file to get pulled in). The next possible optimization is to cache literal strings in the PTH file to avoid the need for the original header sources entirely. - Right now there is a preprocessor directive to toggle between "lazy" and "eager" creation of MemBuffers. This is not permanent, and is there in the short term to just test additional optimizations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61827 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
aa7dac17162eab1e9e0b84f4b710fc3e8a06aa97 |
06-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Misc changes to SourceManager::ContentCache: - 'Buffer' is now private and must be accessed via 'getBuffer()'. This paves the way for lazily mapping in source files on demand. - Added 'getSize()' (which gets the size of the content without necessarily accessing the MemBuffer) and 'getSizeBytesMapped()'. - Modifed SourceManager to use these new methods. This reduces the number of places that actually access the MemBuffer object for a file to those that actually look at the character data. These changes result in no performance change for -fsyntax-only on Cocoa.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61782 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
c16c208e8519476d838ad11fffc8e0ecea50550d |
06-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
Misc changes to SourceManager::ContentCache: - 'Buffer' is now private and must be accessed via 'getBuffer()'. This paves the way for lazily mapping in source files on demand. - Added 'getSize()' (which gets the size of the content without necessarily accessing the MemBuffer) and 'getSizeBytesMapped()'. - Modifed SourceManager to use these new methods. This reduces the number of places that actually access the MemBuffer object for a file to those that actually look at the character data. These changes result in no performance change for -fsyntax-only on Cocoa.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61782 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
d7bc88b153eefe3a8ce8be467c966b4ea7f58944 |
05-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
instead of forcing blocks on by default, make them default to off, but let specific targets default them to on. Default blocks to on on 10.6 and later. Add a -fblocks option that allows the user to override the target's default. Use -fblocks in the various testcases that use blocks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60563 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ae0ee03fd9d36446ee70e502fdaf5ed5acec269f |
05-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
instead of forcing blocks on by default, make them default to off, but let specific targets default them to on. Default blocks to on on 10.6 and later. Add a -fblocks option that allows the user to override the target's default. Use -fblocks in the various testcases that use blocks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60563 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ddae7103e6b6651d879f55c97c16829dda1204fd |
04-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
replace useNeXTRuntimeAsDefault with a generic hook that allows targets to specify their default language options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60561 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8fc4dfb30e8bd94ca2ea7adb6cbece04fb96cd99 |
04-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
replace useNeXTRuntimeAsDefault with a generic hook that allows targets to specify their default language options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60561 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c43ec3bef6b1dc0ec66020173756c1fea95ffb3d |
27-Nov-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Fix order of evaluation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60160 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e20653219732b03294130999415fc3aa92d2336a |
27-Nov-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Fix order of evaluation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60160 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3a8f294d0c43fe0a3e1fc1612bc1a42d55172cae |
24-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Rename Selector::getName() to Selector::getAsString(), and add a new NamedDecl::getAsString() method. Change uses of Selector::getName() to just pass in a Selector where possible (e.g. to diagnostics) instead of going through an std::string. This also adds new formatters for objcinstance and objcclass as described in the dox. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59933 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
077bf5e2f48acfa9e7d69429b6e4ba86ea14896d |
24-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Rename Selector::getName() to Selector::getAsString(), and add a new NamedDecl::getAsString() method. Change uses of Selector::getName() to just pass in a Selector where possible (e.g. to diagnostics) instead of going through an std::string. This also adds new formatters for objcinstance and objcclass as described in the dox. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59933 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
b175342d2ca2d747f964604249138e04f32116b9 |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Convert IdentifierInfo's to be printed the same as DeclarationNames with implicit quotes around them. This has a bunch of follow-on effects and requires tweaking to a whole lot of code. This causes a regression in two tests (xfailed) by causing it to emit things like: Line 10: duplicate interface declaration for category 'MyClass1' ('Category1') instead of: Line 10: duplicate interface declaration for category 'MyClass1(Category1)' I will fix this in a follow-up commit. As part of this, I had to start switching stuff to use ->getDeclName() instead of Decl::getName() for consistency. This is good, but I was planning to do this as an independent patch. There will be several follow-on patches to clean up some of the mess, but this patch is already too big. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59917 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
08631c5fa053867146b5ee8be658c229f6bf127c |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Convert IdentifierInfo's to be printed the same as DeclarationNames with implicit quotes around them. This has a bunch of follow-on effects and requires tweaking to a whole lot of code. This causes a regression in two tests (xfailed) by causing it to emit things like: Line 10: duplicate interface declaration for category 'MyClass1' ('Category1') instead of: Line 10: duplicate interface declaration for category 'MyClass1(Category1)' I will fix this in a follow-up commit. As part of this, I had to start switching stuff to use ->getDeclName() instead of Decl::getName() for consistency. This is good, but I was planning to do this as an independent patch. There will be several follow-on patches to clean up some of the mess, but this patch is already too big. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59917 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
254de7dd490d1163d6dad4302f5d8b7f9ae3dc30 |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add support for inserting a DeclarationName into a diagnostic directly without calling getAsString(). This implicitly puts quotes around the name, so diagnostics need to be tweaked to accommodate this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59916 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
011bb4edf731d529da1cbf71c7c2696aaf5a054f |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add support for inserting a DeclarationName into a diagnostic directly without calling getAsString(). This implicitly puts quotes around the name, so diagnostics need to be tweaked to accommodate this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59916 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f5b269a115352029a14d81c44647f042bbf6843c |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Genericize the qualtype formating callback to support any diag argument. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59908 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3fdf4b071dc79fae778fb5f376485480756c76a3 |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Genericize the qualtype formating callback to support any diag argument. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59908 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
da5c087ebf3d47b40bae2e99671ce1929156a427 |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Add support for sending QualType's directly into diags and convert two diags over to use this. QualTypes implicitly print single quotes around them for uniformity and future extension. Doing this requires a little function pointer dance to prevent libbasic from depending on libast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59907 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
22caddc91d2f6186739c6b20ec58ed38cd68e595 |
23-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Add support for sending QualType's directly into diags and convert two diags over to use this. QualTypes implicitly print single quotes around them for uniformity and future extension. Doing this requires a little function pointer dance to prevent libbasic from depending on libast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59907 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
fd9f2acf08cdc747bccfe6642c8a2d52d1c1cf89 |
22-Nov-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Implement a %plural modifier for complex plural forms in diagnostics. Use it in the overload diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59871 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e4c452c4c7b9124fe94a96f559ff077d59cdf996 |
22-Nov-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Implement a %plural modifier for complex plural forms in diagnostics. Use it in the overload diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59871 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
9943e982658785c2c0ecc3af88a1c0111e9b7749 |
22-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Split the DiagnosticInfo class into two disjoint classes: one for building up the diagnostic that is in flight (DiagnosticBuilder) and one for pulling structured information out of the diagnostic when formatting and presenting it. There is no functionality change with this patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59849 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
3cbfe2c4159e0a219ae660d50625c013aa4afbd0 |
22-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Split the DiagnosticInfo class into two disjoint classes: one for building up the diagnostic that is in flight (DiagnosticBuilder) and one for pulling structured information out of the diagnostic when formatting and presenting it. There is no functionality change with this patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59849 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a7021ee6987ae13adedcae2b37f6d820cd8ac07e |
21-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Add the concept of "modifiers" to the clang diagnostic format strings. This allows us to have considerable flexibility in how these things are displayed and provides extra information that allows us to merge away diagnostics that are very similar. Diagnostic modifiers are a string of characters with the regex [-a-z]+ that occur between the % and digit. They may optionally have an argument that can parameterize them. For now, I've added two example modifiers. One is a very useful tool that allows you to factor commonality across diagnostics that need single words or phrases combined. Basically you can use %select{a|b|c}4 with with an integer argument that selects either a/b/c based on an integer value in the range [0..3). The second modifier is also an integer modifier, aimed to help English diagnostics handle plurality. "%s3" prints to 's' if integer argument #3 is not 1, otherwise it prints to nothing. I'm fully aware that 's' is an English concept and doesn't apply to all situations (mouse vs mice). However, this is very useful and we can add other crazy modifiers once we add support for polish! ;-) I converted a couple C++ diagnostics over to use this as an example, I'd appreciate it if others could merge the other likely candiates. If you have other modifiers that you want, lets talk on cfe-dev. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59803 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
af7ae4e8160fc5c23e471f2125b3fe5911e3532a |
21-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Add the concept of "modifiers" to the clang diagnostic format strings. This allows us to have considerable flexibility in how these things are displayed and provides extra information that allows us to merge away diagnostics that are very similar. Diagnostic modifiers are a string of characters with the regex [-a-z]+ that occur between the % and digit. They may optionally have an argument that can parameterize them. For now, I've added two example modifiers. One is a very useful tool that allows you to factor commonality across diagnostics that need single words or phrases combined. Basically you can use %select{a|b|c}4 with with an integer argument that selects either a/b/c based on an integer value in the range [0..3). The second modifier is also an integer modifier, aimed to help English diagnostics handle plurality. "%s3" prints to 's' if integer argument #3 is not 1, otherwise it prints to nothing. I'm fully aware that 's' is an English concept and doesn't apply to all situations (mouse vs mice). However, this is very useful and we can add other crazy modifiers once we add support for polish! ;-) I converted a couple C++ diagnostics over to use this as an example, I'd appreciate it if others could merge the other likely candiates. If you have other modifiers that you want, lets talk on cfe-dev. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59803 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e46b8797fa40245512e73af79c497328e9d606b5 |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Allow sending IdentifierInfo*'s into Diagnostics without turning them into strings first. This should allow removal of a bunch of II->getName() calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59601 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
43b628cd47ecdc3caf640d79b3ad7ecef0f2c285 |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Allow sending IdentifierInfo*'s into Diagnostics without turning them into strings first. This should allow removal of a bunch of II->getName() calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59601 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
68f621cb6c43392e164c6fdbda71bc8f3b94962b |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add direct support for signed and unsigned integer arguments to diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59598 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
30bc96544346bea42921cf6837e66cef80d664b4 |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add direct support for signed and unsigned integer arguments to diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59598 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
be8e5a477c5a51ff39a1c0cfec253b67bfb97ca4 |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
rewrite FormatDiagnostic to be less gross and a lot more efficient. This also makes it illegal to have bare '%'s in diagnostics. If you want a % in a diagnostic, use %%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59596 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
f4c839657742b823cea1a95b18422f1ba74d3ddd |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
rewrite FormatDiagnostic to be less gross and a lot more efficient. This also makes it illegal to have bare '%'s in diagnostics. If you want a % in a diagnostic, use %%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59596 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0cb74051d520bf8c70063e03f59b45fc3226734e |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
implement a transparent optimization with the diagnostics stuff: const char*'s are now not converted to std::strings when the diagnostic is formed, we just hold onto their pointer and format as needed. This commit makes DiagnosticClient::FormatDiagnostic even more of a mess, I'll fix it in the next commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59593 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
73d2a1b05bb04ab0136af374ddaa5d4602d4c939 |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
implement a transparent optimization with the diagnostics stuff: const char*'s are now not converted to std::strings when the diagnostic is formed, we just hold onto their pointer and format as needed. This commit makes DiagnosticClient::FormatDiagnostic even more of a mess, I'll fix it in the next commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59593 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
96a32ddc1349db9772d01530425bca2af481f0a2 |
18-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Extend DeclarationName to support C++ overloaded operators, e.g., operator+, directly, using the same mechanism as all other special names. Removed the "special" identifiers for the overloaded operators from the identifier table and IdentifierInfo data structure. IdentifierInfo is back to representing only real identifiers. Added a new Action, ActOnOperatorFunctionIdExpr, that builds an expression from an parsed operator-function-id (e.g., "operator +"). ActOnIdentifierExpr used to do this job, but operator-function-ids are no longer represented by IdentifierInfo's. Extended Declarator to store overloaded operator names. Sema::GetNameForDeclarator now knows how to turn the operator name into a DeclarationName for the overloaded operator. Except for (perhaps) consolidating the functionality of ActOnIdentifier, ActOnOperatorFunctionIdExpr, and ActOnConversionFunctionExpr into a common routine that builds an appropriate DeclRefExpr by looking up a DeclarationName, all of the work on normalizing declaration names should be complete with this commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59526 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
e94ca9e4371c022329270436b3dd77adc4ddfa8f |
18-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Extend DeclarationName to support C++ overloaded operators, e.g., operator+, directly, using the same mechanism as all other special names. Removed the "special" identifiers for the overloaded operators from the identifier table and IdentifierInfo data structure. IdentifierInfo is back to representing only real identifiers. Added a new Action, ActOnOperatorFunctionIdExpr, that builds an expression from an parsed operator-function-id (e.g., "operator +"). ActOnIdentifierExpr used to do this job, but operator-function-ids are no longer represented by IdentifierInfo's. Extended Declarator to store overloaded operator names. Sema::GetNameForDeclarator now knows how to turn the operator name into a DeclarationName for the overloaded operator. Except for (perhaps) consolidating the functionality of ActOnIdentifier, ActOnOperatorFunctionIdExpr, and ActOnConversionFunctionExpr into a common routine that builds an appropriate DeclRefExpr by looking up a DeclarationName, all of the work on normalizing declaration names should be complete with this commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59526 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
6948ae68efb71fc0ef50fbf240c3cc2ce8b97b2d |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
This reworks some of the Diagnostic interfaces a bit to change how diagnostics are formed. In particular, a diagnostic with all its strings and ranges is now packaged up and sent to DiagnosticClients as a DiagnosticInfo instead of as a ton of random stuff. This has the benefit of simplifying the interface, making it more extensible, and allowing us to do more checking for things like access past the end of the various arrays passed in. In addition to introducing DiagnosticInfo, this also substantially changes how Diagnostic::Report works. Instead of being passed in all of the info required to issue a diagnostic, Report now takes only the required info (a location and ID) and returns a fresh DiagnosticInfo *by value*. The caller is then free to stuff strings and ranges into the DiagnosticInfo with the << operator. When the dtor runs on the DiagnosticInfo object (which should happen at the end of the statement), the diagnostic is actually emitted with all of the accumulated information. This is a somewhat tricky dance, but it means that the accumulated DiagnosticInfo is allowed to keep pointers to other expression temporaries without those pointers getting invalidated. This is just the minimal change to get this stuff working, but this will allow us to eliminate the zillions of variant "Diag" methods scattered throughout (e.g.) sema. For example, instead of calling: Diag(BuiltinLoc, diag::err_overload_no_match, typeNames, SourceRange(BuiltinLoc, RParenLoc)); We will soon be able to just do: Diag(BuiltinLoc, diag::err_overload_no_match) << typeNames << SourceRange(BuiltinLoc, RParenLoc)); This scales better to support arbitrary types being passed in (not just strings) in a type-safe way. Go operator overloading?! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59502 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
0a14eee528a901c16f0e288fbc10a3abc1660d87 |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
This reworks some of the Diagnostic interfaces a bit to change how diagnostics are formed. In particular, a diagnostic with all its strings and ranges is now packaged up and sent to DiagnosticClients as a DiagnosticInfo instead of as a ton of random stuff. This has the benefit of simplifying the interface, making it more extensible, and allowing us to do more checking for things like access past the end of the various arrays passed in. In addition to introducing DiagnosticInfo, this also substantially changes how Diagnostic::Report works. Instead of being passed in all of the info required to issue a diagnostic, Report now takes only the required info (a location and ID) and returns a fresh DiagnosticInfo *by value*. The caller is then free to stuff strings and ranges into the DiagnosticInfo with the << operator. When the dtor runs on the DiagnosticInfo object (which should happen at the end of the statement), the diagnostic is actually emitted with all of the accumulated information. This is a somewhat tricky dance, but it means that the accumulated DiagnosticInfo is allowed to keep pointers to other expression temporaries without those pointers getting invalidated. This is just the minimal change to get this stuff working, but this will allow us to eliminate the zillions of variant "Diag" methods scattered throughout (e.g.) sema. For example, instead of calling: Diag(BuiltinLoc, diag::err_overload_no_match, typeNames, SourceRange(BuiltinLoc, RParenLoc)); We will soon be able to just do: Diag(BuiltinLoc, diag::err_overload_no_match) << typeNames << SourceRange(BuiltinLoc, RParenLoc)); This scales better to support arbitrary types being passed in (not just strings) in a type-safe way. Go operator overloading?! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59502 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e9bf3e3517ebed028186d62c3be3ceb989684c7e |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
SourceManager::getLineNumber is logically const except for caching. Use mutable to make it so. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59498 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
f812a45dd93634c9300ed5533bd26b56374714a1 |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
SourceManager::getLineNumber is logically const except for caching. Use mutable to make it so. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59498 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
b034e281af9d2cb52c2606764de229c1fb825307 |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Change the diagnostics interface to take an array of pointers to strings instead of array of strings. This reduces string copying in some not-very-important cases, but paves the way for future improvements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59494 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2383b7f6aea2cb2bf2b5bfc0ec730f9354fecbbf |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Change the diagnostics interface to take an array of pointers to strings instead of array of strings. This reduces string copying in some not-very-important cases, but paves the way for future improvements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59494 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
6704b319467ad5bb8fa89aa800a7e47aba46f5cf |
17-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Eliminate all of the placeholder identifiers used for constructors, destructors, and conversion functions. The placeholders were used to work around the fact that the parser and some of Sema really wanted declarators to have simple identifiers; now, the code that deals with declarators will use DeclarationNames. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59469 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
10bd36882406cdf4805e35add1ce2f11ab9ae152 |
17-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Eliminate all of the placeholder identifiers used for constructors, destructors, and conversion functions. The placeholders were used to work around the fact that the parser and some of Sema really wanted declarators to have simple identifiers; now, the code that deals with declarators will use DeclarationNames. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59469 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
24afd4accaf5499312f05f1252463c6e0febf16d |
17-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Introduction the DeclarationName class, as a single, general method of representing the names of declarations in the C family of languages. DeclarationName is used in NamedDecl to store the name of the declaration (naturally), and ObjCMethodDecl is now a NamedDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59441 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
2e1cd4264d363ca869bf37ef160902f211d21b8c |
17-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Introduction the DeclarationName class, as a single, general method of representing the names of declarations in the C family of languages. DeclarationName is used in NamedDecl to store the name of the declaration (naturally), and ObjCMethodDecl is now a NamedDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59441 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
5aba35c115b10a40ae55ae5e7dc558439a247117 |
16-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Fix PR3077: tokens that come from macro expansions whose macro was defined in a system header should be treated as system header tokens even if they are instantiated in a different place. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59418 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
e7f74fc1964527bcaeff1bdb979d67f8e9087097 |
16-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Fix PR3077: tokens that come from macro expansions whose macro was defined in a system header should be treated as system header tokens even if they are instantiated in a different place. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59418 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
65fedaf9bd026cf8863e24eeecade7b2a65e0030 |
14-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Add a new expression node, CXXOperatorCallExpr, which expresses a function call created in response to the use of operator syntax that resolves to an overloaded operator in C++, e.g., "str1 + str2" that resolves to std::operator+(str1, str2)". We now build a CXXOperatorCallExpr in C++ when we pick an overloaded operator. (But only for binary operators, where we actually implement overloading) I decided *not* to refactor the current CallExpr to make it abstract (with FunctionCallExpr and CXXOperatorCallExpr as derived classes). Doing so would allow us to make CXXOperatorCallExpr a little bit smaller, at the cost of making the argument and callee accessors virtual. We won't know if this is going to be a win until we can parse lots of C++ code to determine how much memory we'll save by making this change vs. the performance penalty due to the extra virtual calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59306 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
b4609806e9232593ece09ce08b630836e825865c |
14-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Add a new expression node, CXXOperatorCallExpr, which expresses a function call created in response to the use of operator syntax that resolves to an overloaded operator in C++, e.g., "str1 + str2" that resolves to std::operator+(str1, str2)". We now build a CXXOperatorCallExpr in C++ when we pick an overloaded operator. (But only for binary operators, where we actually implement overloading) I decided *not* to refactor the current CallExpr to make it abstract (with FunctionCallExpr and CXXOperatorCallExpr as derived classes). Doing so would allow us to make CXXOperatorCallExpr a little bit smaller, at the cost of making the argument and callee accessors virtual. We won't know if this is going to be a win until we can parse lots of C++ code to determine how much memory we'll save by making this change vs. the performance penalty due to the extra virtual calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59306 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
cbcb4c2ba81d6b1c0dea9d8a362755607175873c |
13-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Don't build identifiers for C++ constructors, destructors, or conversion functions. Instead, we just use a placeholder identifier for these (e.g., "<constructor>") and override NamedDecl::getName() to provide a human-readable name. This is one potential solution to the problem; another solution would be to replace the use of IdentifierInfo* in NamedDecl with a different class that deals with identifiers better. I'm also prototyping that to see how it compares, but this commit is better than what we had previously. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59193 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
7d7e6727a5de032c86dcb58ae734e7c1603c26e6 |
13-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Don't build identifiers for C++ constructors, destructors, or conversion functions. Instead, we just use a placeholder identifier for these (e.g., "<constructor>") and override NamedDecl::getName() to provide a human-readable name. This is one potential solution to the problem; another solution would be to replace the use of IdentifierInfo* in NamedDecl with a different class that deals with identifiers better. I'm also prototyping that to see how it compares, but this commit is better than what we had previously. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59193 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
9c6210b86c24a722970568f19abb8250814e9b02 |
10-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Some cleanups to the declaration/checking of overloaded operators in C++. Thanks to Sebastian for the review git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58986 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
02bcd4cd1a19121da12884aa4943226f72a81e6c |
10-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Some cleanups to the declaration/checking of overloaded operators in C++. Thanks to Sebastian for the review git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58986 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
e60e5d3eb3d09bde80882f60abc69e28ced874c6 |
06-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Parsing, ASTs, and semantic analysis for the declaration of overloaded operators in C++. Overloaded operators can be called directly via their operator-function-ids, e.g., "operator+(foo, bar)", but we don't yet implement the semantics of operator overloading to handle, e.g., "foo + bar". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58817 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
1cd1b1e987f5e2f060d7972b13d83239b36d77d6 |
06-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Parsing, ASTs, and semantic analysis for the declaration of overloaded operators in C++. Overloaded operators can be called directly via their operator-function-ids, e.g., "operator+(foo, bar)", but we don't yet implement the semantics of operator overloading to handle, e.g., "foo + bar". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58817 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
444bb8bc368f69b6240fb7c2bc6a5bdd289f8fec |
06-Nov-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
Reclaim some bits in IdentifierInfo, for later use as overloaded operator names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58806 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
5142af38ed0dd2f592cbfa00fa6e2e14dd6cc516 |
06-Nov-2008 |
Douglas Gregor <dgregor@apple.com> |
Reclaim some bits in IdentifierInfo, for later use as overloaded operator names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58806 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
7cca098a6ad3cbd4fd8bbc6cbb95b38cf7f41b84 |
02-Nov-2008 |
Eli Friedman <eli.friedman@gmail.com> |
More fallout from r58501: primary fix is some more corrections to make the types for size_t and ptrdiff_t more accurate. I think all of these are correct, but please compare the defines for __PTRDIFF_TYPE__ and __SIZE_TYPE__ to gcc to double-check; this particularly applies to those on BSD variants, since I'm not sure what they do here; I assume here that they're the same as on Linux. Fixes wchar_t to be "int", not "unsigned int" (which I think is correct on everything but Windows). Fixes ptrdiff_t to be "int" rather than "short" on PIC16; "short" is an somewhat strange choice because it normally gets promoted, and it's not consistent with the choice for size_t. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58556 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
f509d73ecf2c996e257f1a4e23c1282396b0a847 |
02-Nov-2008 |
Eli Friedman <eli.friedman@gmail.com> |
More fallout from r58501: primary fix is some more corrections to make the types for size_t and ptrdiff_t more accurate. I think all of these are correct, but please compare the defines for __PTRDIFF_TYPE__ and __SIZE_TYPE__ to gcc to double-check; this particularly applies to those on BSD variants, since I'm not sure what they do here; I assume here that they're the same as on Linux. Fixes wchar_t to be "int", not "unsigned int" (which I think is correct on everything but Windows). Fixes ptrdiff_t to be "int" rather than "short" on PIC16; "short" is an somewhat strange choice because it normally gets promoted, and it's not consistent with the choice for size_t. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58556 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
c0b56cdbaf788fd57ed0c18cf48f414b265e063f |
31-Oct-2008 |
Anders Carlsson <andersca@mac.com> |
Fix a bug that was introduced in 58501. Ideally I think we should force all targets to set these values and not have defaults. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58511 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
6a3615c90e654fce94e9cf635fb4021d5c40743e |
31-Oct-2008 |
Anders Carlsson <andersca@mac.com> |
Fix a bug that was introduced in 58501. Ideally I think we should force all targets to set these values and not have defaults. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58511 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
fa45143d9b070b5e0e76031dbba1fca99ecd06ab |
31-Oct-2008 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Made the mechanism of defining preprocessor defs for maxint, ptrdiff_t, wchar etc more generic. For some targets, long may not be equal to pointer size. For example: PIC16 has int as i16, ptr as i16 but long as i32. Also fixed a few build warnings in assert() functions in CFRefCount.cpp, CGDecl.cpp, SemaDeclCXX.cpp and ParseDeclCXX.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58501 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
31fc07df7f0fc89ebf83ca05a20b29de45a7598d |
31-Oct-2008 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Made the mechanism of defining preprocessor defs for maxint, ptrdiff_t, wchar etc more generic. For some targets, long may not be equal to pointer size. For example: PIC16 has int as i16, ptr as i16 but long as i32. Also fixed a few build warnings in assert() functions in CFRefCount.cpp, CGDecl.cpp, SemaDeclCXX.cpp and ParseDeclCXX.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58501 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
7a4864e85cd4f336dc2bd183fb058e44d304d628 |
27-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Rename Characteristic_t to CharacteristicKind git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58224 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
9d72851fec9e9c62570a027d42701562bbf29751 |
27-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Rename Characteristic_t to CharacteristicKind git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58224 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
a07708f0c359d13da434d87bc4d3927c1bc8d2a3 |
27-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the definition of __builtin_va_list on PPC, which was set to the V4 ABI, not the darwin or AIX abis. This fixes PR2904. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58222 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d599850e9e4b30e3cb2384a447cab576742e4d0e |
27-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the definition of __builtin_va_list on PPC, which was set to the V4 ABI, not the darwin or AIX abis. This fixes PR2904. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58222 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c03d2ca68a37b5a33fffd5d1a30c28337bfce31f |
26-Oct-2008 |
Oscar Fuentes <ofv@wanadoo.es> |
CMake: Builds and installs clang binary and libs (no docs yet). It must be under the `tools' subdirectory of the LLVM *source* tree. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58180 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
d2f4e5ea6e980e48c292f5ca250e99377e3ee111 |
26-Oct-2008 |
Oscar Fuentes <ofv@wanadoo.es> |
CMake: Builds and installs clang binary and libs (no docs yet). It must be under the `tools' subdirectory of the LLVM *source* tree. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58180 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
b90f3cde6b1458c40059568458b4f3fd54c1fc6e |
17-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
fix rdar://6288301: custom warnings don't respect -Werror. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57731 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
a1f23cc7f5dae8b71b8ee631994274609d35eb89 |
17-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
fix rdar://6288301: custom warnings don't respect -Werror. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57731 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
98cb2a265cf7c9be2aa876b5d22386a1c7292e3d |
16-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Add basic FreeBSD target support, patch by Roman Divacky! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57645 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fd0269d1945669355d52809f6c2e6065f77ff488 |
16-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Add basic FreeBSD target support, patch by Roman Divacky! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57645 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d2459f9d7d1f9ef540ddde2eef33af1f4de5936c |
06-Oct-2008 |
Anders Carlsson <andersca@mac.com> |
Add 'x' constraint character. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57198 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a7406d4f8ce586fcc98a2534b047b98bc8314c22 |
06-Oct-2008 |
Anders Carlsson <andersca@mac.com> |
Add 'x' constraint character. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57198 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2285e62459b94899b59ecbecd98afdd5902cf0f5 |
06-Oct-2008 |
Anders Carlsson <andersca@mac.com> |
Add the 'y' assembler constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57144 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fce0934560b0e3cc55e95e54883c0f540c98cdb6 |
06-Oct-2008 |
Anders Carlsson <andersca@mac.com> |
Add the 'y' assembler constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57144 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bd00eb855a6080ff39b720d33bbb2db7ac08f58c |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
miscellaneous cleanups git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57140 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d29b6300a70576f5996f4137536e3ca1efa8eb83 |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
miscellaneous cleanups git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57140 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3da35689ed4358d7a3ee5f8e6817e32ba0e48555 |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
move __FLT_EVAL_METHOD__, __FLT_RADIX__, and __DECIMAL_DIG__ into target indep code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57139 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
12f09260294175dc097b843d3d06d048b9cd64a3 |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
move __FLT_EVAL_METHOD__, __FLT_RADIX__, and __DECIMAL_DIG__ into target indep code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57139 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b9ff151dfeeb262872e864a3f5ab6df62ae489ea |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
it helps when I save the file before testing and committing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57138 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5db552d5c81033636f52dcfa5234dde247a4ca6f |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
it helps when I save the file before testing and committing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57138 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5c8f64a7a902b1766be1bb0c457a1834c2debe63 |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
suck the rest of the FP macros out of the targets into the PP git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57137 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e9863cab04789cd6d82453c42f6736624e0e739b |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
suck the rest of the FP macros out of the targets into the PP git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57137 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
cbed299abea9255a4e44af5e39ab28c6ef0a33ad |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
start moving fp macros over git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57134 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2db78dd977fbba8fdf24cf8a4593436c031cfbcb |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
start moving fp macros over git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57134 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1be8bb9daff92eb186b3236e14a172d86666f23a |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
move a bunch more integer sizing out of target-specific code into target indep code. Note that this changes functionality on PIC16: it defines __INT_MAX__ correctly for it, and it changes sizeof(long) to 16-bits (to match the size of pointer). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57132 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0e5d4ef3155651af17a90fdc07d9f80b33935c0c |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
move a bunch more integer sizing out of target-specific code into target indep code. Note that this changes functionality on PIC16: it defines __INT_MAX__ correctly for it, and it changes sizeof(long) to 16-bits (to match the size of pointer). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57132 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5edfe0151c889aab8979ae0efd4bbf155284ac5e |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
eliminate __USER_LABEL_PREFIX__ from the Targets.cpp file, start moving integer size #defines over to the Preprocessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57130 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9b533164570a67c81ad49f3691f02608530a042e |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
eliminate __USER_LABEL_PREFIX__ from the Targets.cpp file, start moving integer size #defines over to the Preprocessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57130 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3f6d8cf040f9186d8533561c80531b06eff146f6 |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Implement PR2773, support for __USER_LABEL_PREFIX__ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57127 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
3fdf4678935b27c3d3fd4eb10bf9f5ab98dc0d99 |
05-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
Implement PR2773, support for __USER_LABEL_PREFIX__ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57127 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
d376f6de98c5eef1991ea96949fa6776aa24b373 |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Handle minor version numbers in __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ like "10.3.9" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56873 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
079f2c467d4893a80bf0dc5344505725f42ceb87 |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Handle minor version numbers in __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ like "10.3.9" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56873 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
163819fab59758a98e110bd74101b083e1a84b20 |
30-Sep-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing include for use of atoi. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56836 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
86b76fcc78b98a5ff2029cc8e989a65442089cfc |
30-Sep-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing include for use of atoi. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56836 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c5dc8eb4a3b3d95e5e97db839801e5e5ec304f1b |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
The definition of __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ follows the target triple on darwin. For example i386-apple-darwin9 -> 1050 because darwin9 is "10.5". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56826 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8b30c412198ed004d999f0047e48f87b95bd3205 |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
The definition of __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ follows the target triple on darwin. For example i386-apple-darwin9 -> 1050 because darwin9 is "10.5". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56826 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9b96b15d76376b08b33c5d5d6a3311cf49ad09c1 |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
define __PASCAL_STRINGS__ whenever -fpascal-strings is enabled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56824 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
048dd943fc22a3ee60180d6992d744106c4c100a |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
define __PASCAL_STRINGS__ whenever -fpascal-strings is enabled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56824 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bcd60db016cf82b2c61ca5942f31f9420df82423 |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ is a darwin-specific #define git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56822 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
71af22964535d66b656b4c2de3551bf770e4164d |
30-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ is a darwin-specific #define git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56822 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
82e289167dfb72d35a798bedad2f46eede0ef572 |
29-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Make some methods const, add some helpers to FullSourceLoc, and add a dump method to FullSourceLoc! Patch by Nico Weber! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56806 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
5c38b6388dc44dcb8467a9e0f22d93db7221717e |
29-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Make some methods const, add some helpers to FullSourceLoc, and add a dump method to FullSourceLoc! Patch by Nico Weber! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56806 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
630347d66db04260aad03b144b140d59459a54b3 |
29-Sep-2008 |
Nico Weber <nicolasweber@gmx.de> |
whitespace and comment changes, to fix grammar and 80 col violations git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56776 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
48002c89578eaeb008a0bb5a10d8216e61906459 |
29-Sep-2008 |
Nico Weber <nicolasweber@gmx.de> |
whitespace and comment changes, to fix grammar and 80 col violations git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56776 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
6f04406bb068bcb54f2bb80778f2f2a633579d53 |
26-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
clean up a bunch of fixme's I added, by moving DirectoryLookup::DirType into SourceManager.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56692 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
0b9e736308af5397f558ffc8e780c438c2fdb563 |
26-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
clean up a bunch of fixme's I added, by moving DirectoryLookup::DirType into SourceManager.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56692 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7257ce2761533f83b2afcf548b999f2bb290c734 |
26-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the rest of rdar://6243860 hopefully. This requires changing FileIDInfo to whether the fileid is a 'extern c system header' in addition to whether it is a system header, most of this is spreading plumbing around. Once we have that, PPLexerChange bases its "file enter/exit" notifications to PPCallbacks to base the system header state on FileIDInfo instead of HeaderSearch. Finally, in Preprocessor::HandleIncludeDirective, mirror logic in GCC: the system headerness of a file being entered can be set due to the #includer or the #includee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56688 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
721818304ac462d8c6ce05eecd02884033db78f1 |
26-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the rest of rdar://6243860 hopefully. This requires changing FileIDInfo to whether the fileid is a 'extern c system header' in addition to whether it is a system header, most of this is spreading plumbing around. Once we have that, PPLexerChange bases its "file enter/exit" notifications to PPCallbacks to base the system header state on FileIDInfo instead of HeaderSearch. Finally, in Preprocessor::HandleIncludeDirective, mirror logic in GCC: the system headerness of a file being entered can be set due to the #includer or the #includee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56688 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
e5a80f2987b8098ac71a87fa9f5d294d29361aa8 |
23-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add x86_64 Linux target. - PR2824 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56491 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b55a42bf9b5310551319c0f752a5cfa90beca048 |
23-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add x86_64 Linux target. - PR2824 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56491 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4dbd857bedd72b95c197d939df5d6fcf7bfd8072 |
12-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add --suppress-system-warnings (on by default, use =0 to disable) - For investigating warnings in system headers / builtins. - Currently also enables the behavior that allows silent redefinition of types in system headers. Conceptually these are separate but I didn't feel it was worth two options (or changing LangOptions). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56163 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
2fe0997427d92388e66e7573f4b043e7ba285ef0 |
12-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add --suppress-system-warnings (on by default, use =0 to disable) - For investigating warnings in system headers / builtins. - Currently also enables the behavior that allows silent redefinition of types in system headers. Conceptually these are separate but I didn't feel it was worth two options (or changing LangOptions). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56163 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
ab5f114f9338c283d95c9de004cee014176d42e6 |
11-Sep-2008 |
Douglas Gregor <doug.gregor@gmail.com> |
bool is not an extension in C++ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56103 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
7de3d7940d9904b1b9fff81ecfe3fe132a71a6ef |
11-Sep-2008 |
Douglas Gregor <dgregor@apple.com> |
bool is not an extension in C++ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56103 91177308-0d34-0410-b5e6-96231b3b80d8
dentifierTable.cpp
|
762fecfd5a2597d2d03222606eafc73ae1c269f1 |
06-Sep-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Per PR2773, define __USER_LABEL_PREFIX__ for x86-32 Linux and Windows. If you're on some other platform, the correct definition for this macro would be appreciated; to find the correct definition, just run the following command: echo | gcc -dM -E - | grep USER_LABEL_PREFIX git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55869 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c0c0f70cf196513eadc010bf79d1d3cd00750d85 |
06-Sep-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Per PR2773, define __USER_LABEL_PREFIX__ for x86-32 Linux and Windows. If you're on some other platform, the correct definition for this macro would be appreciated; to find the correct definition, just run the following command: echo | gcc -dM -E - | grep USER_LABEL_PREFIX git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55869 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
157e1e6621865236a22bea1cfacae2b694abd083 |
25-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Stop asserting in TargetInfo::validateInputConstraint - Sema gives a perfectively nice error message on invalid constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55310 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
302684c5e2242c350efb3a638cd0ed1de21705e1 |
25-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Stop asserting in TargetInfo::validateInputConstraint - Sema gives a perfectively nice error message on invalid constraints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55310 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
d4faca4a39392769b2109a2b7e76c031b573086b |
23-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Add dragonfly target support, patch by Sascha Wildner git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55241 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
eac7aee3a2e8ce74274ecf8be7ab9cf04cebdf9b |
23-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Add dragonfly target support, patch by Sascha Wildner git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55241 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3454295c2de47811a2b7fae8551c11bbd8ef2aff |
23-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetInfo::useNeXTRuntimeAsDefault - Used to autoselect runtime when neither -fnext-runtime nor -fgnu-runtime is specified. - Default impl is false, all darwin targets set it to true. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55231 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
dcb4a1a6dd55fdf6c073d2761096f42e26be105a |
23-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetInfo::useNeXTRuntimeAsDefault - Used to autoselect runtime when neither -fnext-runtime nor -fgnu-runtime is specified. - Default impl is false, all darwin targets set it to true. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55231 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f90d2a60d81b9b51638bb02d31ae8f7becc4369b |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Remove duplicate define from Windows-x86 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55101 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e1bfd20bdb9875a1d8ae5444410c48d2cd6ea29 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Remove duplicate define from Windows-x86 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55101 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
23cb791936dccc9b7718eee5c6f6233d4d7ee46c |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Initial implementation of Windows x86 target; at the moment, the only difference from generic x86 is the defines. The rest is non-trivial to implement. I'm not planning on adding any more targets myself; if there are any targets anyone is currently using that are missing, feel free to add them, or ask me to add them. This concludes the work I'm planning for the TargetInfo implementations at the moment; all the other issues with TargetInfo require some API changes, and I haven't really thought it through. Some of the remaining issues: allowing targets to define size_t and wchar_t properly, adding some sort of __builtin_type_info intrinsic so we can finish clang's limits.h and float.h and get rid of a massive number of macro definitions, allowing target-specific command-line options, allowing target-specific defaults for certain command-line options like -fms-extensions, exposing vector alignment outside of the description string, exposing endianness outside of the description string, allowing targets to expose special bit-field layout requirements, exposing some sort of custom hook for call generation in CodeGen, and adding CPU selection to control defines like __SSE__. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55098 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
29a305067d2ff1213a98ddff11ba99e28760ef74 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Initial implementation of Windows x86 target; at the moment, the only difference from generic x86 is the defines. The rest is non-trivial to implement. I'm not planning on adding any more targets myself; if there are any targets anyone is currently using that are missing, feel free to add them, or ask me to add them. This concludes the work I'm planning for the TargetInfo implementations at the moment; all the other issues with TargetInfo require some API changes, and I haven't really thought it through. Some of the remaining issues: allowing targets to define size_t and wchar_t properly, adding some sort of __builtin_type_info intrinsic so we can finish clang's limits.h and float.h and get rid of a massive number of macro definitions, allowing target-specific command-line options, allowing target-specific defaults for certain command-line options like -fms-extensions, exposing vector alignment outside of the description string, exposing endianness outside of the description string, allowing targets to expose special bit-field layout requirements, exposing some sort of custom hook for call generation in CodeGen, and adding CPU selection to control defines like __SSE__. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55098 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5fb0a02846ed1e40094703179c0f773b4081b030 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Add Linux x86-32 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55095 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0d4047b9a0e6c3b4bbe3df53b2dd59dfb3a2170c |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Add Linux x86-32 target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55095 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2b16165d8ee6a02ede96ae74a46075a1801e68d7 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
First cut at OS detection, taking advantage of the new generic targets. This approach allows adding OS-specific targets/defines/etc. without completely breaking unknown subtargets. No new subtargets yet, although I plan to add x86-Linux soon. Others can add targets that they use as needed; adding a new subtarget takes very little code. Also does some fixups for description strings; a lot of them were unspecified. I think all the ones I added are correct, but they're unverified; corrections are welcome. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55091 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
ed855cbbdfa53215c23b49064bb79579a1840fe1 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
First cut at OS detection, taking advantage of the new generic targets. This approach allows adding OS-specific targets/defines/etc. without completely breaking unknown subtargets. No new subtargets yet, although I plan to add x86-Linux soon. Others can add targets that they use as needed; adding a new subtarget takes very little code. Also does some fixups for description strings; a lot of them were unspecified. I think all the ones I added are correct, but they're unverified; corrections are welcome. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55091 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
fd5a4122b358348167894347f68214b0210004a0 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Class reorg for PPC; shouldn't be any visible changes unless I messed up somehow. This concludes the series of reorg patches for the target implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55086 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e4277985819ef48ad74e37b1770af61af3761482 |
21-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Class reorg for PPC; shouldn't be any visible changes unless I messed up somehow. This concludes the series of reorg patches for the target implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55086 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
be727fe1eb85e76bdfc431131d7eb091cceab284 |
20-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Class reorg for ARM. Shouldn't be any visible changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55042 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
a9f5496df43d0fcafc9c1e16a6ffba93cb00fe11 |
20-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Class reorg for ARM. Shouldn't be any visible changes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55042 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ff158ddbc99a1dec461bcdd2c673058b5386889c |
20-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Class hierarchy reorg for Sparc architecture. While I was there, I cleaned it up a bit, including fixing the definition of va_list; this shouldn't break anything, but anyone using Sparc should watch for regressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55041 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
01b866808f4be5eb6bd437387b5396c0cdee5495 |
20-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Class hierarchy reorg for Sparc architecture. While I was there, I cleaned it up a bit, including fixing the definition of va_list; this shouldn't break anything, but anyone using Sparc should watch for regressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55041 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
872996cafdd70080addbf012736fa5cb1fcd0cd8 |
20-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Reorganize the class hierarchy for x86 targets; shouldn't have any visible effects, but this will significantly reduce the amount of boilerplate code necessary to add subtargets. If this looks okay, I'll do the rest of the processors (PPC, Sparc, ARM) soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55036 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
618234a7481ed8da28dcdee0f997beb6e8252204 |
20-Aug-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Reorganize the class hierarchy for x86 targets; shouldn't have any visible effects, but this will significantly reduce the amount of boilerplate code necessary to add subtargets. If this looks okay, I'll do the rest of the processors (PPC, Sparc, ARM) soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55036 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
c4d84c5696346acbd6392da82ea282eb1469ac0f |
18-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Fix PR2627, support for Q constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54943 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1e2118954730cab40675d510a29400bea0d19d84 |
18-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Fix PR2627, support for Q constraint. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54943 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ebd8f0f733941871aab785716aab27cb97fdcb38 |
18-Aug-2008 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Allow targets to override description string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54914 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
364af81157a81cf34bb058a7d5b0185020e5164b |
18-Aug-2008 |
Sanjiv Gupta <sanjiv.gupta@microchip.com> |
Allow targets to override description string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54914 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
428e67629c95d368a6a9ab600be990e9fd62824b |
12-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Move some ObjC preprocessor definitions into InitializePredefinedMacros(). - Also now properly wired to -fobjc-gc, -fnext-runtime. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54661 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fba5cb12adbe95d79855e91db018b863ce48387e |
12-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Move some ObjC preprocessor definitions into InitializePredefinedMacros(). - Also now properly wired to -fobjc-gc, -fnext-runtime. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54661 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
1be1df38bc96c806d045260cd25e96f09b041c51 |
11-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add LangOptions::NeXTRuntime. - Wired to -fnext-runtime and -fgnu-runtime options. - Defaults to GNU, no autoselection for NeXT. Emit NeXT OBJC_IMAGE_INFO marker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54651 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f77ac86f4eca528a04b817d7ad7f045a47d52712 |
11-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add LangOptions::NeXTRuntime. - Wired to -fnext-runtime and -fgnu-runtime options. - Defaults to GNU, no autoselection for NeXT. Emit NeXT OBJC_IMAGE_INFO marker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54651 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e0ad215b709fba79b3a1ead9af31a6f8bd3ee77a |
11-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
More #include cleaning - Kill unnecessary #includes in .cpp files. This is an automatic sweep so some things removed are actually used, but happen to be included by a previous header. I tried to get rid of the obvious examples and this was the easiest way to trim the #includes in one fell swoop. - We now return to regularly scheduled development. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54632 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
acc5f3e42334525bf28c86471551f83dfce222d5 |
11-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
More #include cleaning - Kill unnecessary #includes in .cpp files. This is an automatic sweep so some things removed are actually used, but happen to be included by a previous header. I tried to get rid of the obvious examples and this was the easiest way to trim the #includes in one fell swoop. - We now return to regularly scheduled development. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54632 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
d2a6ac9cd5cc5153ce9a4385a1f979714091fc71 |
10-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
* Remove isInSystemHeader() from DiagClient, move it to SourceManager * Move FormatError() from TextDiagnostic up to DiagClient, remove now empty class TextDiagnostic * Make DiagClient optional for Diagnostic This fixes the following problems: * -html-diags (and probably others) does now output the same set of warnings as console clang does * nothing crashes if one forgets to call setHeaderSearch() on TextDiagnostic * some code duplication is removed git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54620 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceLocation.cpp
ourceManager.cpp
|
7bfaaaecb3113f955db31e8d8a51acffd1bc0c27 |
10-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
* Remove isInSystemHeader() from DiagClient, move it to SourceManager * Move FormatError() from TextDiagnostic up to DiagClient, remove now empty class TextDiagnostic * Make DiagClient optional for Diagnostic This fixes the following problems: * -html-diags (and probably others) does now output the same set of warnings as console clang does * nothing crashes if one forgets to call setHeaderSearch() on TextDiagnostic * some code duplication is removed git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54620 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ourceLocation.cpp
ourceManager.cpp
|
5c3417333c5bcfba7522919f80f57277c28e3dfd |
07-Aug-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix --html-diags in driver by delaying the construction of an HTMLDiagnosticClient until after we have created the Preprocessor object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54472 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
b4398aa27da4d6919c3ae448d1ae66ba6cafc048 |
07-Aug-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix --html-diags in driver by delaying the construction of an HTMLDiagnosticClient until after we have created the Preprocessor object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54472 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
103baef5578a53a39ed11d8ef86c937f258d7dcb |
05-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add EXTWARN Diagnostic class. - Like EXTENSION but always generates a warning (even without -pedantic). - Updated ptr -> int, int -> ptr, and incompatible cast warnings to be EXTWARN. - Other EXTENSION level diagnostics should be audited for upgrade. - Updated several test cases to fix code which produced unanticipated warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54335 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
4489fe10fa073eb326e2c8906db170f009050911 |
05-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add EXTWARN Diagnostic class. - Like EXTENSION but always generates a warning (even without -pedantic). - Updated ptr -> int, int -> ptr, and incompatible cast warnings to be EXTWARN. - Other EXTENSION level diagnostics should be audited for upgrade. - Updated several test cases to fix code which produced unanticipated warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54335 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
82b2628ab6e3a178edde5f2aaac8a3f7400315ce |
22-Jul-2008 |
Anders Carlsson <andersca@mac.com> |
Always define __SIZE_TYPE__ as long unsigned int. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53922 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
8b7c9fb2efc4c72c24989c211cf8e877c2a2b3a1 |
22-Jul-2008 |
Anders Carlsson <andersca@mac.com> |
Always define __SIZE_TYPE__ as long unsigned int. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53922 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
fd7bf3a436a4bc7ea6c688ac1d8145871a43836f |
07-Jul-2008 |
Nuno Lopes <nunoplopes@sapo.pt> |
add x86 EDI register alias git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53170 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9d294801746366014e77f5d811e026bf59d4a8b1 |
07-Jul-2008 |
Nuno Lopes <nunoplopes@sapo.pt> |
add x86 EDI register alias git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53170 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
e531db8b474daf0b1d5e18dc4dceff0e8d035a76 |
05-Jul-2008 |
Nuno Lopes <nunoplopes@sapo.pt> |
move the linux predefined macro definition to the TargetInfo, where it really belongs git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53149 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
551d5e9811c0e68496bb2842163c6d99138d6ef9 |
05-Jul-2008 |
Nuno Lopes <nunoplopes@sapo.pt> |
move the linux predefined macro definition to the TargetInfo, where it really belongs git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53149 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
4a712856198f6e5264fff4f221cd2178a71ff539 |
04-Jun-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Make the width and alignment for long double consistent with the hardcoded data layout in getTargetDescription. Hopefully fixes a test failure. Of course, this should be fixed properly, but that's a bigger fix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51948 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
5aa4fd65efe3bda6080009fffba747450f34536e |
04-Jun-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Make the width and alignment for long double consistent with the hardcoded data layout in getTargetDescription. Hopefully fixes a test failure. Of course, this should be fixed properly, but that's a bigger fix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51948 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
3a22b7c929a8f727fcee2b49a0a34616fdfabe6e |
29-May-2008 |
Chris Lattner <sabre@nondot.org> |
Implement support for -w, which silences all warnings. PR2384. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51683 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5b4681c8ef65808ec4d72ab6081efd24d53d4969 |
29-May-2008 |
Chris Lattner <sabre@nondot.org> |
Implement support for -w, which silences all warnings. PR2384. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51683 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
1dee5c5850b0d07e7804bd629251f28ce05bd5c4 |
25-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Make sure to define __sparc__ on Solaris; this should "fix" test/Codegen/mandel.c on Solaris. :-) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51554 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
bf0c9bdd492662e637b6b8eef0ccc23d211ad883 |
25-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Make sure to define __sparc__ on Solaris; this should "fix" test/Codegen/mandel.c on Solaris. :-) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51554 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d401189a004e9309d9ae1068ff09b34c085bccaf |
20-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Missed an include. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51321 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2553126e29fbb846e71bfbfc93e5c63f2f05b0c6 |
20-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Missed an include. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51321 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
2fde2a539de69c16c8f2e2b7cdef9984883d2301 |
20-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Minor correction for PPC targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51320 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d37f0b82f1d86f79bb4be3afae24e5b792f2e074 |
20-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Minor correction for PPC targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51320 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
0b7b1cb2169742c4027d2b1db74788fa55f5da97 |
20-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Some small changes to make the target info a bit more accurate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51319 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
61538a7d1336f3ef3cb81e09f11a1cbb282bcf81 |
20-May-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Some small changes to make the target info a bit more accurate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51319 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
e5fde95f3d9eb09104838f7acd0ec58ecfcf6f9f |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
set long/pointers to 64-bits on ppc64/x86-64 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50891 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
f291b10fa99ed1c82256b7600911c09e82021205 |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
set long/pointers to 64-bits on ppc64/x86-64 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50891 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
727b3c4572f4107706b7530dbc1c3be668e42717 |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
parameterize pointer size/align better without doing virtual method calls in normal case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50890 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
927686fe8c968ca786fa44d2353eebf59c4f5b8a |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
parameterize pointer size/align better without doing virtual method calls in normal case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50890 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
481dcf2bfc797afdb119f76afa88941574f78f94 |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
parameterize long long. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50887 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
ec10f5886526124ba733fbd0ef8665d576285daa |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
parameterize long long. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50887 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
e0efe2ef8f5758fe7fad7b005b4f69906b6c0e34 |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
correctly parameterize long, patch by Nate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50886 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
8059e997ee05e4aa87f7e21fed630429a140ee53 |
09-May-2008 |
Chris Lattner <sabre@nondot.org> |
correctly parameterize long, patch by Nate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50886 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
85970f3f71b583df8ad9cbb66bc117728f797d7c |
08-May-2008 |
Chris Lattner <sabre@nondot.org> |
Add basic support for the pic-* target triples and add support for targets that do not support recursion (and thus codegen stack variables as globals). Patch contributed by Alireza Moshtaghi! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50844 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
2621fd1d6d3c5eadcae246859f62738645df7540 |
08-May-2008 |
Chris Lattner <sabre@nondot.org> |
Add basic support for the pic-* target triples and add support for targets that do not support recursion (and thus codegen stack variables as globals). Patch contributed by Alireza Moshtaghi! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50844 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
argets.cpp
|
2658c4a2dc159938dede447db2c858657055e17e |
29-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Add -fobjc-gc and -fobjc-gc-only options to the driver. Add corresponding enum in LangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50387 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
|
01d9dbf4ae627e2ba42fc23485789a33fa296516 |
29-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Add -fobjc-gc and -fobjc-gc-only options to the driver. Add corresponding enum in LangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50387 91177308-0d34-0410-b5e6-96231b3b80d8
angOptions.cpp
|
d229d965d39c529a4dd3ac820824ec4309b86a44 |
24-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Have ValidateOutputConstraint return false instead of firing an assertion when processing a constraint we don't understand. This allows the frontend to gracefully fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50213 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
5ab201a324b2153ce151904d397c05fab798e0bc |
24-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Have ValidateOutputConstraint return false instead of firing an assertion when processing a constraint we don't understand. This allows the frontend to gracefully fail. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50213 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
222823af47fae8933a3896fca70d780df8f3ea4f |
22-Apr-2008 |
Nate Begeman <natebegeman@mac.com> |
Add some basic ARM asm constraints git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50085 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
ad487f4ef2968c5a11bb729e65fda2f2e4b155c8 |
22-Apr-2008 |
Nate Begeman <natebegeman@mac.com> |
Add some basic ARM asm constraints git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50085 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
b644405776f5d8556ed8d3163e20c2e31b78438d |
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Fix pasto, thanks to Anders for pointing this out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50055 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d0c33d3527fff8315accb7e54b1bc82d593973cb |
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Fix pasto, thanks to Anders for pointing this out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50055 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
9fd736147309aa7ba1f58ff010f506affe56c5cd |
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
add arm support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50049 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
393ff04a07d7fd9b212b2cbe398435813c73c9a1 |
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
add arm support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50049 91177308-0d34-0410-b5e6-96231b3b80d8
argets.cpp
|
d5e35f80ba99033e36b463069fd22cab6ee65d27 |
18-Apr-2008 |
Nate Begeman <natebegeman@mac.com> |
Tabs -> spaces git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49909 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
3d292065d80fd81c327ad8452625cb4e5785913c |
18-Apr-2008 |
Nate Begeman <natebegeman@mac.com> |
Tabs -> spaces git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49909 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
6017f7f4a37f3d2cb77343086083c9eb787f2788 |
18-Apr-2008 |
Nate Begeman <natebegeman@mac.com> |
Initialize default double width and alignment git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49899 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
d5e2d87d53bb578a9f99da9aa116b73ade0d31eb |
18-Apr-2008 |
Nate Begeman <natebegeman@mac.com> |
Initialize default double width and alignment git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49899 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
265a3a0fb8d2e2be2f9f81fcb6905b1df00bae18 |
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix regression in Diagnostic that caused it to not register the number of errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49686 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
d0734e56d6794181e672d705ddb6e5e1f24af4ed |
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix regression in Diagnostic that caused it to not register the number of errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49686 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
81019d79e21f8606b3c59d0d82db6df9548b0a89 |
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getCanonicalID()", "isFromSameFile", and "isFromMainFile" to compare the files of different SourceLocations. These methods correctly handle the case where a file may have multiple FileIDs due to it being large enough to be spread across several chunks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49682 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
9fd87b1db485e2f31d0e5687f9168b370d546847 |
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getCanonicalID()", "isFromSameFile", and "isFromMainFile" to compare the files of different SourceLocations. These methods correctly handle the case where a file may have multiple FileIDs due to it being large enough to be spread across several chunks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49682 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
051fe9dbf345b986c266cda1a624662de06500f2 |
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Only increment the number of diagnostics when the DiagnosticClient used is the one attached to the Diagnostic object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49677 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
06bdb3a4fa8e84721b57a86f73aa3224f5367d58 |
14-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Only increment the number of diagnostics when the DiagnosticClient used is the one attached to the Diagnostic object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49677 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
5c81ea0a41fbfff66ed47590867251267ab1e190 |
06-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
add a missing #include git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49256 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
5483bdf386ae000ca9c0761481850b005077f4cd |
06-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
add a missing #include git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49256 91177308-0d34-0410-b5e6-96231b3b80d8
argetInfo.cpp
|
54042a51eb806d310df0fc48433ca6013e345fbc |
03-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getLogicalLineNumber" and "getLogicalColumnNumber" to FullSourceLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49177 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
1758b07ef7c554b06c48a43df2edaba85e918031 |
03-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getLogicalLineNumber" and "getLogicalColumnNumber" to FullSourceLoc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49177 91177308-0d34-0410-b5e6-96231b3b80d8
ourceLocation.cpp
|
d960610330ac3824be0fa6b38713d46937934f0a |
01-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Update to match simplified llvm MemoryBuffer interfaces for files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49042 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
35de512b9cb22a234a771b417507f71a2bbb5a94 |
01-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Update to match simplified llvm MemoryBuffer interfaces for files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49042 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
2ba23586fae7fe7e97687f776c073db557948f71 |
01-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
prune dead #includes git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49033 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
be2ab45def5c856c32cb15a2a67254e15b40b0bb |
01-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
prune dead #includes git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49033 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
56f330ddf7fc28a8849dd6d88c13590aeff26d96 |
01-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
MemoryBuffer::getFile got smarter, obviating the need for readfilefast. The new MemoryBuffer doesn't "leak" file descriptors and handles the small file case efficiently. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49032 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
3c1f7b615c03e55f8aaee14a5793c917c050b373 |
01-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
MemoryBuffer::getFile got smarter, obviating the need for readfilefast. The new MemoryBuffer doesn't "leak" file descriptors and handles the small file case efficiently. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49032 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
1377e5f7517af2716ef213c1c4cecd463de05060 |
31-Mar-2008 |
Steve Naroff <snaroff@apple.com> |
Hack ReadFileFast() to raise the threshold of memory mapped files (from 4->12 pages). This is a temporary solution to avoid running out of file descriptors (which defaults to 256). Need to benchmark to understand the speed benefit. If the benefit is small, the simple solution is to avoid memory mapping files. If the benefit is significant, more thought is necessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48991 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
ff721524ec582abe6667add99c360e5ec247c736 |
31-Mar-2008 |
Steve Naroff <snaroff@apple.com> |
Hack ReadFileFast() to raise the threshold of memory mapped files (from 4->12 pages). This is a temporary solution to avoid running out of file descriptors (which defaults to 256). Need to benchmark to understand the speed benefit. If the benefit is small, the simple solution is to avoid memory mapping files. If the benefit is significant, more thought is necessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48991 91177308-0d34-0410-b5e6-96231b3b80d8
ourceManager.cpp
|
7877f2b742d4debac40f73be39d6d4b0f35b8a9e |
31-Mar-2008 |
Ted Kremenek <kremenek@apple.com> |
Added variation of the "Report" method in the class Diagnostic that takes an optional DiagnosticClient argument that differs from the client stored internally in the Diagnostic object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48986 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
615f5177095e62b36bf88f1b1b7b644295e4097b |
31-Mar-2008 |
Ted Kremenek <kremenek@apple.com> |
Added variation of the "Report" method in the class Diagnostic that takes an optional DiagnosticClient argument that differs from the client stored internally in the Diagnostic object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48986 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
|
be1a7a0f1f78bf5f919ff1e4b4ae6e8649255f26 |
16-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Make a major restructuring of the clang tree: introduce a top-level lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48402 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
angOptions.cpp
akefile
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
|
bda0b626e74513950405c27525af87e214e605e2 |
16-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Make a major restructuring of the clang tree: introduce a top-level lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48402 91177308-0d34-0410-b5e6-96231b3b80d8
iagnostic.cpp
ileManager.cpp
dentifierTable.cpp
angOptions.cpp
akefile
ourceLocation.cpp
ourceManager.cpp
argetInfo.cpp
argets.cpp
okenKinds.cpp
|