summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* UpdateTestChecks: Lanai triple supportRoman Lebedev2019-05-292-41/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The assembly structure most resembles the SPARC pattern: ``` .globl f6 ! -- Begin function f6 .p2align 2 .type f6,@function f6: ! @f6 .cfi_startproc ! %bb.0: st %fp, [--%sp] <...> ld -8[%fp], %fp .Lfunc_end0: .size f6, .Lfunc_end0-f6 .cfi_endproc ! -- End function ``` Test being affected by upcoming patch, so regenerate it. Reviewers: RKSimon, jpienaar Reviewed By: RKSimon Subscribers: jyknight, fedor.sergeev, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D62545 llvm-svn: 362019
* gn build: Make it possible to build with coverage informationNico Weber2019-05-291-0/+28
| | | | | | Differential Revision: https://reviews.llvm.org/D62508 llvm-svn: 362018
* [DAGCombiner] Replace gathers with a zero mask with the passthru valueBenjamin Kramer2019-05-292-3/+28
| | | | | | | | | | These can be created by the legalizer when splitting a larger gather. See https://llvm.org/PR42055 for a motivating example. Differential Revision: https://reviews.llvm.org/D62613 llvm-svn: 362015
* [analyzer] [NFC] PathDiagnostic: Create PathDiagnosticPopUpPieceCsaba Dabis2019-05-299-46/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This new piece is similar to our macro expansion printing in HTML reports: On mouse-hover event it pops up on variables. Similar to note pieces it supports `plist` diagnostics as well. It is optional, on by default: `add-pop-up-notes=true`. Extra: In HTML reports `background-color: LemonChiffon` was too light, changed to `PaleGoldenRod`. Reviewers: NoQ, alexfh Reviewed By: NoQ Subscribers: cfe-commits, gerazo, gsd, george.karpenkov, alexfh, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D60670 llvm-svn: 362014
* LLVM IR: update Clang tests for byval being a typed attribute.Tim Northover2019-05-296-18/+18
| | | | | | | | Since byval is now a typed attribute it gets sorted slightly differently by LLVM when the order of attributes is being canonicalized. This updates the few Clang tests that depend on the old order. llvm-svn: 362013
* IR: add optional type to 'byval' function parametersTim Northover2019-05-2940-41/+425
| | | | | | | | | | | | | | When we switch to opaque pointer types we will need some way to describe how many bytes a 'byval' parameter should occupy on the stack. This adds a (for now) optional extra type parameter. If present, the type must match the pointee type of the argument. Note to front-end maintainers: if this causes test failures, it's probably because the "byval" attribute is printed after attributes without any parameter after this change. llvm-svn: 362012
* [analyzer] print() JSONify chain: Generic stmt_idCsaba Dabis2019-05-292-3/+3
| | | | | Summary: Some environment create less statements so make them generic. llvm-svn: 362011
* mac: Make ubsan test config look more like asan test configNico Weber2019-05-291-4/+1
| | | | | | | | | | | | | | | | | | | | | | | In particular, don't call get_target_flags_for_arch() since that will cause an error in some situations: If DARWIN_iossim_ARCHS=i386;x86_64, DARWIN_osx_ARCHS=x86_64, and DARWIN_iossym_SYSROOT isn't set (due to the simulator sysroot not being available), then config-ix.cmake won't add i386 to COMPILER_RT_SUPPORTED_ARCH but ubsan's test/CMakeLists.txt would call get_target_flags_for_arch() with i386, which would then run into the error in get_target_flags_for_arch(). Having these conditions isn't ideal. The background here is that we configure our mac-hosted trunk bots all the same (so they all have the same DARWIN_*_archs, and we don't easily know if a mac host bot is targeting mac or ios at the place where we call cmake), but only the ios-targeting bots have ios sysroots available. This will hopefully unbreak that use case without impacting anything else -- and it makes ubsan and asan test setup more alike. llvm-svn: 362010
* [analyzer] SATestBuild.py: Use driver for analyzing single-file tests.Artem Dergachev2019-05-292-23/+6
| | | | | | | | Don't bother coming up with a -cc1 run-line ourselves. This, in particular, gets rid of a macOS-specific code path. llvm-svn: 362009
* [analyzer] print() JSONify: SVal implementationCsaba Dabis2019-05-293-2/+17
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: cfe-commits, szepet, rnkovacs, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62497 llvm-svn: 362008
* [CMake] [Runtimes] Set *_STANDALONE_BUILDChris Bieneman2019-05-291-0/+6
| | | | | | | | | | | | | | | | | | | | | Summary: The runtimes use `*_STANDALONE_BUILD=OFF` to signify that clang is an in-tree target. This is not the case with the runtime builds, so we really need this set to `ON`. In order to resolve the issues phosek was having with checks, we should use checks that don't link. We can use compiler-rt's `try_compile_only` as a basis for that. This patch is *required* to be able to run the runtime libraries check-* targets. Reviewers: smeenai, phosek, compnerd Reviewed By: phosek Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D62410 llvm-svn: 362007
* [InstCombine] Optimize always overflowing signed saturating add/subNikita Popov2019-05-292-24/+16
| | | | | | | | | Based on the overflow direction information added in D62463, we can now fold always overflowing signed saturating add/sub to signed min/max. Differential Revision: https://reviews.llvm.org/D62544 llvm-svn: 362006
* Fix an unused-variable error.Haojian Wu2019-05-291-0/+1
| | | | llvm-svn: 362005
* [WebAssembly] Support VPtr sanitizer for EmscriptenThomas Lively2019-05-293-0/+29
| | | | | | | | | | | | | | | | | | | | | | | Summary: After https://github.com/emscripten-core/emscripten/pull/8651, Emscripten supports the full UBSan runtime. This includes the VPtr sanitizer. This diff allows clang to generate code that uses the VPtr sanitizer for Emscripten. Patch by Guanzhong Chen Reviewers: tlively, aheejin Reviewed By: aheejin Subscribers: dschuff, sbc100, jgravelle-google, sunfish, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D62559 llvm-svn: 362004
* [analyzer] print() JSONify: CFG implementationCsaba Dabis2019-05-293-6/+25
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: cfe-commits, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62496 llvm-svn: 362003
* [analyzer] print() JSONify: Decl revisionCsaba Dabis2019-05-291-6/+4
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: cfe-commits, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62495 llvm-svn: 362002
* AMDGPU: Return address loweringAakanksha Patil2019-05-293-1/+92
| | | | | | | | The patch computes the return address for the current function. Differential revision: https://reviews.llvm.org/D59666 llvm-svn: 362001
* [analyzer][AST] print() JSONify: Stmt implementationCsaba Dabis2019-05-296-54/+79
| | | | | | | | | | | | | | | | | | | | Summary: This patch also adds a function called `JsonFormat()` which: - Flattens the string so removes the new-lines. - Escapes double quotes. Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: cfe-commits, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62494 llvm-svn: 362000
* [Target] Introduce Process::GetLanguageRuntimesAlex Langford2019-05-295-10/+42
| | | | | | | | | | | | | | | | Summary: Currently there's not really a good way to iterate over the language runtimes a process has. This is sometimes desirable (as seen in my change to Thread). Additionally, there's not really a good reason to iterate over every available language, but rather only over languages for which we have a plugin loaded. Reviewers: JDevlieghere, davide, jingham Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D62562 llvm-svn: 361999
* lit: modernize the lit configuration for the lit testsStella Stamenova2019-05-293-33/+17
| | | | | | | | | | | | | | Summary: This also normalizes the config feature that represents the windows platform to "system-windows" as opposed to having both "windows" and "system-windows" Reviewers: asmith, probinson Subscribers: delcypher, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61798 llvm-svn: 361998
* [analyzer] print() JSONify: getNodeLabel implementationCsaba Dabis2019-05-295-119/+157
| | | | | | | | | | | | | | | | | Summary: This patch also rewrites the ProgramPoint printing. Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: cfe-commits, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62346 llvm-svn: 361997
* [Index] Compute correct symbol kind for variable templatesIlya Biryukov2019-05-292-0/+49
| | | | | | | | | | | | | | | | | | Summary: The index library itself seems to never pass variable templates as input, however clangd does. Reviewers: kadircet Reviewed By: kadircet Subscribers: jkorous, arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D62579 llvm-svn: 361996
* Fixed source header [NFC]Greg Clayton2019-05-291-1/+1
| | | | llvm-svn: 361995
* [CUDA][HIP] Skip setting `externally_initialized` for static device variables.Michael Liao2019-05-292-1/+12
| | | | | | | | | | | | | | | | | Summary: - By declaring device variables as `static`, we assume they won't be addressable from the host side. Thus, no `externally_initialized` is required. Reviewers: yaxunl Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D62603 llvm-svn: 361994
* Yet another attempt to fix buildbot after r361949Eugene Leviant2019-05-291-3/+3
| | | | | | | Looks like %p format specifier of createStringError behaves differently on different platforms llvm-svn: 361993
* Add curley brackets to case statement that declares a variable.Erich Keane2019-05-291-1/+2
| | | | llvm-svn: 361992
* [X86] Fix machineverifier error on avx512f-256-set0.mirCraig Topper2019-05-291-3/+8
| | | | | | | | Previously the pass ran the entire llc pipeline which caused the IR to be recodegened. This commit restricts it to just running the postrapseudos pass and checking the results of that instead of the final assembly. llvm-svn: 361991
* CallSiteSplitting: Respect convergent and noduplicateMatt Arsenault2019-05-293-0/+183
| | | | llvm-svn: 361990
* [ThinLTO] Use original alias visibility when importingTeresa Johnson2019-05-293-7/+8
| | | | | | | | | | | | | | | | | | | | | Summary: When we import an alias, we do so by making a clone of the aliasee. Just as this clone uses the original alias name and linkage, it should also use the same visibility (not the aliasee's visibility). Otherwise, linker behavior is affected (e.g. if the aliasee was hidden, but the alias is not, the resulting imported clone should not be hidden, otherwise the linker will make the final symbol hidden which is incorrect). Reviewers: wmi Subscribers: mehdi_amini, inglorion, eraman, steven_wu, dexonsmith, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D62535 llvm-svn: 361989
* [NFC][InstCombine] Add a unary FNeg test to fsub.ll.Cameron McInally2019-05-291-0/+11
| | | | llvm-svn: 361988
* Add more information to the log timer dumpAntonio Afonso2019-05-293-13/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The `log timer dump` is showing the time of the function itself minus any function that is called from this one that also happens to be timed. However, this is really not obvious and it also makes it hard to understand the time spent in total and also which children are actually taking the time. To get a better reading of the timer dump I added the total, children (which I named child) and also the hit count. I used these timers to figure out a performance issue and only after adding this things were more clear to me. It looks like this: ``` (lldb) log timer dump 35.447713617 sec (total: 35.449s; child: 0.001s; count: 1374) for void SymbolFileDWARF::Index() 29.717921481 sec (total: 29.718s; child: 0.000s; count: 8230500) for const lldb_private::ConstString &lldb_private::Mangled::GetDemangledName(lldb::LanguageType) const 21.049508865 sec (total: 24.683s; child: 3.633s; count: 1399) for void lldb_private::Symtab::InitNameIndexes() ... ``` Reviewers: clayborg, teemperor, labath, espindola, xiaobai Reviewed By: labath, xiaobai Subscribers: emaste, mgorny, arichardson, eraman, MaskRay, jdoerfert, labath, davide, teemperor, aprantl, erik.pilkington, jfb, abidh, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D61235 llvm-svn: 361987
* [clang-format] Allow configuring list of function-like macros that resolve ↵Francois Ferrand2019-05-297-8/+80
| | | | | | | | | | | | | | | | | | | | | | | to a type Summary: Adds a `TypenameMacros` configuration option that causes certain identifiers to be handled in a way similar to `typeof()`. This is enough to: - Prevent misinterpreting declarations of pointers to such types as expressions (`STACK_OF(int) * foo` -> `STACK_OF(int) *foo`), - Avoid surprising line breaks in variable/struct field declarations (`STACK_OF(int)\nfoo;` -> `STACK_OF(int) foo;`, see https://bugs.llvm.org/show_bug.cgi?id=30353). Reviewers: Typz, krasimir, djasper Reviewed By: Typz Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D57184 llvm-svn: 361986
* Partial revert of revert of r361827: Add constrained intrinsic tests for ↵Kevin P. Neal2019-05-291-0/+7528
| | | | | | | | | | | | | | powerpc64le. The powerpc64-"nonle" tests are removed. They fail because of a bug that Drew is currently working on that affects multiple targets. Submitted by: Drew Wock <drew.wock@sas.com> Reviewed by: Hal Finkel, Kevin P. Neal Approved by: Hal Finkel Differential Revision: http://reviews.llvm.org/D62388 llvm-svn: 361985
* [NFC] clang-format: Use LLVM style in NamespaceEndCommentsFixerTestFrancois Ferrand2019-05-291-148/+149
| | | | | | | | | | As pointed out in https://reviews.llvm.org/D37813#inline-555026, the code which is formatted does not match LLVM formatting style. Technically this is not a problem since these tests bypass most of the formatter, but it can be misleading. llvm-svn: 361984
* [analyzer] print() JSONify: Program state implementationCsaba Dabis2019-05-294-29/+38
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62087 llvm-svn: 361983
* [analyzer] print() JSONify: Checker messages implementationCsaba Dabis2019-05-295-15/+108
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62086 llvm-svn: 361982
* [NFC][libcxx] Remove trailing whitespaceLouis Dionne2019-05-2918-124/+124
| | | | | | It's incredibly annoying when trying to create diffs llvm-svn: 361981
* [analyzer] print() JSONify: Constructing objects implementationCsaba Dabis2019-05-296-44/+110
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62085 llvm-svn: 361980
* [analyzer] print() JSONify: Type information implementationCsaba Dabis2019-05-295-25/+37
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62083 llvm-svn: 361979
* [analyzer] print() JSONify: Constraints implementationCsaba Dabis2019-05-295-30/+57
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62082 llvm-svn: 361978
* [WebAssembly] Move direct call tracking from member to local. NFC.Sam Clegg2019-05-292-10/+10
| | | | | | | | | | | This data structure is only needed temporarily while symbols are being created. This is a followup on rL361678. Differential Revision: https://reviews.llvm.org/D62548 llvm-svn: 361977
* [analyzer] print() JSONify: Environment implementationCsaba Dabis2019-05-2910-64/+177
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D62081 llvm-svn: 361976
* [WebAssembly] Fix signatures of undefined function in LTO object which are ↵Sam Clegg2019-05-292-10/+28
| | | | | | | | | | | | | not called directly. We recently added special handling for function that are not called directly but failed to add testing for the LTO case. See https://reviews.llvm.org/D62153 Differential Revision: https://reviews.llvm.org/D62561 llvm-svn: 361975
* [CodeComplete] Add semicolon when completing patterns for 'static_assert' ↵Ilya Biryukov2019-05-294-13/+15
| | | | | | | | | and 'typedef This is a trivial follow-up to r360042, which added semicolons to other pattern completions, so sending without review. llvm-svn: 361974
* [NFC][InstCombine] Add unary FNeg tests to fpcast.ll and fpextend.llCameron McInally2019-05-292-0/+52
| | | | llvm-svn: 361973
* [analyzer] print() JSONify: Store implementationCsaba Dabis2019-05-296-53/+117
| | | | | | | | | | | | | | | | | Summary: - Reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus Reviewed By: NoQ Subscribers: szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp Tags: #clang Differential Revision: https://reviews.llvm.org/D61912 llvm-svn: 361972
* [NFC][InstCombine] Add unary FNeg tests to fsub.ll known-never-nan.llCameron McInally2019-05-292-0/+138
| | | | llvm-svn: 361971
* Add additional constraints on midpoint(pointer, pointer). Fixes PR#42037.Marshall Clow2019-05-292-5/+17
| | | | llvm-svn: 361970
* [clangd] Map typedefs to the same LSP completion kind as VSCodeIlya Biryukov2019-05-291-2/+5
| | | | | | For consistency and, more importantly, to get a nicer icon for those in VSCode. llvm-svn: 361969
* Qualify use of llvm::empty that's ambiguous with std::emptySam McCall2019-05-291-1/+1
| | | | llvm-svn: 361968
OpenPOWER on IntegriCloud