| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This resolves bug 21148 by preventing promotion to
i64 induction variables.
llvm-svn: 264376
|
|
|
|
|
|
|
|
|
| |
This is the same as r255936, with added logic for avoiding clobbering of the
red zone (PR26023).
Differential Revision: http://reviews.llvm.org/D18246
llvm-svn: 264375
|
|
|
|
| |
llvm-svn: 264374
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove logic to upgrade !llvm.loop by changing the MDString tag
directly. This old logic would check (and change) arbitrary strings
that had nothing to do with loop metadata. Instead, check !llvm.loop
attachments directly, and change which strings get attached.
Rather than updating the assembly-based upgrade, drop it entirely. It
has been quite a while since we supported upgrading textual IR.
llvm-svn: 264373
|
|
|
|
|
|
|
| |
Besides a small compile-time speedup, there should be no real
functionality change here.
llvm-svn: 264372
|
|
|
|
|
|
|
|
|
|
| |
This reserves an MDKind for !llvm.loop, which allows callers to avoid a
string-based lookup. I'm not sure why it was missing.
There should be no functionality change here, just a small compile-time
speedup.
llvm-svn: 264371
|
|
|
|
|
|
|
|
|
| |
We did not have an explicit branch to the continuation BB. When the check was
hoisted, this could permit control follow to fall through into the division
trap. Add the explicit branch to the continuation basic block to ensure that
code execution is correct.
llvm-svn: 264370
|
|
|
|
| |
llvm-svn: 264369
|
|
|
|
|
|
|
| |
Ideally this would also happen for fneg, but that
isn't a distinct operation in the IR.
llvm-svn: 264368
|
|
|
|
| |
llvm-svn: 264367
|
|
|
|
|
|
|
|
|
|
|
| |
In r259975 we rauw'ed the scope of enum declarations without taking into
account that DIBuilder strips out scope references that point to the
DICompileUnit to facilitate type uniquing.
This testcase guards against making the same mistake again.
<rdar://problem/25078246>
llvm-svn: 264366
|
|
|
|
| |
llvm-svn: 264365
|
|
|
|
|
|
| |
We don't want to have a cost to scalarizing operations.
llvm-svn: 264364
|
|
|
|
| |
llvm-svn: 264363
|
|
|
|
|
|
|
| |
Appease MS targets with -fno-ms-compatibility.
FIXME: Add a test with -fms-compatibility.
llvm-svn: 264362
|
|
|
|
| |
llvm-svn: 264361
|
|
|
|
|
|
| |
This implements my suggestion to Lang.
llvm-svn: 264360
|
|
|
|
|
|
|
|
| |
record rather than relative to the start of the bitcode file. Saves a couple of
bytes per LOCAL_REDECLARATIONS record (also makes diffs of llvm-bcanalyzer
output more useful when tracking down nondeterminism...).
llvm-svn: 264359
|
|
|
|
|
|
|
|
|
|
| |
It is incorrect to get the corresponding MBB for a ReturnInst before
SelectAllBasicBlocks since SelectAllBasicBlocks can change the
correspondence between a ReturnInst and the MBB it is in.
PR27062
llvm-svn: 264358
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an enhancement of the existing update_llc_test_checks.py script.
It adds some of the functionality from the script used in D17999 to make
the IR checking more flexible.
The bad news:
This actually is 'My First Python Program'. Thus, it's likely that I have
violated all best practices of Python programming if I've made a functional
change from the original program. If you see anything that's obviously
wrong, please let me know or feel free to fix it. I didn't even read any
documentation...
The good news:
I tested this on ~10 existing opt/llc regression tests, and it does what
I hoped for. It produces exact checking for IR regression tests and doesn't
signficantly change the existing llc-with-x86-target asm checking. The opt
tests that were modified in r263667, r263668, r263674, and r263679 are
examples of the expected results, except that this version of the script
puts the check lines ahead of the IR to follow the existing llc/asm
behavior.
If there are no complaints/fallout, we should be able to remove the
original script. Extending this script to be used for non-x86 and clang
regression tests would be the expected follow-up steps.
llvm-svn: 264357
|
|
|
|
|
|
| |
'type lookup'
llvm-svn: 264356
|
|
|
|
| |
llvm-svn: 264355
|
|
|
|
|
|
|
| |
Earlier we were ignoring varargs in LowerCallSiteWithDeoptBundle because
populateCallLoweringInfo does not set CallLoweringInfo::IsVarArg.
llvm-svn: 264354
|
|
|
|
|
|
|
|
| |
so that the lldb command line binary's version #'s are updated
correctly.
<rdar://problem/25346711>
llvm-svn: 264353
|
|
|
|
|
|
| |
Patch by Robert Ma <bob1211@gmail.com>!
llvm-svn: 264352
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Fixes SBCommandReturnObject::SetImmediateOutputFile() and
SBCommandReturnObject::SetImmediateOutputFile() for files opened
with "a" or "a+" by resolving inconsistencies between File and
our Python parsing of file objects.
Reviewers: granata.enrico, Eugene.Zelenko, jingham, clayborg
Subscribers: lldb-commits, sas
Differential Revision: http://reviews.llvm.org/D18228
Change by Francis Ricci <fjricci@fb.com>
llvm-svn: 264351
|
|
|
|
|
|
|
|
| |
Going to be reading the DW_AT_GNU_dwo_name shortly as well, and there
was already enough duplication here that it was worth refactoring
rather than adding even more.
llvm-svn: 264350
|
|
|
|
| |
llvm-svn: 264349
|
|
|
|
|
|
| |
the global destructor chain has been run on the main thread.
llvm-svn: 264348
|
|
|
|
|
|
| |
only function that uses these variables.
llvm-svn: 264347
|
|
|
|
|
|
| |
make the Timer safe to use after the main threads global destructor chain is called.
llvm-svn: 264346
|
|
|
|
|
|
| |
This fixes http://llvm.org/PR26991
llvm-svn: 264345
|
|
|
|
|
|
|
|
| |
We try to hoist the insertion point as high as possible to encourage
sharing. However, we must be careful not to hoist into a catchswitch as
it is both an EHPad and a terminator.
llvm-svn: 264344
|
|
|
|
|
|
|
|
| |
when it can't find a type matching user input
It would be fun to make it provide suggestions (e.g. 'can't find NString, did you mean NSString instead?'), but this worries me a little bit on the account of just how thorough of a type system scan it would have to do
llvm-svn: 264343
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18289
llvm-svn: 264342
|
|
|
|
|
|
| |
Somehow this got dropped in an earlier patch.
llvm-svn: 264341
|
|
|
|
|
|
| |
making sure we give it a register and mark it as a register constraint.
llvm-svn: 264340
|
|
|
|
| |
llvm-svn: 264339
|
|
|
|
| |
llvm-svn: 264338
|
|
|
|
|
|
| |
Fixes an issue in rL264329.
llvm-svn: 264337
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Using leading zeroes allows you to search for "000%" to find non-covered
items.
Differential Revision: http://reviews.llvm.org/D18420
llvm-svn: 264336
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Apparently, when compiling with gcc 5.3.2 for powerpc64, the order of
headers is such that it gets an error about std::atomic<> use in
ThreadPool.h, since this header is not included explicitly. See also:
https://llvm.org/bugs/show_bug.cgi?id=27058
Fix this by including <atomic>. Patch by Bryan Drewery.
Reviewers: chandlerc, joker.eph
Subscribers: bdrewery, llvm-commits
Differential Revision: http://reviews.llvm.org/D18460
llvm-svn: 264335
|
|
|
|
|
|
|
|
|
|
|
| |
scope in LLVM debug info." After fixing PR26942 (the fix is included in this commit)."
This reverts commit r264280.
This broke building Chromium for iOS. We'll upload a reproducer to the
PR soon.
llvm-svn: 264334
|
|
|
|
|
|
|
|
|
|
|
| |
scope in LLVM debug info." After fixing PR26942 (the fix is included in this commit)."
This reverts commit r264281.
This change breaks building Chromium for iOS. We'll upload a reproducer
to the PR soon.
llvm-svn: 264333
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: On Windows (and possibly other hosts with LLDB_DISABLE_LIBEDIT defined), the (lldb) prompt won't print after async output, like from a breakpoint hit or a step. This patch forces the prompt to be printed out after async output.
Reviewers: zturner, clayborg
Subscribers: amccarth, lldb-commits
Differential Revision: http://reviews.llvm.org/D18335
llvm-svn: 264332
|
|
|
|
| |
llvm-svn: 264331
|
|
|
|
| |
llvm-svn: 264330
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Only adds support for "naked" calls to llvm.experimental.deoptimize.
Support for round-tripping through RewriteStatepointsForGC will come
as a separate patch (should be simpler than this one).
Reviewers: reames
Subscribers: sanjoy, mcrosier, llvm-commits
Differential Revision: http://reviews.llvm.org/D18429
llvm-svn: 264329
|
|
|
|
|
|
| |
Patch by Sundeep Kushwaha.
llvm-svn: 264328
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ucrtbase.dll appears to be built with some kind of cross-module
inlining, because there are calls to imported Heap* routines sprinkled
throughout the code. This inlining defeats our attempts to hotpatch
malloc, _malloc_base, and related functions. Failing to intercept an
allocation or deallocation results in a crash when the program attempts
to deallocate or reallocate memory with the wrong allocator.
This change patches the IAT of ucrtbase.dll to replace the addresses of
the imported Heap* functions with implementations provided by ASan. We
don't globally intercept the win32 Heap* functions because they are
typically used by system DLLs that run before ASan initializes.
Eventually, we may want to intercept them, but for now I think this is
the minimal change that will keep ASan stable.
Reviewers: samsonov
Differential Revision: http://reviews.llvm.org/D18413
llvm-svn: 264327
|