| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Now that the back-end intrinsics are more regular, there's no need for the
special handling these got in the front-end, so they can be moved to
EmitCommonNeonBuiltinExpr.
llvm-svn: 200769
|
| |
|
|
|
|
| |
since my r199902.
llvm-svn: 200760
|
| |
|
|
| |
llvm-svn: 200759
|
| |
|
|
|
|
|
|
| |
redeclaration, not just when looking them up for a use -- we need the implicit
declaration to appropriately check various properties of them (notably, whether
they're deleted).
llvm-svn: 200729
|
| |
|
|
| |
llvm-svn: 200723
|
| |
|
|
|
|
| |
zero-length arrays.
llvm-svn: 200722
|
| |
|
|
|
|
| |
In MSVC, enums are always signed unless you explicitly specify the type.
llvm-svn: 200719
|
| |
|
|
|
|
|
|
|
|
| |
llvm::sys::cas_flag is 'long' instead of 'uint32_t' on win32, because
that's what InterlockedIncrement is defined to accept.
I still don't know if we should be calling fprintf from ASTUnit.cpp
behind a getenv check.
llvm-svn: 200718
|
| |
|
|
|
|
| |
variable template until we know what the template arguments actually are.
llvm-svn: 200714
|
| |
|
|
| |
llvm-svn: 200711
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
analyzer.
Summary:
Make objects returned by CreateAnalysisConsumer expose an interface,
that allows providing a custom PathDiagnosticConsumer, so that users can have
raw data in a form easily usable from the code (unlike plist/HTML in a file).
Reviewers: jordan_rose, krememek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2556
llvm-svn: 200710
|
| |
|
|
| |
llvm-svn: 200709
|
| |
|
|
| |
llvm-svn: 200708
|
| |
|
|
|
|
|
| |
The LLVM backend now has invariant types on the various crypto-intrinsics,
because in all cases there's only really one interpretation.
llvm-svn: 200707
|
| |
|
|
| |
llvm-svn: 200685
|
| |
|
|
| |
llvm-svn: 200681
|
| |
|
|
| |
llvm-svn: 200680
|
| |
|
|
| |
llvm-svn: 200679
|
| |
|
|
| |
llvm-svn: 200678
|
| |
|
|
| |
llvm-svn: 200674
|
| |
|
|
|
|
| |
(which implemented the DR) was disabled in C++11.
llvm-svn: 200673
|
| |
|
|
| |
llvm-svn: 200672
|
| |
|
|
| |
llvm-svn: 200671
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Some lines intended to be used for testing x86_64 ABI compatibility were
not firing because lines were annotated with the wrong FileCheck prefix:
X64 vs x64
N.B. Changes beyond just changing x64 to X64 were made, presumably
because other parts of the layout engine have changed. I've verified
the changes to make sure that MSVC creates a compatible layout.
llvm-svn: 200670
|
| |
|
|
| |
llvm-svn: 200668
|
| |
|
|
|
|
| |
support.
llvm-svn: 200667
|
| |
|
|
| |
llvm-svn: 200666
|
| |
|
|
| |
llvm-svn: 200665
|
| |
|
|
|
|
| |
support for o32 and n64.
llvm-svn: 200662
|
| |
|
|
| |
llvm-svn: 200661
|
| |
|
|
| |
llvm-svn: 200659
|
| |
|
|
| |
llvm-svn: 200656
|
| |
|
|
|
|
| |
__BIG_ENDIAN__ as on other architectures.
llvm-svn: 200655
|
| |
|
|
| |
llvm-svn: 200652
|
| |
|
|
|
|
| |
Suggested by Stephen Kelly.
llvm-svn: 200645
|
| |
|
|
| |
llvm-svn: 200643
|
| |
|
|
| |
llvm-svn: 200642
|
| |
|
|
|
|
|
| |
Otherwise we'd accept them if the LinkageDecl was not the direct
parent DeclContext. PR17968.
llvm-svn: 200641
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ranges before:
void test(void (*)(int), int, float);
~~~~~~~~~~~~~ ~~~~ ~~~~~~
Ranges after:
void test(void (*)(int), int, float);
~~~~~~~~~~~~~ ~~~ ~~~~~
This does not change the actual location of the ParmVarDecl, it still
points to the location where the name would be. PR17970.
llvm-svn: 200640
|
| |
|
|
|
|
|
| |
These changes make it impossible to use ARM EHABI for stack unwinding without
enabling exceptions and break AddressSanitizer on ARM.
llvm-svn: 200627
|
| |
|
|
|
|
| |
and revert its behavior for C++.
llvm-svn: 200622
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building for i386 or x86_64 with IPHONEOS_DEPLOYMENT_TARGET set in the
environment, the toolchain correctly recognizes that the target platform is
the iOS simulator. The code in Darwin::addMinVersionArgs was not updated for
svn 197148, where isTargetIPhoneOS() was widely replaced by isTargetIOSBased().
This is kind of a strange case, though, because we probably ought to be
passing -ios_simulator_version_min to the linker, but according to the FIXME
in the code, we intentionally avoid that unless the -mios-simulator-version-min
option was used. I don't know whether it is safe to change that yet, so
for now, I am just fixing the assertion failure.
llvm-svn: 200618
|
| |
|
|
| |
llvm-svn: 200598
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a non-trivial parameter is present, clang now gathers up all the
parameters that lack inreg and puts them into a packed struct. MSVC
always aligns each parameter to 4 bytes and no more, so this is a pretty
simple struct to lay out.
On win64, non-trivial records are passed indirectly. Prior to this
change, clang was incorrectly using byval on win64.
I'm able to self-host a working clang with this change and additional
LLVM patches.
Reviewers: rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D2636
llvm-svn: 200597
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes PR15768, where the sret parameter and the 'this' parameter
are in the wrong order.
Instance methods compiled by MSVC never return records in registers,
they always return indirectly through an sret pointer. That sret
pointer always comes after the 'this' parameter, for both __cdecl and
__thiscall methods.
Unfortunately, the same is true for other calling conventions, so we'll
have to change the overall approach here relatively soon.
Reviewers: rsmith
Differential Revision: http://llvm-reviews.chandlerc.com/D2664
llvm-svn: 200587
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this change, we give different results for __alignof than MSVC, but
our record layout is compatible.
Some data member pointers also now have a size that is not a multiple of
their alignment.
Fixes PR18618.
Reviewers: majnemer
Differential Revision: http://llvm-reviews.chandlerc.com/D2669
llvm-svn: 200585
|
| |
|
|
| |
llvm-svn: 200584
|
| |
|
|
|
|
|
| |
just storing a flag indicating if there was one), and include it in the 'end of
module' annotation. No functionality change.
llvm-svn: 200573
|
| |
|
|
|
|
|
| |
The two identical implementations of __cpuid for X86 / X86_64 were
leftovers from my first iteration on the patch that implemented it.
llvm-svn: 200568
|
| |
|
|
|
|
|
|
| |
libs from arcmt-test.cpp.
arcmt-test doesn't depend on llvm codegen.
llvm-svn: 200563
|