| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Consolidate CXUnsavedFile argument handling in API functions to support a wider
cleanup of various file remapping schemes in the frontend.
llvm-svn: 212427
|
| |
|
|
|
|
|
|
| |
StmtDumper.cpp is called ASTDumper.cpp these days, and usually works well
for new AST nodes without changes. There's now DataRecursiveASTVisitor
in addition to RecursiveASTVisitor, and serialization wasn't mentioned.
llvm-svn: 212426
|
| |
|
|
|
|
|
| |
Codegen is still missing (and I won't work on that), but __leave is now
as implemented as __try and friends.
llvm-svn: 212425
|
| |
|
|
|
|
|
|
|
| |
Give scope a SEHTryScope bit, set that in ParseSEHTry(), and let Sema
walk the scope chain to find the SEHTry parent on __leave statements.
(They are rare enough that it seems better to do the walk instead of
giving Scope a SEHTryParent pointer -- this is similar to AtCatchScope.)
llvm-svn: 212422
|
| |
|
|
| |
llvm-svn: 212421
|
| |
|
|
| |
llvm-svn: 212418
|
| |
|
|
|
|
| |
Removed that from the RUN line, fixed obvious C++isms in the code, and moved some C++ tests into MicrosoftExtensions.cpp instead. As a drive-by, changed the line endings for MicrosoftExtensions.c to be LF instead of CRLF.
llvm-svn: 212417
|
| |
|
|
| |
llvm-svn: 212416
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This gives us back the test coverage we lost when I made
MicrosoftExtensions.c x86-only.
Reviewers: majnemer
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4401
llvm-svn: 212414
|
| |
|
|
| |
llvm-svn: 212408
|
| |
|
|
| |
llvm-svn: 212404
|
| |
|
|
| |
llvm-svn: 212396
|
| |
|
|
|
|
|
|
| |
Although these aren't strictly related to LLVM's core threading, it's
reasonable to avoid pthread usage in clang when building with
LLVM_ENABLE_THREADS disabled.
llvm-svn: 212395
|
| |
|
|
| |
llvm-svn: 212394
|
| |
|
|
| |
llvm-svn: 212393
|
| |
|
|
| |
llvm-svn: 212392
|
| |
|
|
|
|
| |
This fixes http://llvm.org/PR20204.
llvm-svn: 212389
|
| |
|
|
| |
llvm-svn: 212388
|
| |
|
|
|
|
|
| |
This type is only refcounted in a couple of places so making ownership explicit
improves clarity.
llvm-svn: 212387
|
| |
|
|
|
|
|
| |
This makes it clear that TargetInfo doesn't capture the LangOptions object,
rather uses it to apply adjustments.
llvm-svn: 212386
|
| |
|
|
|
|
|
| |
Handle 'remark' level diagnostics as warnings instead of supplemental notes,
and use a covered switch to ensure the mapping is kept up to date.
llvm-svn: 212385
|
| |
|
|
|
|
| |
Switch over LogDiagnosticPrinter and introduce an integer helper.
llvm-svn: 212384
|
| |
|
|
| |
llvm-svn: 212383
|
| |
|
|
| |
llvm-svn: 212381
|
| |
|
|
|
|
|
|
| |
This adds support for simple MSVC compatibility mode intrinsics. These
intrinsics are simple in that they are either directly passed through to the
annotated MSBuiltin intrinsic or they mirror existing GCC builtins.
llvm-svn: 212378
|
| |
|
|
| |
llvm-svn: 212373
|
| |
|
|
| |
llvm-svn: 212369
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This completes the infrastructure for the new MSBuiltin aliases in the
instruction definitions. These behave similar to the GCCBuiltin in that they
can be implicitly constructed without special handling unless needed.
With this change it is possible to annotate an LLVM intrinsic in the backend
instruction definitions and indicate it as a builtin in the Builtin*.def files
in clang via LANGBUILTIN. That will automatically pass through the instruction
much as a GCCBuiltin.
Note that there is no need for the special handling for ensuring that the
compatibility flag is enabled since the filtering on the LANGBUILTIN will
automatically prevent the intrinsic from bleeding into non-MS compatible
compiler invocations.
llvm-svn: 212359
|
| |
|
|
|
|
|
| |
These are forms that have either slipped in without being requested for
compatibility or that GCC doesn't support in the first place.
llvm-svn: 212358
|
| |
|
|
| |
llvm-svn: 212353
|
| |
|
|
| |
llvm-svn: 212339
|
| |
|
|
| |
llvm-svn: 212338
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: rafael, rnk
Reviewed By: rnk
Subscribers: rnk, cfe-commits
Differential Revision: http://reviews.llvm.org/D4357
llvm-svn: 212327
|
| |
|
|
|
|
|
|
| |
cygming.
This makes unittests run with BUILD_SHARED_LIBS on DLL platforms.
llvm-svn: 212316
|
| |
|
|
| |
llvm-svn: 212312
|
| |
|
|
| |
llvm-svn: 212311
|
| |
|
|
| |
llvm-svn: 212291
|
| |
|
|
| |
llvm-svn: 212285
|
| |
|
|
| |
llvm-svn: 212281
|
| |
|
|
|
|
|
| |
Adds support for __builtin_arm_isb. Also corrects DSB and ISB instructions
modelling by adding has-side-effects property.
llvm-svn: 212277
|
| |
|
|
|
|
| |
Patch by: Moritz Roth
llvm-svn: 212264
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Because a global created by GetOrCreateLLVMGlobal() is not finalised until later viz:
extern char a[];
char f(){ return a[5];}
char a[10];
Change MangledDeclNames to use a MapVector rather than a DenseMap so that the
Metadata is output in order of original declaration, so to make deterministic
and improve human readablity.
Differential Revision: http://reviews.llvm.org/D4176
llvm-svn: 212263
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D4176
llvm-svn: 212262
|
| |
|
|
|
|
| |
Reviewed at http://reviews.llvm.org/D4364
llvm-svn: 212261
|
| |
|
|
| |
llvm-svn: 212260
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Itanium rules are not appropriate for the MS ABI. RTTI data is
_never_ imported and thus is never available_externally. It is either
internal (if the type's linkage is internal) or linkonce_odr.
This also means that classes which inherit from dllimport'd bases force
their translation unit to duplicate the entirety of the RTTI data of
that base.
Interestingly, the complete object locator can never be referenced by
translation units which import the class.
This fixes PR20106.
llvm-svn: 212256
|
| |
|
|
|
|
|
|
|
| |
This corrects SVN r212196's naming change to use the proper prefix of
`__builtin_arm_` instead of `__builtin_`.
Thanks to Yi Kong for pointing out the incorrect naming!
llvm-svn: 212253
|
| |
|
|
|
|
|
| |
Also, forgot to say in the commit message of r212238: Library authors will
see a warning about this issue if they build with -Wsystem-headers.
llvm-svn: 212243
|
| |
|
|
|
|
|
|
|
|
| |
r210091 made initialization checking more strict in c++11 mode. LWG2193 is
about changing standard libraries to still be valid under these new rules,
but older libstdc++ (e.g. libstdc++4.6 in -D_GLIBCXX_DEBUG=1 mode, or stlport)
do not implement that yet. So fall back to the C++03 semantics for container
classes in system headers below the std namespace.
llvm-svn: 212238
|
| |
|
|
| |
llvm-svn: 212237
|