summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* AttrDocs.td: fix bad bullet listHans Wennborg2018-02-271-5/+5
| | | | llvm-svn: 326194
* AttrDocs.td: fix bad indent and code blockHans Wennborg2018-02-271-6/+7
| | | | llvm-svn: 326193
* clang-format: use AfterControlStatement to format ObjC control blocksFrancois Ferrand2018-02-274-5/+17
| | | | | | | | | | | | | | | | | | ObjC defines `@autoreleasepool` and `@synchronized` control blocks. These used to be formatted according to the `AfterObjCDeclaration` brace- wrapping flag, which is not very consistent. This patch changes the behavior to use the `AfterControlStatement` flag instead. This should not affect the behavior unless a custom brace wrapping mode is used. Reviewers: krasimir, djasper, klimek, benhamilton Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D43232 llvm-svn: 326192
* clang-format: fix formatting of ObjC @synchronized blocksFrancois Ferrand2018-02-272-0/+30
| | | | | | | | | | | | | | | | | | | | | | | Summary: The blocks used to be formatted using the "default" behavior, and would thus be mistaken for function calls followed by blocks: this could lead to unexpected inlining of the block and extra line-break before the opening brace. They are now formatted similarly to `@autoreleasepool` blocks, as expected: @synchronized(self) { f(); } Reviewers: krasimir, djasper, klimek Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D43114 llvm-svn: 326191
* [X86][AVX] combineLoopMAddPattern - support 256-bit cases on AVX1 via ↵Simon Pilgrim2018-02-272-36/+34
| | | | | | SplitBinaryOpsAndApply llvm-svn: 326189
* Make the LLParser accept call instructions of variables in the program ASAlexander Richardson2018-02-275-19/+80
| | | | | | | | | | | | | | | | | | | Summary: Since r325479 the DataLayout includes a program address space. However, it is not possible to use `call %foo` if foo is a `i8(...) addrspace(200)` and the DataLayout specifies address space 200 as the address space for functions. With this change the IR parser will still accept variables in the program address space as well as address space 0 for call and invoke functions. Reviewers: pcc, arsenm, bjope, dylanmckay, theraven Reviewed By: dylanmckay Subscribers: wdng, llvm-commits Differential Revision: https://reviews.llvm.org/D43645 llvm-svn: 326188
* Don't output bitcode to stdout in 2002-07-31-SlashInString.ll testAlexander Richardson2018-02-271-1/+1
| | | | llvm-svn: 326187
* [dsymutil][test] Add PowerPC testJonas Devlieghere2018-02-273-0/+24
| | | | | | | | | | Add test that verifies that we don't follow DWARF values with a reference form class, such as DW_AT_sibling. Since clang doesn't generate the latter attribute, we added a PowerPC test generated on an old PowerBook G4. (Thanks Adrian!) llvm-svn: 326183
* [ADT] Recognize ppc as valid architecture in target triple.Jonas Devlieghere2018-02-272-1/+18
| | | | | | | | | | | | | | | | Until this patch, only `powerpc` and `ppc32` were recognized as valid PowerPC 32-bit architectures in a target triple. This was incompatible with the triple `ppc-apple-darwin` as returned for libObject. I found out about this when working on a test case using a binary generated on an old PowerBook G4. We had the choice of either fix this in the Mach-O object parser or in the Triple implementation. I chose the latter because it feels like the most canonical place. Differential revision: https://reviews.llvm.org/D43760 llvm-svn: 326182
* [NewGVN] Update phi-of-ops def block when updating existing ValuePHI.Florian Hahn2018-02-272-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | In case we update a ValuePHI node created earlier, we could update it based on a different OpPHI which could be in a different block. We need to update the TempToBlock mapping reflecting the new block, otherwise we would end up placing the new phi node in a wrong block. This problem is exposed by the test case in https://bugs.llvm.org/show_bug.cgi?id=36504. This patch fixes a slightly simpler problem than in the bug report. In the bug's re-producer, the additional problem is that we are re-using a ValuePHI node with to few incoming values for the new OpPHI. If this patch makes sense, I will follow it up with a patch that creates a new PHI node if the existing PHI node has a different number of incoming values. Reviewers: davide, dberlin Reviewed By: dberlin Differential Revision: https://reviews.llvm.org/D43770 llvm-svn: 326181
* [test] Extend the Driver/mingw-msvcrt.c test with a -SAME check. NFC.Martin Storsjo2018-02-271-1/+2
| | | | llvm-svn: 326180
* [ELF] - Fix case of using both --icf and --symbol-ordering-file together.George Rimar2018-02-272-1/+33
| | | | | | | | | | | | | Imagine that we have sections A, B, C, where A == C and symbol ordering file containing symbols: symC, symB, symA Previously because of ICF it was possible that final order would be B, A or B, C. That violates order specified in ordering file. Patch changes that. Differential revision: https://reviews.llvm.org/D43234 llvm-svn: 326179
* [SystemZ] Make sure SelectCode() is not called on a target opcode.Jonas Paulsson2018-02-271-1/+2
| | | | | | | | | Since getNode() might not always return the requsted opcode, for instance if called with (ISD::AND, -1) arguments, there should be a check so that SelectCode() is only called when appropriate. Review: Ulrich Weigand llvm-svn: 326178
* [MemorySSA] Invalidate def caches on deletionGeorge Burgess IV2018-02-272-2/+52
| | | | | | | | | | | The only cases I can come up with where this invalidation needs to happen is when there's a deletion somewhere. If we find more creative test-cases, we can probably go with another approach mentioned on PR36529. Fixes PR36529. llvm-svn: 326177
* [ELF] Create and export symbols provided by a linker script if they ↵Igor Kudrin2018-02-277-12/+38
| | | | | | | | | | | referenced by DSOs. It should be possible to resolve undefined symbols in dynamic libraries using symbols defined in a linker script. Differential Revision: https://reviews.llvm.org/D43011 llvm-svn: 326176
* [MemorySSA] Call the correct dtorsGeorge Burgess IV2018-02-272-4/+15
| | | | | | | | | | | | It appears that there were many cases where we were directly (through templates) calling the dtor of MemoryAccess, which is conceptually an abstract class. This hasn't been a problem, since the data members of all of the subclasses of MemoryAccess have been POD. I'm planning on changing that. :) llvm-svn: 326175
* [SCEV] Cleanup SCEVInitRewriter. NFC.Serguei Katkov2018-02-271-2/+2
| | | | | | | | | | Set default value for IgnoreOtherLoops of SCEVInitRewriter::rewrite to true to be consistent with SCEVPostIncRewriter which does not have this parameter but behaves as it would be true. This is follow up for rL326067. llvm-svn: 326174
* [RecordLayout] Don't align to non-power-of-2 sizes when using -mms-bitfieldsMartin Storsjo2018-02-272-1/+8
| | | | | | | | | | | | | | | | | | | | When targeting GNU/MinGW for i386, the size of the "long double" data type is 12 bytes (while it is 8 bytes in MSVC). When building with -mms-bitfields to have struct layouts match MSVC, data types are laid out in a struct with alignment according to their size. However, this doesn't make sense for the long double type, since it doesn't match MSVC at all, and aligning to a non-power-of-2 size triggers other asserts later. This matches what GCC does, aligning a long double to 4 bytes in structs on i386 even when -mms-bitfields is specified. This fixes asserts when using the max_align_t data type when building for MinGW/i386 with the -mms-bitfields flag. Differential Revision: https://reviews.llvm.org/D43734 llvm-svn: 326173
* [MinGW] Ignore the --start-group --end-group parametersMartin Storsjo2018-02-271-0/+2
| | | | | | | | | | These are required for handling circular dependencies between static libraries, which is something that lld-link always does without any extra parameters. Differential Revision: https://reviews.llvm.org/D43786 llvm-svn: 326172
* [Driver] Fix codeview-column-info on macOSShoaib Meenai2018-02-271-2/+1
| | | | | | | | | | | macOS home directory paths begin with /Users, and clang-cl interprets the /U portion as a macro undefine rather than a path, causing test failures on macOS. Use a -- to explicitly treat the input file as a path and fix the test. This effectively reverts r326168 and adds an alternative fix. llvm-svn: 326171
* [X86] Simplify if condition. NFCCraig Topper2018-02-271-1/+1
| | | | | | SSE2 implies SSE1 and we already covered f32 in the SSE1 check so we don't need to check f32 in the SSE2 check. llvm-svn: 326170
* Make test agnostic to cost modelAdam Nemet2018-02-271-1/+1
| | | | | | This was causing bot failures on greendragon llvm-svn: 326169
* Attempt to fix greendragon bot after r326141Adam Nemet2018-02-271-0/+1
| | | | llvm-svn: 326168
* [X86] Replace an impossible if condition with an assert.Craig Topper2018-02-271-2/+1
| | | | llvm-svn: 326167
* Mark test_*int*_t_dwarf as failing on FreeBSDEd Maste2018-02-271-0/+9
| | | | | | | | | | | | Further investigation required; tests will be enabled on the buildbot worker soon. Marking failing tests for now in order to start with a green buildbot while investigation takes place. This is a recommit of r326134, with the required import added. llvm.org/pr36527 llvm-svn: 326166
* [analyzer] Fix an uninitialized field.Artem Dergachev2018-02-271-0/+1
| | | | | | Found by the analyzer! llvm-svn: 326165
* [Driver] Allow using a canonical form of '-fuse-ld=' when cross-compiling on ↵Igor Kudrin2018-02-273-2/+27
| | | | | | | | | | Windows. clang used to require adding an ".exe" suffix when targeting ELF systems on Windows. Differential Revision: https://reviews.llvm.org/D43621 llvm-svn: 326164
* Add new interceptors: getnetent(3) familyKamil Rytarowski2018-02-274-0/+163
| | | | | | | | | | | | | | | | | | | | | Summary: getnetent, getnetbyaddr, getnetbyname - get network entry Reuse them on NetBSD. Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D43543 llvm-svn: 326163
* Add new interceptors: getprotoent(3) familyKamil Rytarowski2018-02-274-0/+167
| | | | | | | | | | | | | | | | | | | | | Summary: getprotoent, getprotobynumber, getprotobyname - get protocol entry Reuse them on NetBSD. Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Reviewed By: vitalybuka Subscribers: kubamracek, llvm-commits, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D43541 llvm-svn: 326162
* Add new interceptors: getttyent(3) familyKamil Rytarowski2018-02-275-0/+121
| | | | | | | | | | | | | | | | | | | | | Summary: getttyent, getttynam, setttyentpath - get ttys file entry Reuse them on NetBSD. Sponsored by <The NetBSD Foundation> Reviewers: vitalybuka, joerg Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D43539 llvm-svn: 326161
* [asan] Enable ASAN_INTERCEPT___CXA_THROW for x86 AndroidVitaly Buka2018-02-271-4/+1
| | | | llvm-svn: 326160
* Move "concurrent events" tests back into one folderPavel Labath2018-02-2771-348/+4
| | | | | | | | | These tests all test very similar things, and use the same inferior. They were only placed in separate folders to achieve better paralelization. Now that we paralelize at a file level, this is no longer relevant, and we can put them together again. llvm-svn: 326159
* Fix r326154 buildbots test failEvgeny Stupachenko2018-02-272-3/+2
| | | | | | | | | | Summary: Add specific mtriples to tests added in r326154. From: Evgeny Stupachenko <evstupac@gmail.com> <evgeny.v.stupachenko@intel.com> llvm-svn: 326158
* [analyzer] Switch the default exploration strategy to priority queue based ↵George Karpenkov2018-02-275-6/+11
| | | | | | | | | | on coverage After the investigation it seems safe to flip the switch. Differential Revision: https://reviews.llvm.org/D43782 llvm-svn: 326157
* [analyzer] Logging test typo quickfix.George Karpenkov2018-02-271-1/+1
| | | | llvm-svn: 326156
* [analyzer] Logging test quickfix.George Karpenkov2018-02-271-2/+1
| | | | llvm-svn: 326155
* Fix PR36032, PR35432Evgeny Stupachenko2018-02-273-0/+373
| | | | | | | | | | | | | | | Summary: The change fix an assert fail at ScalarEvolutionExpander.cpp: assert(ExitCount != SE.getCouldNotCompute() && "Invalid loop count"); Reviewers: sbaranga Differential Revision: http://reviews.llvm.org/D42604 From: Evgeny Stupachenko <evstupac@gmail.com> <evgeny.v.stupachenko@intel.com> llvm-svn: 326154
* [SelectionDAG] Remove code from PromoteIntRes_CONCAT_VECTORS that was added ↵Craig Topper2018-02-271-15/+0
| | | | | | | | | | in r320674 to help X86. AVX512 used to promote v32i1 to v32i8 during legalization when BWI was disabled. So this code was added to improve legalization of v32i1 concat_vectors of v16i1 by extending the v16i1 to v16i8 to avoid scalarization. X86 has since switched to legalizing v32i1 by splitting to v16i1 instead. This has rendered this code unnecessary and its no longer exercised. llvm-svn: 326153
* Revert "Revert "[analyzer] Quickfix: do not overflow in calculating offset ↵George Karpenkov2018-02-273-1/+61
| | | | | | | | | | in RegionManager"" This reverts commit c4cc41166d93178a3ddd4b2b5a685cf74a459247. Revert and fix uninitialized read. llvm-svn: 326152
* [Driver] Add SafeStack to a map of incompatible sanitizersPetr Hosek2018-02-272-6/+5
| | | | | | | | | This allows reporting an error when user tries to use SafeStack with incompatible sanitizers. Differential Revision: https://reviews.llvm.org/D43606 llvm-svn: 326151
* Fix build for iOS/ARM ("__Unwind_RaiseException" is not available for armv7).Kuba Mracek2018-02-261-1/+1
| | | | llvm-svn: 326150
* [asan] Fix build for AndroidVitaly Buka2018-02-261-2/+2
| | | | llvm-svn: 326149
* [InstCombine, InstSimplify] add tests with undef elements in constant FP ↵Sanjay Patel2018-02-262-0/+62
| | | | | | vectors; NFC llvm-svn: 326148
* [AArch64] Harden test casesEvandro Menezes2018-02-262-2/+5
| | | | | | NFC llvm-svn: 326147
* [StaticAnalyzer] Fix some Clang-tidy modernize and Include What You Use ↵Eugene Zelenko2018-02-265-330/+366
| | | | | | warnings; other minor fixes (NFC). llvm-svn: 326146
* Fix which Darwin versions have ObjC runtime with full subscripting support.Volodymyr Sapsai2018-02-262-5/+5
| | | | | | | | | | | | | | | | | Update min deployment target in some tests so that they don't try to link against libarclite and don't fail when it's not available. rdar://problem/29253617 Reviewers: vsk, kubamracek Reviewed By: vsk Subscribers: jkorous-apple, cfe-commits Differential Revision: https://reviews.llvm.org/D43787 llvm-svn: 326145
* Fix codeview-column-info.c test with a tripleReid Kleckner2018-02-261-3/+3
| | | | llvm-svn: 326144
* Fix which Darwin versions have ObjC runtime with full subscripting support.Volodymyr Sapsai2018-02-262-1/+7
| | | | | | | | | | | | | | | | | Update min deployment target in some tests so that they don't try to link against libarclite and don't fail when it's not available. rdar://problem/29253617 Reviewers: vsk, kubamracek Reviewed By: vsk Subscribers: jkorous-apple, cfe-commits Differential Revision: https://reviews.llvm.org/D43787 llvm-svn: 326143
* [GISel]: Don't assert when constraining RegisterOperands which are uses.Aditya Nandakumar2018-02-265-13/+14
| | | | | | | | | | | | | Currently we assert that only non target specific opcodes can have missing RegisterClass constraints in the MCDesc. The backend can have instructions with register operands but don't have RegisterClass constraints (say using unknown_class) in which case the instruction defining the register will constrain it. Change the assert to only fire if a def has no regclass. https://reviews.llvm.org/D43409 llvm-svn: 326142
* Re-land "Emit proper CodeView when -gcodeview is passed without the cl driver."Reid Kleckner2018-02-263-1/+20
| | | | | | | Reverts r326116 and re-lands r326113 with a fix to ASan so that it enables column info in its test suite. llvm-svn: 326141
OpenPOWER on IntegriCloud