- Aug 28, 2013
-
-
Joey Gouly authored
llvm-svn: 189482
-
Tim Northover authored
Clang is now generating cleaner IR, so this removes the old variants which should be completely unused. llvm-svn: 189481
-
Tim Northover authored
The vqdmlal and vqdmlls instructions are really just a fused pair consisting of a vqdmull.sN and a vqadd.sN. This adds patterns to LLVM so that we can switch Clang's CodeGen over to generating these instead of the special vqdmlal intrinsics. llvm-svn: 189480
-
Alexey Samsonov authored
llvm-svn: 189479
-
Daniel Sanders authored
These intrinsics are legalized to V(ALL|ANY)_(NON)?ZERO nodes, are matched as SN?Z_[BHWDV]_PSEUDO pseudo's, and emitted as a branch/mov sequence to evaluate to 0 or 1. Note: The resulting code is sub-optimal since it doesnt seem to be possible to feed the result of an intrinsic directly into a brcond. At the moment it uses (SETCC (VALL_ZERO $ws), 0, SETEQ) and similar which unnecessarily evaluates the boolean twice. llvm-svn: 189478
-
Virgile Bello authored
- factorize unistd.h and stdbool.h in lldb-types.h. - Add <functional> and <string> where required. llvm-svn: 189477
-
Daniel Sanders authored
llvm-svn: 189476
-
Alexey Samsonov authored
llvm-svn: 189475
-
Alexey Samsonov authored
llvm-svn: 189474
-
Alexey Samsonov authored
llvm-svn: 189473
-
Elena Demikhovsky authored
llvm-svn: 189472
-
Daniel Sanders authored
llvm-svn: 189471
-
Hafiz Abid Qadeer authored
The change was taken from a patch by Virgile Bello. llvm-svn: 189470
-
Richard Sandiford authored
For now just handles simple comparisons of an ANDed value with zero. The CC value provides enough information to do any comparison for a 2-bit mask, and some nonzero comparisons with more populated masks, but that's all future work. llvm-svn: 189469
-
Daniel Sanders authored
The MSA control registers have been added as reserved registers, and are only used via ISD::Copy(To|From)Reg. The intrinsics are lowered into these nodes. llvm-svn: 189468
-
Daniel Sanders authored
[mips][msa] Added f[cs]af, f[cs]or, f[cs]ueq, f[cs]ul[et], f[cs]une, fsun, ftrunc_[su], hadd_[su], hsub_[su], sr[al]r, sr[al]ri llvm-svn: 189467
-
Daniel Jasper authored
Two changes: * Don't add an extra penalty on breaking the same token multiple times. Generally, we should prefer not to break, but once we break, the normal line breaking penalties apply. * Slightly increase the penalty for breaking comments. In general, the author has put some thought into how to break the comment and we should not overwrite this unnecessarily. With a 40-column column limit, formatting aaaaaa("aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa"); Leads to: Before: aaaaaa( "aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa " "aaaaaaaaaaaaaaaa"); After: aaaaaa("aaaaaaaaaaaaaaaa " "aaaaaaaaaaaaaaaa " "aaaaaaaaaaaaaaaa"); llvm-svn: 189466
-
Daniel Sanders authored
Adds a comment to the start of each test summarizing the area the test covers. llvm-svn: 189465
-
Tim Northover authored
llvm-svn: 189464
-
Tim Northover authored
These operations "vector add high-half narrow" actually correspond to the sequence: %sum = add <4 x i32> %lhs, %rhs %high = lshr <4 x i32> %sum, <i32 16, i32 16, i32 16, i32 16> %res = trunc <4 x i32> %high to <4 x i16> Now that LLVM can spot this, Clang should emit the corresponding LLVM IR. llvm-svn: 189463
-
Tim Northover authored
The NEON intrinsics vqdmlal and vqdmlsl are really just combinations of a saturating-doubling-multiply (vqdmull) and a saturating add/sub, so now that LLVM can spot those patterns Clang should emit them instead of specialised intrinsics. Feature already tested by existing ARM NEON intrinsics tests. llvm-svn: 189462
-
Evgeniy Stepanov authored
llvm-svn: 189461
-
Daniel Jasper authored
The code leading to a segfault was: #pragma omp threadprivate(y)), // long comment leading to a line break This fixes llvm.org/PR16513. llvm-svn: 189460
-
Daniel Jasper authored
If escaped newlines are aligned right (FormatStyle.AlignEscapedNewlinesLeft == false), and a line contained too many characters to fit into the column limit, this would result in a (virtually) endless loop creating a negative number of spaces. Instead, allow the escaped newlines to be pushed past the column limit in this case. This fixes llvm.org/PR16515. llvm-svn: 189459
-
Richard Sandiford authored
This uses the infrastructure added for memcpy and memmove in r189331. llvm-svn: 189458
-
Kostya Serebryany authored
[asan]: fix a CHECK failure in use-after-return mode; enable and fix stack-use-after-return.cc; add a test for UAR mode in asan_noinst_test llvm-svn: 189457
-
Alexey Samsonov authored
llvm-svn: 189456
-
Daniel Jasper authored
Before: #if __has_include( <strstream>) #include <strstream> #endif After: #if __has_include(<strstream>) #include <strstream> #endif This fixes llvm.org/PR16516. llvm-svn: 189455
-
Alexey Samsonov authored
llvm-svn: 189454
-
Daniel Jasper authored
In @implementation ObjcClass - (void)method; { } @end the ObjC compiler seems to accept the superfluous comma after "method", but clang-format used to assert on the subsequent "{". This fixes llvm.org/PR16604. llvm-svn: 189453
-
Pavel Labath authored
Summary: -fno-exceptions does not implicitly attach a nothrow specifier to every operator new. Even in this mode, non-nothrow new must not return a null pointer. Failure to allocate memory can be signalled by other means, or just by killing the program. This behaviour is consistent with the compiler - even with -fno-exceptions, the generated code never tests for null (and would segfault if the opeator actually happened to return null). Reviewers: jordan_rose CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1528 llvm-svn: 189452
-
Daniel Jasper authored
Before: std::this_thread::sleep_for(std::chrono::nanoseconds{ std::chrono::seconds { 1 } } / 5); After: std::this_thread::sleep_for( std::chrono::nanoseconds{ std::chrono::seconds{ 1 } } / 5); This fixes llvm.org/PR16554. llvm-svn: 189451
-
Daniel Jasper authored
Before: SomeLoooooooooooooooooooooooooogType operator> >(const SomeLooooooooooooooooooooooooogType &other); SomeLoooooooooooooooooooooooooogType // break operator>>(const SomeLooooooooooooooooooooooooogType &other); After: SomeLoooooooooooooooooooooooooogType operator>>(const SomeLooooooooooooooooooooooooogType &other); SomeLoooooooooooooooooooooooooogType // break operator>>(const SomeLooooooooooooooooooooooooogType &other); This fixes llvm.org/PR16328. llvm-svn: 189450
-
Daniel Jasper authored
Before: static constexpr bool Bar = decltype(bar()) ::value; After: static constexpr bool Bar = decltype(bar())::value; llvm-svn: 189449
-
Craig Topper authored
llvm-svn: 189448
-
Ted Kremenek authored
This is breaking numerous Clang tests on the buildbot. llvm-svn: 189447
-
Ted Kremenek authored
llvm-svn: 189446
-
Craig Topper authored
llvm-svn: 189445
-
David Majnemer authored
llvm-svn: 189444
-
Ted Kremenek authored
[CMake] use combination of CMAKE_RUNTIME_OUTPUT_DIRECTORY and CMAKE_LIBRARY_OUTPUT_DIRECTORY to install clang headers for Xcode builds. llvm-svn: 189443
-