| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
do not support it.
llvm-svn: 68819
|
|
|
|
|
|
|
|
|
|
| |
- 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
llvm-svn: 68815
|
|
|
|
| |
llvm-svn: 68798
|
|
|
|
| |
llvm-svn: 68794
|
|
|
|
| |
llvm-svn: 68790
|
|
|
|
|
|
|
|
|
|
|
|
| |
improvement, source locations read from the PCH file will properly
resolve to the source files that were used to build the PCH file
itself.
Once we have the preprocessor state stored in the PCH file, source
locations that refer to macro instantiations that occur in the PCH
file should have the appropriate instantiation information.
llvm-svn: 68758
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
de-serialization of abstract syntax trees.
PCH support serializes the contents of the abstract syntax tree (AST)
to a bitstream. When the PCH file is read, declarations are serialized
as-needed. For example, a declaration of a variable "x" will be
deserialized only when its VarDecl can be found by a client, e.g.,
based on name lookup for "x" or traversing the entire contents of the
owner of "x".
This commit provides the framework for serialization and (lazy)
deserialization, along with support for variable and typedef
declarations (along with several kinds of types). More
declarations/types, along with important auxiliary structures (source
manager, preprocessor, etc.), will follow.
llvm-svn: 68732
|
|
|
|
|
|
| |
No functionality change (really).
llvm-svn: 68726
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Otherwise paths will be resolved relative to the main input file,
which is incorrect.
- I don't know how to make a reasonable test case for this with our
testing infrastructure.
- PR3395
llvm-svn: 68665
|
|
|
|
| |
llvm-svn: 68649
|
|
|
|
| |
llvm-svn: 68640
|
|
|
|
| |
llvm-svn: 68633
|
|
|
|
|
|
| |
things like " in paths etc. Found by inspection.
llvm-svn: 68632
|
|
|
|
|
|
| |
-include, but that will be fixed soon.
llvm-svn: 68625
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add -static-define option driver can use when __STATIC__ should be
defined (instead of __DYNAMIC__).
- Don't set __OPTIMIZE_SIZE__ on Os, __OPTIMIZE_SIZE__ is tied to Oz.
- Set __NO_INLINE__ following GCC 4.2.
- Set __GNU_GNU_INLINE__ or __GNU_STDC_INLINE__ following GCC 4.2.
- Set __EXCEPTIONS for Objective-C NonFragile ABI.
- Set __STRICT_ANSI__ for standard conforming modes.
- I added a clang style test case in utils for this, but its not
particularly portable and I don't think it belongs in the test
suite.
llvm-svn: 68621
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- This is pretty ugly, but the most obvious solution. Chime in if you
have a nicer one.
- The problem is that with -save-temps, clang-cc has no idea what the
name of the original input file is. However, the user expects to be
able to set breakpoints based on the input file name.
- We support this by providing a new option -main-file-name (similar
to -dumpbase used by gcc) which allows the driver to pass in the
original file name.
- <rdar://problem/6753383> building with clang using --save-temps
gets the compile unit name from the .i file...
llvm-svn: 68595
|
|
|
|
| |
llvm-svn: 68587
|
|
|
|
|
|
|
|
|
|
|
| |
- Add -pic-level clang-cc option to specify the value for the define,
updated driver to pass this.
- Added __pic__
- Added OBJC_ZEROCOST_EXCEPTIONS define while I was here (to match gcc).
llvm-svn: 68584
|
|
|
|
|
|
|
|
| |
multiple instances of an option.
Also, removed direct -ansi support from clang-cc.
llvm-svn: 68558
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang.
- We will eventually want some more driver infrastructre for this
probably.
- For now, the clang-cc interface stays relatively the same, but we
don't accept multiple instances anymore, or the [no-] variants
directly.
llvm-svn: 68550
|
|
|
|
| |
llvm-svn: 68524
|
|
|
|
|
|
|
| |
GCC ignores macro definitions after \n's or that real code depends
on this.
llvm-svn: 68511
|
|
|
|
| |
llvm-svn: 68481
|
|
|
|
|
|
| |
passed to the compiler.
llvm-svn: 68450
|
|
|
|
| |
llvm-svn: 68449
|
|
|
|
|
|
| |
Simons.
llvm-svn: 68436
|
|
|
|
| |
llvm-svn: 68369
|
|
|
|
| |
llvm-svn: 68348
|
|
|
|
|
|
|
| |
applies fix-its to error messages that occur at that specific location
in the program.
llvm-svn: 68342
|
|
|
|
| |
llvm-svn: 68330
|
|
|
|
|
|
|
| |
scenes, using the underlying diagnostic client to format the
messages.
llvm-svn: 68324
|
|
|
|
| |
llvm-svn: 68268
|
|
|
|
|
|
|
|
|
|
| |
better name) is the option that SmallTalk can use to intercept all
overflows, including unsigned. I added some testcases so we don't
break anything.
Also included is another patch from David for += and friends.
llvm-svn: 68267
|
|
|
|
|
|
| |
clang option code that is and two bug fixes.
llvm-svn: 68240
|
|
|
|
|
|
| |
Clang's test suite.
llvm-svn: 68230
|
|
|
|
|
|
| |
clang option code that is.
llvm-svn: 68221
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- <rdar://problem/6741594> [pth] don't abuse -x to drive pth
generation
- Simpler, and fixes PR3915.
Cleanup test cases for PTH:
- Update to use -emit-pth
- Removed PTH test of carbon.c and cocoa.mm; these didn't actually
verify anything, and since PTH is token based the extra coverage
(over cocoa.m) isn't particularly helpful.
- Split PTH tests in cocoa.m to cocoa-pth.m, solely to increase
available parallelism when running tests.
Ted, could you update the PTH test cases (include-pth.c and
cocoa-pth.m) to have some sort of positive check that the PTH is
getting used? "# of PTH cache hits" or "tokens read from PTH cache"
statistics would work great. :)
llvm-svn: 68189
|
|
|
|
|
|
|
| |
to generate PTH files. Soon we will remove from clang-cc the GCC-style '-x
c-header' interface for generating PTH files and push this logic to 'clang'.
llvm-svn: 68164
|
|
|
|
| |
llvm-svn: 68138
|
|
|
|
|
|
| |
low-level frontend driver.
llvm-svn: 68131
|
|
|
|
|
|
|
|
| |
- Always pass -triple to clang-cc (-arch will be removed).
- clang-cc doesn't play guess work with the target triple anymore.
llvm-svn: 68119
|
|
|
|
| |
llvm-svn: 68110
|
|
|
|
|
|
| |
This fixes <rdar://problem/6712496> Unable to disable deprecated warning.
llvm-svn: 68108
|
|
|
|
| |
llvm-svn: 68062
|
|
|
|
|
|
|
|
| |
- Not particularly elegant, but my hand is forced by gcc.
Also, tweak -ccc-print-bindings output.
llvm-svn: 68027
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Rip out various bits of logic from clang-cc's dependency file gen,
force driver to provide instead.
- -MD output now goes to proper location
<rdar://problem/6723948> clang -MD puts dep file in /tmp with wrong name
- -M and -MM still don't work correctly.
llvm-svn: 68022
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
productions (except the already broken ObjC cases like @class X,Y;) in
the parser that can produce more than one Decl return a DeclGroup instead
of a Decl, etc.
This allows elimination of the Decl::NextDeclarator field, and exposes
various clients that should look at all decls in a group, but which were
only looking at one (such as the dumper, printer, etc). These have been
fixed.
Still TODO:
1) there are some FIXME's in the code about potentially using
DeclGroup for better location info.
2) ParseObjCAtDirectives should return a DeclGroup due to @class etc.
3) I'm not sure what is going on with StmtIterator.cpp, or if it can
be radically simplified now.
4) I put a truly horrible hack in ParseTemplate.cpp.
I plan to bring up #3/4 on the mailing list, but don't plan to tackle
#1/2 in the short term.
llvm-svn: 68002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pointer. Its purpose in life is to be a glorified void*, but which does not
implicitly convert to void* or other OpaquePtr's with a different UID.
Introduce Action::DeclPtrTy which is a typedef for OpaquePtr<0>. Change the
entire parser/sema interface to use DeclPtrTy instead of DeclTy*. This
makes the C++ compiler enforce that these aren't convertible to other opaque
types.
We should also convert ExprTy, StmtTy, TypeTy, AttrTy, BaseTy, etc,
but I don't plan to do that in the short term.
The one outstanding known problem with this patch is that we lose the
bitmangling optimization where ActionResult<DeclPtrTy> doesn't know how to
bitmangle the success bit into the low bit of DeclPtrTy. I will rectify
this with a subsequent patch.
llvm-svn: 67952
|
|
|
|
| |
llvm-svn: 67923
|
|
|
|
| |
llvm-svn: 67916
|