summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [X86] Add missing check for RDSEED to ICL, CNL, SKX sections of ↵Craig Topper2018-01-191-0/+6
| | | | | | test/Preprocessor/predefined-arch-macros.c llvm-svn: 322912
* [WebAssembly] Export the stack pointer when using --emit-relocsSam Clegg2018-01-182-3/+9
| | | | | | | | | | | | This solves the problem that --emit-relocs needs the stack-pointer to be exported, in order to write out any relocations that reference the __stack_pointer symbol by its symbol index. Patch by Nicholas Wilson! Differential Revision: https://reviews.llvm.org/D42237 llvm-svn: 322911
* [X86] Add intrinsic support for the RDPID instructionCraig Topper2018-01-188-8/+54
| | | | | | | | This adds a new instrinsic to support the rdpid instruction. The implementation is a bit weird because the intrinsic is defined as always returning 32-bits, but the assembler support thinks the instruction produces a 64-bit register in 64-bit mode. But really it zeros the upper 32 bits. So I had to add separate patterns where 64-bit mode uses an extract_subreg. Differential Revision: https://reviews.llvm.org/D42205 llvm-svn: 322910
* Add a missing file header.Rui Ueyama2018-01-181-0/+9
| | | | llvm-svn: 322909
* [WebAssembly] Add missing function exports and SYM_INFO to --relocatable outputSam Clegg2018-01-188-40/+794
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When writing relocatable files we were exporting for all globals (including file-local syms), but not for functions. Oops. To be consistent with non-relocatable output, all symbols (file-local and global) should be exported. Any symbol targetted by further relocations needs to be exported. The lack of local function exports was just an omission, I think. Second bug: Local symbol names can collide, causing an illegal Wasm file to be generated! Oops again. This only previously affected producing relocatable output from two files, where each had a global with the same name. We need to "budge" the symbol names for locals that are exported on relocatable output. Third bug: LLD's relocatable output wasn't writing out any symbol flags! Thus the local globals weren't being marked as local, and the hidden flag was also stripped... Added tests to exercise colliding local names with/without relocatable flag Patch by Nicholas Wilson! Differential Revision: https://reviews.llvm.org/D42105 llvm-svn: 322908
* [InstSimplify] regenerate checks and add tests for commutes; NFCSanjay Patel2018-01-181-49/+92
| | | | llvm-svn: 322907
* AMDGPU/SI: Fix typos in d16 support patch the buffer intrinsics.Changpeng Fang2018-01-181-4/+4
| | | | llvm-svn: 322906
* [CodeView] Add line numbers for inlined call sitesReid Kleckner2018-01-182-3/+53
| | | | | | | | We did this for inline call site line tables, but we hadn't done it for regular function line tables yet. This patch copies that logic from encodeInlineLineTable. llvm-svn: 322905
* [CodeView] Sink complex inline functions to .cpp file, NFCReid Kleckner2018-01-182-41/+52
| | | | | | I'm cleaning up this code before I attempt to fix a line table bug. llvm-svn: 322904
* AMDGPU/SI: Add d16 support for image intrinsics.Changpeng Fang2018-01-1811-202/+1406
| | | | | | | | | | | | | Summary: This patch implements d16 support for image load, image store and image sample intrinsics. Reviewers: Matt, Brian. Differential Revision: https://reviews.llvm.org/D3991 llvm-svn: 322903
* Typo fix SIBABRT -> SIGABRT.Eric Christopher2018-01-182-2/+2
| | | | | | Based on a patch by Henry Wong! llvm-svn: 322902
* Remove TautologicalInRangeCompare from Extra and TautologicalCompare.Nico Weber2018-01-182-5/+3
| | | | | | | | | | | | | | | | | | | | | This removes the following (already default-off) warnings from -Wextra: -Wtautological-type-limit-compare, -Wtautological-unsigned-zero-compare -Wtautological-unsigned-enum-zero-compare On the thread "[cfe-dev] -Wtautological-constant-compare issues", clang code owners Richard Smith, John McCall, and Reid Kleckner as well as libc++ code owner Marshall Clow stated that these new warnings are not yet ready for prime time and shouldn't be part of -Wextra. Furthermore, Vedant Kumar (Apple), Peter Hosek (Fuchsia), and me (Chromium) expressed the same concerns (Vedant on that thread, Peter on https://reviews.llvm.org/D39462, me on https://reviews.llvm.org/D41512). So remove them from -Wextra, and remove TautologicalInRangeCompare from TautologicalCompare too until they're usable with real-world code. llvm-svn: 322901
* [test] Actually check the common parts in ↵Martin Storsjo2018-01-181-7/+7
| | | | | | | | | | | CodeGen/ARM/global-merge-external.ll. NFC. Previously, these parts weren't ever checked. The label patterns need to be extended to match successfully on macho. Differential Revision: https://reviews.llvm.org/D42126 llvm-svn: 322900
* half_divide: Implement using x/yJan Vesely2018-01-185-0/+27
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322899
* half_tan: Implement using tanJan Vesely2018-01-184-0/+17
| | | | | | | | v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322898
* half_sin: Implement using sinJan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322897
* half_recip: Implement using 1/xJan Vesely2018-01-184-0/+21
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322896
* half_log2: Implement using log2Jan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322895
* half_log10: Implement using log10Jan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322894
* half_log: Implement using logJan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322893
* half_exp10: Implement using exp10Jan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322892
* half_exp2: Implement using exp2Jan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322891
* half_exp: Implement using expJan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322890
* half_cos: Implement using cosJan Vesely2018-01-184-0/+17
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322889
* half_sqrt: Cleanup implementationJan Vesely2018-01-183-51/+2
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322888
* half_rsqrt: Cleanup implementationJan Vesely2018-01-184-51/+11
| | | | | | | | | Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322887
* [clang-tidy objc-property-declaration] Expand list of ObjC acronymsBen Hamilton2018-01-183-17/+59
| | | | | | | | | | | | | | | | | | | | | Summary: We were missing some pretty common acronyms in the camelCase property name check objc-property-declaration. This expands the list and sorts it lexicographically, so we can avoid duplicates. Test Plan: make -j12 check-clang-tools Reviewers: Wizard, hokein, klimek Reviewed By: Wizard Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D42253 llvm-svn: 322886
* Support: Add missing #include.Peter Collingbourne2018-01-181-0/+2
| | | | | | | This #include is necessary to provide the definitions of _fpclass and _FPCLASS_NZ when building with libc++. llvm-svn: 322885
* [DWARFv5] Number the line-table's directory array correctly.Paul Robinson2018-01-186-30/+33
| | | | | | | | | | | | | | The compilation directory has always been #0, but as of DWARF v5 it is explicitly listed in the line-table section instead of implicitly being a reference to the compile_unit DIE's DW_AT_comp_dir attribute. This means the dumper should number the dumped array starting with 0 or 1 depending on the DWARF version of the line table. References in the generated DWARF are correct, it's just the dumper that was wrong. Also some assembler-coded tests were similarly confused about directory numbers. llvm-svn: 322884
* c-index-test: small fix to CXString handling and disposalSteve O'Brien2018-01-181-17/+19
| | | | | | | | | | | | Summary: (Separating some unrelated changes out of D42043) Reviewers: vsk, benlangmuir, akyrtzi Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D42259 llvm-svn: 322883
* [scudo] Use -fsanitize=scudo rather than --whole-archive in testsKostya Kortchinsky2018-01-181-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | Summary: Tests were being run by whole-linking the static library with our test binaries. But since `-fsanitize=scudo` landed with rL317337, we might as well change how the tests are compiled to use it. The only difference will be on Android, where the clang flag links in the dynamic library instead, but the bots are already pushing `libclang_rt.*-android.so` to the device there is no additional change needed. Tested locally, including with a standalone build, and an Android one on a O device, and it all passes. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42243 llvm-svn: 322882
* we have now https support for apt.llvm.org. Updating the URLSylvestre Ledru2018-01-181-1/+1
| | | | llvm-svn: 322881
* Convert comment to C-style to prevent warningSam Clegg2018-01-181-1/+1
| | | | llvm-svn: 322880
* Follow-up to rL322875 by initializing the do_libcxxabi variable properly.Dimitry Andric2018-01-181-0/+1
| | | | llvm-svn: 322879
* [AArch64][GlobalISel] Add isel support for global values in the large code ↵Amara Emerson2018-01-182-0/+95
| | | | | | | | | | model. Fixes PR35958. Differential Revision: https://reviews.llvm.org/D42175 llvm-svn: 322878
* [X86][SSE] Regenerate vector promotion testsSimon Pilgrim2018-01-181-19/+46
| | | | llvm-svn: 322877
* [RISCV] Fixed setting predicates for compressed instructions.Ana Pazos2018-01-186-36/+112
| | | | | | | | | | | | | | | | | | | | | | Summary: Fixed setting predicates for compressed instructions. Some instructions were being generated with C extension enabled only, without proper checks for the other required extensions like F, D and 32 and 64-bit target checks. Affected instructions: C_FLD, C_FLW, C_LD, C_FSD, C_FSW, C_SD, C_JAL, C_ADDIW, C_SUBW, C_ADDW, C_FLDSP, C_FLWSP, C_LDSP, C_FSDSP, C_FSWSP, C_SDSP Reviewers: asb, shiva0217 Reviewed By: asb Subscribers: rbar, johnrusso, simoncook, jordy.potman.lists, sabuasal, niosHD, llvm-commits Differential Revision: https://reviews.llvm.org/D42132 llvm-svn: 322876
* Add a -no-libcxxabi option to the test-release.sh script.Dimitry Andric2018-01-181-1/+8
| | | | | | | | | | | On FreeBSD, it is currently not possible to build libcxxabi and link against it, so we have been building releases with -no-libs for quite some time. However, libcxx and libunwind should build without problems, so provide an option to skip just libcxxabi. llvm-svn: 322875
* [X86][AVX] Add 256/512-bit slow PMULLD testsSimon Pilgrim2018-01-181-24/+768
| | | | llvm-svn: 322874
* [ClangFormat] ObjCSpaceBeforeProtocolList should be true in the google styleBen Hamilton2018-01-182-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | Summary: The Google style guide is neutral on whether there should be a space before the protocol list in an Objective-C @interface or @implementation. The majority of Objective-C code in both Apple's public header files and Google's open-source uses a space before the protocol list, so this changes the google style to default ObjCSpaceBeforeProtocolList to true. Test Plan: make -j12 FormatTests && ./tools/clang/unittests/Format/FormatTests Reviewers: krasimir, djasper, klimek Reviewed By: krasimir Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D41074 llvm-svn: 322873
* Add memory trackingMarshall Clow2018-01-181-1/+84
| | | | llvm-svn: 322872
* Speed up iteration of CodeView record streams.Zachary Turner2018-01-183-49/+82
| | | | | | | | | | | | | There's some abstraction overhead in the underlying mechanisms that were being used, and it was leading to an abundance of small but not-free copies being made. This showed up on a profile. Eliminating this and going back to a low-level byte-based implementation speeds up lld with /DEBUG between 10 and 15%. Differential Revision: https://reviews.llvm.org/D42148 llvm-svn: 322871
* [cmake] [libcxxabi] Don't print warning when tests are disabled.Don Hinton2018-01-181-14/+17
| | | | | | | | | | | | Summary: Don't print, possibly erroneous, warning if LIBCXXABI_INCLUDE_TESTS is false. This patch fixes a problem introduced in r291367. Differential Revision: https://reviews.llvm.org/D42229 llvm-svn: 322870
* Sprinkle a few <cstdlib> includes, for libomptarget sources usingDimitry Andric2018-01-183-0/+3
| | | | | | malloc, free, alloca and getenv. NFCI. llvm-svn: 322869
* [CodeGen][NFC] Rename IsVerbose to IsStandalone in Machine*::printFrancis Visoiu Mistrih2018-01-1810-25/+26
| | | | | | | | Committed r322867 too soon. Differential Revision: https://reviews.llvm.org/D42239 llvm-svn: 322868
* [CodeGen] Print RegClasses on MI in verbose modeFrancis Visoiu Mistrih2018-01-1819-96/+107
| | | | | | | | | | | | | r322086 removed the trailing information describing reg classes for each register. This patch adds printing reg classes next to every register when individual operands/instructions/basic blocks are printed. In the case of dumping MIR or printing a full function, by default don't print it. Differential Revision: https://reviews.llvm.org/D42239 llvm-svn: 322867
* [SLP] Fix test checks, NFC.Alexey Bataev2018-01-181-12/+22
| | | | llvm-svn: 322865
* Use high_resolution_clock instead of steady_clock. Also now builds with gcc ↵Marshall Clow2018-01-181-2/+3
| | | | | | 7.2 (for comparison purposes) llvm-svn: 322864
* A simple program for testing OSS-Fuzz test cases locally.Marshall Clow2018-01-181-0/+111
| | | | llvm-svn: 322863
* [ADT] Just give up on GCC, I can't fix this.Benjamin Kramer2018-01-182-11/+5
| | | | | | | | | | While the memmove workaround fixed it for GCC 6.3. GCC 4.8 and GCC 7.1 are still broken. I have no clue what's going on, just blacklist GCC for now. Needless to say this code is ubsan, asan and msan-clean. llvm-svn: 322862
OpenPOWER on IntegriCloud