- Sep 19, 2011
-
-
Fariborz Jahanian authored
llvm-svn: 140022
-
Erik Verbruggen authored
llvm-svn: 140017
-
Richard Smith authored
In constructors, don't generate implicit initializers for members of anonymous structs contained within anonymous unions. llvm-svn: 140015
-
Richard Smith authored
Remove function which is unused as of r139996. Thanks to David Blaikie for bringing this to my attention. llvm-svn: 140013
-
Francois Pichet authored
Do not use builtin includes if -fms-compatibility is specified. Some MSVC header files have the same name as clang's builtins, this creates clash. llvm-svn: 140009
-
- Sep 18, 2011
-
-
Francois Pichet authored
Move the "jump bypasses variable initialization" error -> warning downgrade from -fms-extensions to -fms-compatibility. llvm-svn: 140008
-
Francois Pichet authored
In Microsoft mode(-fms-compatibility), prefer an integral conversion to a floating-to-integral conversion if the integral conversion is between types of the same size. For example: void f(float); void f(int); int main { long a; f(a); } Here, MSVC will call f(int) instead of generating a compile error as clang will do in standard mode. This fixes a few errors when parsing MFC code with clang. llvm-svn: 140007
-
Richard Smith authored
has no effect since any such destructors must be trivial, and in C++11 such destructors must not be called. llvm-svn: 139997
-
Richard Smith authored
mem-initializer is specified for them, unless an in-class initializer is specified. llvm-svn: 139996
-
Richard Smith authored
Fix PR10531. Attach an initializer to anonymous unions, since the default constructor might not be trivial (if there is an in-class initializer for some member) and might be deleted. llvm-svn: 139991
-
Nico Weber authored
Fixes PR10771. llvm-svn: 139990
-
- Sep 17, 2011
-
-
Fariborz Jahanian authored
class of this method. // rdar://10109725 llvm-svn: 139989
-
Fariborz Jahanian authored
is missing. // rdar//10127639 llvm-svn: 139988
-
Francois Pichet authored
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. llvm-svn: 139987
-
Douglas Gregor authored
the AST reader), merge that header file information with whatever header file information we already have. Otherwise, we might forget something we already knew (e.g., that the header was #import'd already). llvm-svn: 139979
-
Francois Pichet authored
As per discussion with Doug Gregor on the IRC channel, introduce a new compiler switch: -fms-compatility. Microsoft specific tweaking will now fall into 2 categories: - fms-extension: Microsoft specific extensions that should never change the meaning of an otherwise well formed code. Currently map to LangOptions::Microsoft. (To be clearer, I am planning to change the name to LangOptions::MicrosoftExt). - fms-compatibility: Really a MSVC emulation mode. Map to LangOptions::MicrosoftMode. Can change the meaning of an otherwise standard conformant program. llvm-svn: 139978
-
Douglas Gregor authored
llvm-svn: 139977
-
Douglas Gregor authored
arbitrary amount of code. This forces us to stage the AST writer more strictly, ensuring that we don't assign a declaration ID to a declaration until after we're certain that no more modules will get loaded. llvm-svn: 139974
-
Francois Pichet authored
Also add a test case for the non Microsoft case because such test didn't exist. llvm-svn: 139971
-
Ted Kremenek authored
Fix massive LiveVariables regression (due to LiveVariables rewrite) by addressing two performance problems: - Speed of "merge()", which merged data flow facts. This was doing a set canonicalization on every insertion, which was super slow. To fix this, we use ImmutableSetRef. - Visit CFGBlocks in reverse postorder. This is a huge speedup, as on some test cases the algorithm would take many iterations to converge. This contains a bunch of copy-paste from UninitializedValues.cpp and ThreadSafety.cpp. The idea was to get something working first, and then refactor the common logic for all three files into a separate analysis/library entry point. llvm-svn: 139968
-
- Sep 16, 2011
-
-
Eli Friedman authored
llvm-svn: 139941
-
Anna Zaks authored
[analyzer] Refactor: make PathDiagnosticLocation responsible for validation of SourceLocations (commit 5 of ?): - Get rid of PathDiagnosticLocation(SourceRange r,..) constructor by providing a bunch of create methods. - The PathDiagnosticLocation(SourceLocation L,..), which is used by crate methods, will eventually become private. - Test difference is in the case when the report starts at the beginning of the function. We used to represent that point as a range of the very first token in the first statement. Now, it's just a single location representing the first character of the first statement. llvm-svn: 139932
-
Richard Trieu authored
Moves calls of checkArithmeticNull() from CreateBuiltinBinOp() into the individual Check*Operands() functions. llvm-svn: 139895
-
Caitlin Sadowski authored
llvm-svn: 139894
-
Douglas Gregor authored
llvm-svn: 139887
-
Richard Trieu authored
llvm-svn: 139879
-
Richard Trieu authored
LHSType and RHSType for everything. llvm-svn: 139878
-
Eli Friedman authored
Tweak *mmintrin.h so that they don't make any bad assumptions about alignment (which probably has little effect in practice, but better to get it right). Make the load in _mm_loadh_pi and _mm_loadl_pi a single LLVM IR instruction to make optimizing easier for CodeGen. rdar://10054986 llvm-svn: 139874
-
Douglas Gregor authored
#include or #import direcctives of framework headers into module imports of the corresponding framework module. llvm-svn: 139860
-
- Sep 15, 2011
-
-
Richard Trieu authored
llvm-svn: 139856
-
Douglas Gregor authored
llvm-svn: 139837
-
Fariborz Jahanian authored
instead of 'Class'. llvm-svn: 139834
-
Douglas Gregor authored
graceful than running out of stack space. llvm-svn: 139833
-
Anna Zaks authored
[analyzer] Refactor: make PathDiagnosticLocation responsible for validation of SourceLocations (commit 4 of ?): - The closing brace is always a single location, not a range. - The test case previously had a location key 57:1 followed by a range [57:1 - 57:1]. llvm-svn: 139832
-
Douglas Gregor authored
used back when we had an -import-module command-line option, but it's no longer used (or useful). llvm-svn: 139829
-
Douglas Gregor authored
llvm-svn: 139827
-
Bill Wendling authored
storage slot into helper functions. llvm-svn: 139826
-
Anna Zaks authored
[analyzer] Refactor: make PathDiagnosticLocation responsible for validation of SourceLocations (commit 2 of ?): - Fix a fixme and move the logic of creating a PathDiagnosticLocation corresponding to a ProgramPoint into a PathDiagnosticLocation constructor. - Rename PathDiagnosticLocation::create to differentiate from the added constructor. llvm-svn: 139825
-
Douglas Gregor authored
When we load the first module, make sure that we wire up the ASTConsumer to the newly-created ASTReader. This makes sure that CodeGen sees the declarations it is interested in llvm-svn: 139824
-
Fariborz Jahanian authored
in class methods with no warning. //rdar://10109725 llvm-svn: 139818
-