Daniel Dunbar
7d076643e7
Merge postfix attributes on record decls.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57019 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 17:33:35 +00:00
Daniel Dunbar
5e592d8890
Remove a FIXME.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57015 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 16:42:10 +00:00
Steve Naroff
39622b9ad9
Rewrite global block expressions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57004 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:38:09 +00:00
Steve Naroff
83ba14e260
- Add a convenience constructor to Type.
...
- Many rewriter modifications.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57003 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 15:04:50 +00:00
Steve Naroff
48a8c61adb
Rework SynthesizeBlockImpl() to include a constructor.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57001 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 12:09:49 +00:00
Daniel Dunbar
f7bb8b91bb
Pass postfix attributes to ActOnFields (mismarked a file).
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56993 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 02:05:12 +00:00
Daniel Dunbar
1bfe1c2129
Pass postfix attributes to ActOnFields.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56992 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 02:03:53 +00:00
Daniel Dunbar
29471a1341
Bug fix, ccc was passing -std twice.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56991 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 01:54:54 +00:00
Steve Naroff
3ad29e2542
Get the right location to insert the synthesized block literals/functions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56987 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 00:12:09 +00:00
Steve Naroff
0eb07bfde0
Add getTypeSpecStartLoc() to VarDecls and FunctionDecls.
...
This is a temporary solution to help with the block rewriter (though it certainly has general utility).
Once DeclGroup's are implemented, this SourceLocation should be stored with it (since it applies to all the decls).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56985 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-03 00:02:03 +00:00
Steve Naroff
a0b75cf582
Name changes and some cleanup of preamble.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56984 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 23:30:43 +00:00
Daniel Dunbar
ae3f4919e4
Add Builtins.def attribute for "can be a constant expression".
...
- Enabled for builtins which are always constant expressions
(__builtin_huge_val*, __builtin_inf*, __builtin_constant_p,
__builtin_classify_type, __builtin___CFStringMakeConstantString).
Added Builtin::Context::isConstantExpr.
- Currently overly simply interface which only works for builtins
whose constantexprness does not depend on their arguments.
CallExpr::isBuiltinConstantExpr now takes an ASTContext argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56983 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 23:30:31 +00:00
Daniel Dunbar
de45428f92
Add support for format string checking of object-size checking
...
versions of sprintf and friends.
- Added FIXME that this mechanism should be generalized.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56962 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 18:44:07 +00:00
Daniel Dunbar
a4275d194b
Emit error unsupported for break/continue/goto inside Obj-C exception
...
handling blocks.
- This has false positives, but at least prevents miscompiles.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56958 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 18:02:06 +00:00
Daniel Dunbar
8e45f73bae
Fix ccc handling of -mmacosx-version-min.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56956 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 17:26:37 +00:00
Steve Naroff
8af6a451ea
Changed Sema::CheckForConstantInitializer to allow global block literals.
...
This commit also includes some name changes in the blocks rewriter (no functionality change).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56955 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 17:12:56 +00:00
Daniel Dunbar
91cd320ea2
(LLVM up) Rename IRBuilder::IsNonNull -> IsNotNull.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56954 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 17:05:36 +00:00
Daniel Dunbar
147d26f281
Unbreak build: claim an extra bit for BuiltinID.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56952 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 16:40:43 +00:00
Daniel Dunbar
e553a726fa
(llvm up) If the target triple is unspecified, automatically set the
...
OS version part to that of the host on darwin.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56943 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 01:21:33 +00:00
Daniel Dunbar
14bfdfec4e
Drop code to validate OS part of target triple on darwin, too fragile.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56941 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 00:26:24 +00:00
Ted Kremenek
cc9ac41ac0
Enhance NSError** checking with analogous checking for CFErrorRef*.
...
Expand checking to include functions, not just methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56938 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 23:24:09 +00:00
Mon P Wang
946685626e
Added SSE4.1 blend intrinsics
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56936 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 23:08:39 +00:00
Ted Kremenek
c1c88b5040
Updated checker build.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56916 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 05:27:13 +00:00
Ted Kremenek
9f67edeff2
Added test case.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56915 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 05:05:46 +00:00
Ted Kremenek
8da6ca99ec
Use LVal::IsLValType(T) instead of checking to see if the type is an "lvalue" type directly.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56912 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 05:02:13 +00:00
Ted Kremenek
33bc63b9c9
Update checker build.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56909 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 02:03:02 +00:00
Daniel Dunbar
1bf3f73598
ccc: Use CCC_NATIVE=1 by default.
...
- So far this works fairly well for me for building applications
using clang as a gcc substitute. If you are using ccc for a
different purpose and this is a problem, speak up! Note you can
also use CCC_NATIVE=0 to disable.
- Also, turn CCC_ECHO off as default.
- Also, pass through -Wl, to linker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56904 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 01:10:22 +00:00
Daniel Dunbar
ad2dc71a6f
NeXT: Update to use CreateRuntimeFunction for the routines it imports.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56902 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 01:06:06 +00:00
Daniel Dunbar
f1968f2886
Add simple interface for protecting runtime functions from name
...
collisions.
- Provide CodeGenModule::CreateRuntimeFunction which guarantees that
the function it creates will have the provided name in the final
module. This allows the runtime to have its functions protected
from declarations of the same name in the source code.
- One could argue that this is a reason to abuse the llvm::Module
namespace for dealing with function redeclarations. However, that
approach seems conceptually flawed to me. This one also happens to
be somewhat more efficient.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56899 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 00:49:24 +00:00
Ted Kremenek
60a6e0ce72
Add a QualType to ConjuredSymbol to represent the type and size of the symbol.
...
Use this updated interface when invalidating arguments passed by reference; the type of symbol is of the object passed by reference, not the reference itself.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56894 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-01 00:21:14 +00:00
Ted Kremenek
b10362acd9
Support -mmacosx-version-min
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56892 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 23:40:25 +00:00
Ted Kremenek
c94e31e907
Set reproducibility back to "Always"
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56891 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 23:23:58 +00:00
Daniel Dunbar
319e792cf6
ccc: Add support for another batch of OS X linker options, including
...
-mmacosx-version-min.
One might anticipate that at some point I will just break down and go
through the man page. That seems a little too obvious.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56890 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 22:54:22 +00:00
Daniel Dunbar
869f8b6053
ccc: Infer action type upfront.
...
- More straightforward, e.g. -E should always imply action =
'preprocess' (I think).
- Pass another option through for OS X.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56884 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 21:20:51 +00:00
Chris Lattner
2a2990473f
simplify padding, just fold it into the earlier resize.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56880 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 20:53:45 +00:00
Chris Lattner
28997ec3a4
fix a potential buffer overrun that Eli noticed
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56879 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 20:51:14 +00:00
Daniel Dunbar
320a054acf
Fix help for --suppress-system-warnings
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56878 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 20:49:53 +00:00
Chris Lattner
c29bbde0a1
Document assumptions that NumericLiteralParser makes with an assertion.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56876 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 20:45:40 +00:00
Chris Lattner
079f2c467d
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
2008-09-30 20:30:12 +00:00
Chris Lattner
ba0f25f754
Finish handling of -mmacosx-version-min. If you now do something like:
...
clang -mmacosx-version-min=10.4.9 ...
you'll end up with a target triple like "i686-apple-darwin8.9".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56871 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 20:16:56 +00:00
Daniel Dunbar
c6607f8a53
scan-view: Remove some debugging prints.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56864 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 17:54:44 +00:00
Ted Kremenek
c0bb34b16d
Updated checker build.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56863 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 17:53:26 +00:00
Ted Kremenek
8fe38a6ca9
Default reproducibility to "Not applicable"
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56860 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 17:28:54 +00:00
Daniel Dunbar
abee2d789c
Add diagnostic for .{lo,hi,e,o} on odd-sized extended vectors.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56859 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 17:22:47 +00:00
Ted Kremenek
ba78cc0c68
Make "Performance" the default Radar classification for leaks. "Other" for all others (for now).
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56858 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 17:12:32 +00:00
Ted Kremenek
8ce622d787
Make a separate parameter class for "Radar classifications".
...
Do not save the radar classification to the config file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56856 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 17:00:30 +00:00
Ted Kremenek
fe6fa074db
Add "SelectionParameter" class to represent drop-down boxes.
...
Added "Classification" field to Radar filing.
Modified FileRadar.scpt to take the classification as an argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56854 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 16:37:50 +00:00
Daniel Dunbar
7000bf8f87
Change ccc to not pass -x unknown down.
...
Pass through some more Mac OS X linker options.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56853 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 16:18:31 +00:00
Ted Kremenek
480bc342cd
Conditionally load/save default parameter value from config file.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56852 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 16:11:33 +00:00
Ted Kremenek
19c8820134
Use objects to represent form parameters. This allows us to abstract away some
...
of the details of HTML rendering of form parameters, and also us with the
ability to delegate other actions (such as in the filling in of default values)
to specific parameter objects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56851 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-30 16:08:13 +00:00