- Nov 21, 2017
-
-
Peter Collingbourne authored
This effectively reverts r318548 and r318635 while keeping the functionality behind the flag and preserving the bug fix from r318548. Differential Revision: https://reviews.llvm.org/D40264 llvm-svn: 318721
-
David Blaikie authored
Fix ODR violations caused by using internal linkage variables in non-internal inline functions. (also removes duplicate definitions, etc) llvm-svn: 318720
-
David Blaikie authored
llvm-svn: 318719
-
David Blaikie authored
llvm-svn: 318718
-
Walter Lee authored
ASan requires that the min alignment be at least the shadow granularity, so add an init function to do that. Differential Revision: https://reviews.llvm.org/D39473 llvm-svn: 318717
-
Craig Topper authored
The correct spelling is '3dnow' which is already in the list. llvm-svn: 318716
-
David Blaikie authored
llvm-svn: 318715
-
David Blaikie authored
Also undef the macros at the end of the file to make it easier to use. llvm-svn: 318714
-
David Blaikie authored
llvm-svn: 318713
-
David Blaikie authored
There's a generic partial specialization for all std::vector<T> that does what's desired, so no need for this full specialization that's causing an ODR violation anyway. llvm-svn: 318712
-
Davide Italiano authored
This microoptimization is NFC. llvm-svn: 318711
-
Richard Trieu authored
r318678 caused the Clang test CodeGen/ms-inline-asm.c to start failing. llvm-svn: 318710
-
Vitaly Buka authored
Reviewers: eugenis Subscribers: hiraditya, llvm-commits Differential Revision: https://reviews.llvm.org/D40205 llvm-svn: 318708
-
Vitaly Buka authored
Reviewers: eugenis Subscribers: kubamracek, llvm-commits, krytarowski Differential Revision: https://reviews.llvm.org/D40272 llvm-svn: 318707
-
Craig Topper authored
[SelectionDAG] When promoting the result of a VSELECT, make sure we promote the condition to the SetCC type for the final result type not the original type. Normally this would be cleaned up by promoting the condition operand next. But in the attached case we promoted the result from v2i48 to v2i64 and the condition from v2i1 to v2i48. Then we tried to "promote" the v2i48 condition back to v2i1 because that's what the SetCC result type for v2i64 is on X86 with VLX. But promote is either a NOP or SIGN_EXTEND and this would need a truncation. With the change here we now get the SetCC type of v2i1 when we're handling the result promotion and the operand no longer needs to be promoted itself. Fixes PR35272. llvm-svn: 318706
-
- Nov 20, 2017
-
-
Alexander Shaposhnikov authored
This diff extends StackAddrEscapeChecker to catch stack addresses leaks via block captures if the block is executed asynchronously or returned from a function. Differential revision: https://reviews.llvm.org/D39438 llvm-svn: 318705
-
Fedor Sergeev authored
Summary: while investigating performance degradation of imagick benchmark there were found inefficient pattern for UINT_TO_FP conversion. That pattern causes RAW hazard in assembly code. Specifically, uitofp IR operator results in poor assembler : st %i0, [%fp - 952] ldd [%fp - 952], %f0 it stores 32-bit integer register into memory location and then loads 64-bit floating point data from that location. That is exactly RAW hazard case. To optimize that case it is possible to use SPISD::ITOF and SPISD::XTOF for conversion from integer to floating point data type and to use ISD::BITCAST to copy from integer register into floating point register. The fix is to write custom UINT_TO_FP pattern using SPISD::ITOF, SPISD::XTOF, ISD::BITCAST. Patch by Alexey Lapshin Reviewers: fedor.sergeev, jyknight, dcederman, lero_chris Reviewed By: jyknight Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D36875 llvm-svn: 318704
-
David Blaikie authored
This adds support for ADL in the range based <algorithm> extensions (llvm::for_each etc.). Also adds the helper functions llvm::adl::begin and llvm::adl::end which wrap std::begin and std::end with ADL support. Saw this was missing from a recent llvm weekly post about adding llvm::for_each and thought I might add it. Patch by Stephen Dollberg! Differential Revision: https://reviews.llvm.org/D40006 llvm-svn: 318703
-
Erich Keane authored
llvm-svn: 318702
-
Reid Kleckner authored
llvm-svn: 318700
-
Reid Kleckner authored
Summary: MSVC does this. The user can override it with their own /merge: flag. Reviewers: ruiu, pcc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D40197 llvm-svn: 318699
-
Erich Keane authored
Broke some libclang tests, so reverting for now. llvm-svn: 318698
-
Zachary Turner authored
This was reverted due to the tests being run twice on some build bots. Each run had a slightly different configuration due to the way in which it was being invoked. This fixes the problem (albeit in a somewhat hacky way). Hopefully in the future we can get rid of the workflow of running debuginfo-tests as part of clang, and then this hack can go away. llvm-svn: 318697
-
Hiroshi Yamauchi authored
Summary: Fix this build error http://lab.llvm.org:8011/builders/lld-x86_64-darwin13/builds/15112/steps/build_Lld/logs/stdio after https://reviews.llvm.org/rL318693 Reviewers: davidxl Reviewed By: davidxl Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D40266 llvm-svn: 318696
-
Yonghong Song authored
Commit b5cbc7760ab8 ("[bpf] allow direct and indirect calls") allowed more than one function in the bpf program, and commit 114353884415 ("bpf: fix a bug in trunc-op optimization") fixed a bug in trunc-op optimization which only showed up with more than one function in the bpf program. This patch added a test case for trunc-op optimization for bpf programs with two functions. Reverting commit "bpf: fix a bug in trunc-op optimization" will cause failure for this test case. Signed-off-by:
Yonghong Song <yhs@fb.com> llvm-svn: 318695
-
Erich Keane authored
Forgotten when doing my SVN commit. llvm-svn: 318694
-
Hiroshi Yamauchi authored
Summary: Add the following heuristics for irreducible loop metadata: - When an irreducible loop header is missing the loop header weight metadata, give it the minimum weight seen among other headers. - Annotate indirectbr targets with the loop header weight metadata (as they are likely to become irreducible loop headers after indirectbr tail duplication.) These greatly improve the accuracy of the block frequency info of the Python interpreter loop (eg. from ~3-16x off down to ~40-55% off) and the Python performance (eg. unpack_sequence from ~50% slower to ~8% faster than GCC) due to better register allocation under PGO. Reviewers: davidxl Reviewed By: davidxl Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D39980 llvm-svn: 318693
-
Carlo Bertolli authored
[OpenMP] Initial implementation of code generation for pragma 'teams distribute parallel for' on host https://reviews.llvm.org/D40187 This patch implements code gen for 'teams distribute parallel for' on the host, including all its clauses and related regression tests. llvm-svn: 318692
-
Simon Atanasyan authored
llvm-svn: 318691
-
Eric Fiselier authored
The non-const data() member of std::string is only exposed in C++17 and beyond. However std::string is externally instantiated and so the member function needs to be exposed to be externally instantiated. On Linux and OS X this shouldn't cause a problem, because _LIBCPP_INLINE_VISIBILITY ensures the symbol is always inlined. However on Windows, the symbol gets marked dllimport, but there is no definition to import, causing link errors. llvm-svn: 318690
-
Peter Collingbourne authored
Don't crash if we encounter a reference to an early discarded section (such as .drectve). Instead, handle them the same way as sections discarded by comdat merging, i.e. either print an error message or (for debug sections) silently ignore the relocation. Differential Revision: https://reviews.llvm.org/D40235 llvm-svn: 318689
-
Rafael Espindola authored
Without this we could remove SS->getFile<ELFT>()->IsUsed = true; from addUndefined and no test would fail. llvm-svn: 318688
-
Simon Pilgrim authored
llvm-svn: 318687
-
Mandeep Singh Grang authored
This broke the bots. Reverting this until I can fix the failures. This reverts commit 5a3db2856d12a3c4b400f487d39f8f05989e79f0. llvm-svn: 318686
-
Evandro Menezes authored
Fix the modeling of test and branch. llvm-svn: 318685
-
Paul Robinson authored
This reverts commit 30419e150cd940893a13b345e85f96053850208f. aka r318679. It caused "sanitizer-windows" bot to fail. llvm-svn: 318684
-
Peter Collingbourne authored
Differential Revision: https://reviews.llvm.org/D40237 llvm-svn: 318683
-
Peter Collingbourne authored
This requirement was added in r254578 to fix pr25686. However, it appears to have originated from a misdiagnosis of the problem: link.exe refused to merge the two sections because they are non-executable, not because they have internal leaders. If I set up a similar scenario with functions instead of globals I see that link.exe merges them. Differential Revision: https://reviews.llvm.org/D40236 llvm-svn: 318682
-
Mandeep Singh Grang authored
[AutoComplete] Use stronger sort predicate for autocomplete candidates to remove non-deterministic ordering Summary: This fixes the failure in test/Driver/autocomplete.c uncovered by D39245. Reviewers: yamaguchi, teemperor, ruiu Reviewed By: yamaguchi, ruiu Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D40234 llvm-svn: 318681
-
Mandeep Singh Grang authored
Summary: This fixes failures in the following tests uncovered by D39245: LLVM :: CodeGen/ARM/ifcvt3.ll LLVM :: CodeGen/ARM/switch-minsize.ll LLVM :: CodeGen/X86/switch.ll Reviewers: hans, efriedma Reviewed By: hans Subscribers: fhahn, aemerson, kristof.beyls, llvm-commits Differential Revision: https://reviews.llvm.org/D39995 llvm-svn: 318680
-