Tilmann Scheller
a17a4326d0
[AArch64] Fix typo in load/store optimizer.
...
llvm-svn: 210114
2014-06-03 16:33:13 +00:00
Tilmann Scheller
2a7efeb7b7
[AArch64] Add regression tests for the load/store optimizer which cover post-index update folding with sub rather than add.
...
The tests check that the following transform happens:
(ldr|str) X, [x20]
...
sub x20, x20, #16
->
(ldr|str) X, [x20], #-16
with X being either w0, x0, s0, d0 or q0.
llvm-svn: 210113
2014-06-03 16:03:00 +00:00
Jeroen Ketema
f3943efe17
Fix build broken by LLVM commit r209103
...
Reviewed-by: Aaron Watry <awatry@gmail.com>
llvm-svn: 210111
2014-06-03 15:43:57 +00:00
Rafael Espindola
e3986f3e04
Remove dead code.
...
New code should probably use shared_ptr anyway.
llvm-svn: 210110
2014-06-03 15:36:31 +00:00
Evgeniy Stepanov
ce98452516
[sancov] Delay opening dump file until the first module constructor.
...
llvm-svn: 210109
2014-06-03 15:27:15 +00:00
Evgeniy Stepanov
937afa1fbb
[sancov] Handle spaces in module name.
...
llvm-svn: 210108
2014-06-03 15:25:43 +00:00
Rafael Espindola
aa31609fb8
Implement one operator== with another.
...
Thanks for David Blaikie for the suggestion.
llvm-svn: 210107
2014-06-03 15:06:22 +00:00
Kostya Serebryany
7d4fc2c6a7
[asan] enable detect_odr_violation=2; https://code.google.com/p/address-sanitizer/wiki/OneDefinitionRuleViolation . This feature has been working quite well so far, found a few bugs and zero false positives. The main problem is that there could be lots of true positives and users will have to disable this checking until the bugs are fixed.
...
llvm-svn: 210106
2014-06-03 15:06:13 +00:00
Colin Riley
28e7ed12f5
Windows fix: Disable editline for MSVC. Since r208369 there have been issues, probably related to the editline wrapper. For now, it's more stable and usable disabled.
...
llvm-svn: 210105
2014-06-03 14:37:35 +00:00
Colin Riley
740ed90626
Windows fix: Condition::Wait returned failure when it actually succeeded (SleepConditionVariableCS returns non-zero for success)
...
llvm-svn: 210104
2014-06-03 14:33:41 +00:00
Evgeniy Stepanov
19f75fc947
[asan] Fix coverage instrumentation with -asan-globals=0.
...
llvm-svn: 210103
2014-06-03 14:16:00 +00:00
Tim Northover
6890add11d
AArch64: mark small types (i1, i8, i16) as promoted
...
This means the output of LowerFormalArguments returns a lowered
SDValue with the correct type (expected in SelectionDAGBuilder).
Without this, an assertion under a DEBUG macro triggers when those
types are passed on the stack.
llvm-svn: 210102
2014-06-03 13:54:53 +00:00
Rafael Espindola
8c557283c0
Use IntrusiveRefCntPtr's == and != nullptr operators.
...
This is a partial revert of r210075.
llvm-svn: 210101
2014-06-03 13:27:48 +00:00
Rafael Espindola
6d5ec8fee3
Add operator== and operator!= to compare with nullptr.
...
llvm-svn: 210100
2014-06-03 13:26:18 +00:00
Colin Riley
b7fd1bd223
Fix windows build: SBTypeEnumMember.cpp added to the separate windows liblldb.dll project.
...
llvm-svn: 210099
2014-06-03 13:01:18 +00:00
Evgeniy Stepanov
bb2fc7e4bb
[sancov] Fix map update logic on Android.
...
dlopen()/dlclose() are not interceptable on Android,
so we update .sancov.map in module constructor callbacks.
llvm-svn: 210098
2014-06-03 12:15:43 +00:00
Daniel Jasper
114a2bc9d2
clang-format: Refactor indentation behavior for multiple nested blocks.
...
This fixes a few oddities when formatting multiple nested JavaScript
blocks, e.g.:
Before:
promise.then(
function success() {
doFoo();
doBar();
},
[], function error() {
doFoo();
doBaz();
});
promise.then([],
function success() {
doFoo();
doBar();
},
function error() {
doFoo();
doBaz();
});
After:
promise.then(
function success() {
doFoo();
doBar();
},
[],
function error() {
doFoo();
doBaz();
});
promise.then([],
function success() {
doFoo();
doBar();
},
function error() {
doFoo();
doBaz();
});
llvm-svn: 210097
2014-06-03 12:02:45 +00:00
Kostya Serebryany
be6d91f1ba
temporary disable part of a test because it causes clang to leak memory (want to have the sanitizer bot green)
...
llvm-svn: 210096
2014-06-03 11:45:37 +00:00
Alexander Musman
a8e9d2eccc
[OPENMP] Loop canonical form analysis (Sema)
...
This patch implements semantic analysis to make sure that the loop is in OpenMP canonical form.
This is the form required for 'omp simd', 'omp for' and other loop pragmas.
Differential revision: http://reviews.llvm.org/D3778
llvm-svn: 210095
2014-06-03 10:16:47 +00:00
Simon Atanasyan
fd5b2346cc
[Mips] Make la25-stub.test self contained.
...
No functional changes.
llvm-svn: 210094
2014-06-03 09:59:42 +00:00
Rui Ueyama
eafa806b72
Improve error message.
...
Previously the parser always printed out an error message followed
by "Invalid file type" even if the file type is correct.
llvm-svn: 210093
2014-06-03 08:40:49 +00:00
Richard Smith
9213a6bfa4
Remove incorrect assertion.
...
llvm-svn: 210092
2014-06-03 08:40:27 +00:00
Richard Smith
454a7cdfb3
Implement DR990 and DR1070. Aggregate initialization initializes uninitialized
...
elements from {}, rather than value-initializing them. This permits calling an
initializer-list constructor or constructing a std::initializer_list object.
(It would also permit initializing a const reference or rvalue reference if
that weren't explicitly prohibited by other rules.)
llvm-svn: 210091
2014-06-03 08:26:00 +00:00
Richard Smith
f051496804
Teach AST dumper to dump the array filler in an initializer list.
...
llvm-svn: 210090
2014-06-03 08:24:28 +00:00
Rui Ueyama
009f91a9ee
Rename FileToMutable -> SimpleFileWrapper.
...
FileToMutable is what this class does, but this class (or, to be precise,
an instance of this class) is a wrapper of the other SimpleFile. It's odd
that the class was named like a function.
llvm-svn: 210089
2014-06-03 08:12:33 +00:00
Rui Ueyama
6668b5a8b8
Fix build breakage.
...
llvm-svn: 210087
2014-06-03 07:53:37 +00:00
Rui Ueyama
6848f96c7a
Inline short member function.
...
llvm-svn: 210086
2014-06-03 07:52:42 +00:00
Rui Ueyama
95be0d014a
Use auto for obvious types.
...
llvm-svn: 210085
2014-06-03 07:43:15 +00:00
Rui Ueyama
9ef8a9c94b
No need to compute valBit until mask bit is 1.
...
llvm-svn: 210084
2014-06-03 07:39:32 +00:00
Richard Smith
6c3bbf4271
PR11410: Extend diagnostic to cover all cases of aggregate initialization, not
...
just the extremely specific case of a trailing array element that couldn't be
initialized because the default constructor for the element type is deleted.
Also reword the diagnostic to better match our other context diagnostics and to
prepare for the implementation of core issue 1070.
llvm-svn: 210083
2014-06-03 07:28:54 +00:00
Rui Ueyama
076caf7897
Use range-based for loop.
...
llvm-svn: 210082
2014-06-03 07:27:49 +00:00
Rui Ueyama
9939b5ab5e
Remove unusual use of using.
...
llvm-svn: 210081
2014-06-03 07:24:46 +00:00
Nikola Smiljanic
b226964e25
List DR532 as implemented on the defect report status page by renaming the namespace.
...
llvm-svn: 210080
2014-06-03 07:06:20 +00:00
Richard Smith
06a67e2c6f
When emitting a multidimensional array new, emit the initializers for the
...
trailing elements as a single loop, rather than sometimes emitting a nest of
several loops. This fixes a bug where CodeGen would sometimes try to emit an
expression with the wrong type for the element being initialized. Plus various
other minor cleanups to the IR produced for array new initialization.
llvm-svn: 210079
2014-06-03 06:58:52 +00:00
Rafael Espindola
e00fec8fe4
Use an enum class.
...
llvm-svn: 210078
2014-06-03 05:26:12 +00:00
Rafael Espindola
92512e89a2
Use an enum class.
...
Might also fix the windows build.
llvm-svn: 210077
2014-06-03 05:12:33 +00:00
Rafael Espindola
c7dd10b221
Remove the last unspecified_bool_type from llvm.
...
llvm-svn: 210076
2014-06-03 05:05:15 +00:00
Rafael Espindola
507f1bc37e
Don't assume an implicit IntrusiveRefCntPtr -> bool operator.
...
llvm-svn: 210075
2014-06-03 05:04:52 +00:00
Rui Ueyama
04ade04e98
Reference::target() doesn't and shouldn't return a nullptr.
...
llvm-svn: 210074
2014-06-03 05:04:07 +00:00
Rafael Espindola
da74795f5b
Make this operator bool() explicit to match the standard library.
...
llvm-svn: 210073
2014-06-03 04:54:15 +00:00
Rafael Espindola
d9a25d82c1
Make this operator bool() explicit to match the standard library.
...
llvm-svn: 210072
2014-06-03 04:42:24 +00:00
Rafael Espindola
1d364c18e2
This lambda returns a boolean, update the return statements.
...
llvm-svn: 210071
2014-06-03 04:41:30 +00:00
Rafael Espindola
f145137516
Don't assume an implicit error_code -> bool operator.
...
llvm-svn: 210070
2014-06-03 04:40:55 +00:00
Greg Fitzgerald
796fba4cd9
Fix Android build after r210053
...
llvm-svn: 210069
2014-06-03 04:29:46 +00:00
Nick Lewycky
5f53ddd0cc
Ignore line numbers on debug intrinsics. Add an assert to ensure that we aren't emitting line number zero, the .gcno format uses this to indicate that the next field is a filename.
...
llvm-svn: 210068
2014-06-03 04:25:36 +00:00
Jiangning Liu
cc4f38bc28
[AArch64] Correctly deal with VPR stack parameter passing.
...
llvm-svn: 210067
2014-06-03 03:25:09 +00:00
Rui Ueyama
9aee050a0c
Remove group-parent references.
...
Previously section groups are doubly linked to their children.
That is, an atom representing a group has group-child references
to its group contents, and content atoms also have group-parent
references to the group atom. That relationship was invariant;
if X has a group-child edge to Y, Y must have a group-parent
edge to X.
However we were not using group-parent references at all. The
resolver only needs group-child edges.
This patch simplifies the section group by removing the unused
reverse edge. No functionality change intended.
Differential Revision: http://reviews.llvm.org/D3945
llvm-svn: 210066
2014-06-03 03:07:49 +00:00
Alp Toker
552f2f7b96
Process::GetRandomNumber(): fix insecure RNG
...
This could have generated non-random output under error conditions in release
builds.
llvm-svn: 210065
2014-06-03 03:01:03 +00:00
Nikola Smiljanic
b8f8099895
Move DR532 test where it belongs.
...
llvm-svn: 210064
2014-06-03 02:56:59 +00:00
Rafael Espindola
27c60b512a
Update for llvm API change.
...
Aliases in llvm now hold an arbitrary expression.
llvm-svn: 210063
2014-06-03 02:42:01 +00:00