| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 187421
|
| |
|
|
|
|
| |
err_attribute_argument_type.
llvm-svn: 187420
|
| |
|
|
| |
llvm-svn: 187419
|
| |
|
|
| |
llvm-svn: 187418
|
| |
|
|
| |
llvm-svn: 187417
|
| |
|
|
|
|
|
| |
These tests fail on FreeBSD due to missing build support, the same reason
they fail on Linux.
llvm-svn: 187416
|
| |
|
|
| |
llvm-svn: 187415
|
| |
|
|
| |
llvm-svn: 187414
|
| |
|
|
| |
llvm-svn: 187413
|
| |
|
|
| |
llvm-svn: 187412
|
| |
|
|
|
|
| |
unlimited stack.
llvm-svn: 187411
|
| |
|
|
|
|
| |
instructions have been added to test files.
llvm-svn: 187410
|
| |
|
|
| |
llvm-svn: 187409
|
| |
|
|
|
|
| |
It's a sanity check, mostly, and we've seen threads with >256Mb stack.
llvm-svn: 187408
|
| |
|
|
|
|
| |
It needs interface that is missing from the NDK, and it is not used on Android anyway.
llvm-svn: 187407
|
| |
|
|
| |
llvm-svn: 187406
|
| |
|
|
|
|
| |
requires the feature 'clang-driver' for cygming.
llvm-svn: 187405
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When simplifying a (or (and B A) (and C ~A)) to a (VBSL A B C) ensure that the
bitwidth of the second operands to both ands match before comparing the negation
of the values.
Split the check of the value of the second operands to the ands. Move the cast
and variable declaration slightly higher to make it slightly easier to follow.
Bug-Id: 16700
Signed-off-by: Saleem Abdulrasool <compnerd@compnerd.org>
llvm-svn: 187404
|
| |
|
|
| |
llvm-svn: 187403
|
| |
|
|
| |
llvm-svn: 187402
|
| |
|
|
|
|
| |
tablegen. In turn, this fixes a mistake with Ptr32, Ptr64, UPtr and SPtr attribtues generating AST nodes that are never actually used.
llvm-svn: 187401
|
| |
|
|
| |
llvm-svn: 187400
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first of many upcoming patches for PowerPC fast
instruction selection support. This patch implements the minimum
necessary for a functional (but extremely limited) FastISel pass. It
allows the table-generated portions of the selector to be created and
used, but in most cases selection will fall back to the DAG selector.
None of the block terminator instructions are implemented yet, and
most interesting instructions require some special handling.
Therefore there aren't any new test cases with this patch. There will
be quite a few tests coming with future patches.
This patch adds the make/CMake support for the new code (including
tablegen -gen-fast-isel) and creates the FastISel object for PPC64 ELF
only. It instantiates the necessary virtual functions
(TargetSelectInstruction, TargetMaterializeConstant,
TargetMaterializeAlloca, tryToFoldLoadIntoMI, and FastLowerArguments),
but of these, only TargetMaterializeConstant contains any useful
implementation. This is present since the table-generated code
requires the ability to materialize integer constants for some
instructions.
This patch has been tested by building and running the
projects/test-suite code with -O0. All tests passed with the
exception of a couple of long-running tests that time out using -O0
code generation.
llvm-svn: 187399
|
| |
|
|
|
|
| |
of using custom logic. No functional changes intended.
llvm-svn: 187398
|
| |
|
|
|
|
|
| |
build_vector is lowered to REG_SEQUENCE, which is something the register
allocator does a good job at optimizing.
llvm-svn: 187397
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch prevents the following combine when the input vector is used more
than once.
insert_vector_elt (build_vector elt0, ..., eltN), NewEltIdx, idx
=>
build_vector elt0, ..., NewEltIdx, ..., eltN
The reasons are:
- Building a vector may be expensive, so try to reuse the existing part of a
vector instead of creating a new one (think big vectors).
- elt0 to eltN now have two users instead of one. This may prevent some other
optimizations.
llvm-svn: 187396
|
| |
|
|
|
|
| |
Fixed a crasher when using memory threads where a thread is sticking around too long and was causing problems when it didn't have a thread plan.
llvm-svn: 187395
|
| |
|
|
|
|
|
| |
The problem is due to the section name being explicitly mentioned in
the IR and differing between the two platforms.
llvm-svn: 187394
|
| |
|
|
|
|
|
|
| |
update testcase to make sure we generate debug info for walrus
by adding a non-trivial constructor and verify that we don't
emit an ODR signature for the type.
llvm-svn: 187393
|
| |
|
|
|
|
| |
sure the comments for each testcase are a bit easier to distinguish.
llvm-svn: 187392
|
| |
|
|
|
|
| |
odr hashes.
llvm-svn: 187391
|
| |
|
|
|
|
|
| |
The command line option in .drectve section may be quoted by double
quotes, and if that's the case we have to remove them.
llvm-svn: 187390
|
| |
|
|
|
|
|
| |
- newer gcc generates additional debuginfo for function exit (stack object desctruction) which was causing tests to fail
- work-around consists of not declaring any stack objects in main()
llvm-svn: 187389
|
| |
|
|
|
|
|
|
| |
This patch removes hacky mangle() function, which strips all decorations
uncondtitionally. LLD now interprets Import Name/Type field in the import
library properly as described in the Microsoft PE/COFF Spec.
llvm-svn: 187388
|
| |
|
|
| |
llvm-svn: 187387
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: rsmith
Reviewed By: rsmith
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1183
llvm-svn: 187386
|
| |
|
|
| |
llvm-svn: 187385
|
| |
|
|
| |
llvm-svn: 187384
|
| |
|
|
| |
llvm-svn: 187383
|
| |
|
|
| |
llvm-svn: 187382
|
| |
|
|
| |
llvm-svn: 187381
|
| |
|
|
| |
llvm-svn: 187380
|
| |
|
|
| |
llvm-svn: 187379
|
| |
|
|
|
|
| |
This will let us use getUniqueID instead of st_dev directly on clang.
llvm-svn: 187378
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LLDB requires that the inferior process be stopped before, and remain
stopped during, certain accesses to process state.
Previously this was achieved with a POSIX rwlock which had a write lock
taken for the duration that the process was running, and released when
the process was stopped. Any access to process state was performed with
a read lock held.
However, POSIX requires that pthread_rwlock_unlock() be called from the
same thread as pthread_rwlock_wrlock(), and lldb needs to stop and start
the process from different threads. Violating this constraint is
technically undefined behaviour, although as it happens Linux and Darwin
result in the unlock proceeding in this case. FreeBSD follows POSIX
more strictly, and the unlock would fail, resulting in a hang later upon
the next attempt to take the lock.
All read lock consumers use ReadTryLock() and handle failure to obtain
the lock (typically by logging an error "process is running"). Thus,
instead of using the lock state itself to track the running state, this
change adds an explicit m_running flag. ReadTryLock tests the flag, and
if the process is not running it returns with the read lock held.
WriteLock and WriteTryLock are renamed to SetRunning and TrySetRunning,
and (if successful) they set m_running with the lock held. This way,
read consumers can determine if the process is running and act
appropriately, and write consumers are still held off from starting the
process if read consumers are active.
Note that with this change there are still some curious access patterns,
such as calling WriteUnlock / SetStopped twice in a row, and there's no
protection from multiple threads trying to simultaneously start the
process. In practice this does not seem to be a problem, and was
exposing other undefined POSIX behaviour prior to this change.
llvm-svn: 187377
|
| |
|
|
|
|
|
|
|
| |
output rather than just part of it.
Also, remove the frighteningly ancient comment about not working with
the gcc-driver. (!!!)
llvm-svn: 187376
|
| |
|
|
| |
llvm-svn: 187375
|
| |
|
|
|
|
|
|
| |
'builtin' if
corresponding 'operator new' was actually emitted as a function marked 'nobuiltin'.
llvm-svn: 187374
|
| |
|
|
| |
llvm-svn: 187373
|
| |
|
|
|
|
|
|
| |
This is so DFSan will be able to use it.
Differential Revision: http://llvm-reviews.chandlerc.com/D1206
llvm-svn: 187372
|