| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
To remove this one simply move the end of file logic from the asm printer to
the target mc streamer.
This removes the last call to hasRawTextSupport from lib/Target.
llvm-svn: 200590
|
| |
|
|
|
|
|
|
| |
The target machine type affects the meaning of other options, in particular
how to mangle symbols. So we want to handle the option first and then parse
all the other options.
llvm-svn: 200589
|
| |
|
|
| |
llvm-svn: 200588
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
bonus in the inline cost analysis.
Split out of a patch by Dario Domizioli to commit separately.
llvm-svn: 200586
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
There is nothing wrong with printing the disassembly section when printing
text. An hypothetical assembler would then produce a .o just like our
direct object emission produces.
llvm-svn: 200583
|
| |
|
|
| |
llvm-svn: 200582
|
| |
|
|
| |
llvm-svn: 200581
|
| |
|
|
| |
llvm-svn: 200580
|
| |
|
|
| |
llvm-svn: 200579
|
| |
|
|
| |
llvm-svn: 200578
|
| |
|
|
|
|
|
|
|
|
|
| |
It looks like these pseudos were only used for pattern matching. Def pats are
the appropriate way to do that. As a bonus, these intrinsics will now have
memory operands folded properly, and better FMA3 variants selected where
appropriate (see r199933).
<rdar://problem/15611947>
llvm-svn: 200577
|
| |
|
|
|
|
|
|
|
|
| |
transform accordingly. Based on similar code from Loop vectorization.
Subsequent commits will include vectorization of function calls to
vector intrinsics and form function calls to vector library calls.
Patch by Raul Silvera! (Much delayed due to my not running dcommit)
llvm-svn: 200576
|
| |
|
|
| |
llvm-svn: 200575
|
| |
|
|
|
|
|
| |
None of the object formats require extra parsing to compute these flags,
so the method cannot fail.
llvm-svn: 200574
|
| |
|
|
|
|
|
| |
just storing a flag indicating if there was one), and include it in the 'end of
module' annotation. No functionality change.
llvm-svn: 200573
|
| |
|
|
|
|
| |
keeping track of those entries.
llvm-svn: 200572
|
| |
|
|
|
|
|
|
| |
algorithm. Sink the 'A' + Attribute hash into each form so we don't
have to check valid forms before deciding whether or not we're going
to hash which will let the default be to return without doing anything.
llvm-svn: 200571
|
| |
|
|
| |
llvm-svn: 200570
|
| |
|
|
|
|
|
|
|
| |
This ensures DWARF consumers don't confuse these references for
definitions. I'd argue it might be nice to improve debuggers so we don't
need this, but it's just one field in an abbreviation anyway - so it
doesn't seem worth the fight.
llvm-svn: 200569
|
| |
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
Some build environments are missing the required headers.
This reverts r200544, r200547, r200551. This does not revert the change that
introduced READWRITE ioctl type.
llvm-svn: 200567
|
| |
|
|
|
|
|
| |
If we have a callee cleanup convention, the callee is going to pop the
arguments off the stack, not push them on.
llvm-svn: 200566
|
| |
|
|
| |
llvm-svn: 200565
|
| |
|
|
|
|
| |
4221 is a linker warning, not a compiler warning
llvm-svn: 200564
|
| |
|
|
|
|
|
|
| |
libs from arcmt-test.cpp.
arcmt-test doesn't depend on llvm codegen.
llvm-svn: 200563
|
| |
|
|
|
|
| |
Oh sorry, I missed LTO.exports, ... I checked just only *.cpp(s).
llvm-svn: 200562
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MSVC always places the 'this' parameter for a method first. The
implicit 'sret' pointer for methods always comes second. We already
implement this for __thiscall by putting sret parameters on the stack,
but __cdecl methods require putting both parameters on the stack in
opposite order.
Using a special calling convention allows frontends to keep the sret
parameter first, which avoids breaking lots of assumptions in LLVM and
Clang.
Fixes PR15768 with the corresponding change in Clang.
Reviewers: ributzka, majnemer
Differential Revision: http://llvm-reviews.chandlerc.com/D2663
llvm-svn: 200561
|
| |
|
|
| |
llvm-svn: 200560
|
| |
|
|
| |
llvm-svn: 200559
|
| |
|
|
| |
llvm-svn: 200558
|
| |
|
|
| |
llvm-svn: 200557
|
| |
|
|
| |
llvm-svn: 200556
|
| |
|
|
|
|
|
| |
Previous commit would have a following flag overriding the behaviour
and not taken care of.
llvm-svn: 200555
|
| |
|
|
|
|
| |
__asan::AsanOnSIGSEGV() on Windows.
llvm-svn: 200554
|
| |
|
|
|
|
|
|
| |
code stripping on Linux.
See https://code.google.com/p/address-sanitizer/issues/detail?id=260 for more info.
llvm-svn: 200553
|
| |
|
|
| |
llvm-svn: 200552
|
| |
|
|
| |
llvm-svn: 200551
|
| |
|
|
| |
llvm-svn: 200550
|
| |
|
|
| |
llvm-svn: 200549
|
| |
|
|
|
|
|
| |
Copied from the Linux case added in r200263. Discovered by the FreeBSD
buildbot - I tested the branch with cmake.
llvm-svn: 200548
|
| |
|
|
| |
llvm-svn: 200547
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Adding the ARM RT sources to the CMake files, and enabling some
sanitizers to also build on ARM. This is far from supported or
production quality, but enabling it to build will get us errors
that we can actually fix.
Having said that, the Compiler-RT and the Asan libraries are
know to work on some variations of ARM.
llvm-svn: 200546
|
| |
|
|
| |
llvm-svn: 200545
|
| |
|
|
| |
llvm-svn: 200544
|
| |
|
|
|
|
| |
This instruction is only available on Mips64 cores that implement the MSA ASE.
llvm-svn: 200543
|
| |
|
|
|
|
|
| |
This change is a part of refactoring intended to have common signal handling behavior in all tools.
This particular CL moves InstallSignalHandlers() into sanitizer_common (making it InstallDeadlySignalHandlers()), but doesn't enable default signal handlers for any tool other than ASan.
llvm-svn: 200542
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 200541
|