| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
This doesn't need to be in the headers.
llvm-svn: 212451
|
| |
|
|
|
|
| |
Just reference the data instead with shallow MemoryBuffer instances.
llvm-svn: 212450
|
| |
|
|
|
|
| |
SourceLocation is available from TypeLoc member functions.
llvm-svn: 212447
|
| |
|
|
|
|
|
|
|
| |
I misidentified the problem and did not test suffifiently. The files had
correctly been removed, but for some reason they still remained in my git
checkout. Not adding the files back to CMakeLists.txt, but rather removing
the stale files was the solution. Sorry for the unnecessary noise.
llvm-svn: 212446
|
| |
|
|
|
|
| |
This fixes the cmake builds.
llvm-svn: 212445
|
| |
|
|
| |
llvm-svn: 212442
|
| |
|
|
|
|
| |
The facility was abstracted to LLVM in r187364.
llvm-svn: 212441
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The MS ABI RTTI emission code would choose names for IR types like
%"MSRTTITypeDescriptor\02". This name is undesirable because it
requires escaping; the underlying reason for this is that the name is
unprintable. Fix this by naming it %rtti.TypeDescriptor2.
While here, stop trying to do lookups in the LLVM Module's type table.
Instead, store the IR types in MicrosoftCXXABI. Lookups by name aren't
particularly fast.
llvm-svn: 212439
|
| |
|
|
| |
llvm-svn: 212438
|
| |
|
|
|
|
|
| |
the key functions table. Don't hold references to anything within that table
across such an access.
llvm-svn: 212437
|
| |
|
|
|
|
|
| |
ExprEngine wasn't ready for SEHLeaveStmtClass. Handle it like all the
other SEH constructs by aborting.
llvm-svn: 212436
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Let's not expose ABI specific minutia inside of CodeGenModule and Type.
Instead, let's abstract it through CXXABI.
This gets rid of:
CodeGenModule::getCompleteObjectLocator,
CodeGenModule::EmitFundamentalTypeDescriptor{s,},
CodeGenModule::getMSTypeDescriptor,
CodeGenModule::getMSCompleteObjectLocator,
CGCXXABI::shouldRTTIBeUnique,
CGCXXABI::classifyRTTIUniqueness.
CGRTTI was *almost* entirely centered around providing Itanium-style
RTTI information. Instead of providing interfaces that only it
consumes, move it to the ItaniumCXXABI implementation file. This allows
it to have access to Itanium-specific implementation details without
providing useless expansion points for the Microsoft ABI side.
Differential Revision: http://reviews.llvm.org/D4261
llvm-svn: 212435
|
| |
|
|
|
|
|
|
| |
These two functions initialize the source manager and header search objects and
shouldn't be in InitPreprocessor which is concerned with priming the
preprocessor itself and predefining macros.
llvm-svn: 212434
|
| |
|
|
|
|
| |
expression because it uses 'this'. Inspired by PR20219 comment#2.
llvm-svn: 212433
|
| |
|
|
| |
llvm-svn: 212432
|
| |
|
|
|
|
|
| |
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
|