summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Patch for small addition to availability attribute.Fariborz Jahanian2014-11-052-0/+32
| | | | | | | | | This is to accept "NA" in place of vesion number for availability attribute. Used on introduced=NA to mean unavailable and deprecated=NA to mean nothing (not deprecated). rdar://18804883 llvm-svn: 221417
* Fixed the C++ method name class to be a bit more picky about what it ↵Greg Clayton2014-11-052-3/+50
| | | | | | | | | | | | identifies as a C++ method. This was done by using regular expressions on any basename we find to ensure it is valid. This fixed setting breakpoints by name with values like '[J]com.robovm.debug.server.apps.SleepLoop.startingUp()V'. This was previously triggering the C++ method name class to identify the string as C++ with a basename of '[J]com.robovm.debug.server.apps.SleepLoop.startingUp' which was obviously incorrect. The changes also fixed errors in templated function names like "void foo<int>(...)" where "void foo<int>" was being identified incorrectly as the basename. We also handle more C++ operators correctly now. llvm-svn: 221416
* cmake: Only export targets in the standalone buildReid Kleckner2014-11-051-21/+23
| | | | | | | Trying to fix bots that didn't like the fact that I exported targets that depended on LLVM without exporting targets from LLVM. llvm-svn: 221415
* Fix shadowed variable warningNick Kledzik2014-11-051-4/+4
| | | | llvm-svn: 221414
* cmake: Make the LLDB standalone build work for meReid Kleckner2014-11-051-1/+8
| | | | | | | | | | | | This allows me to generate a Visual Studio solution that builds LLDB if you have standalone builds of LLVM and Clang lying around. Unfortunately, you have to pass *four* CMake variables in, but it means you don't have to take the extra step of installing Clang and LLVM to some package prefix. Hopefully this will generate a more usable XCode project too. llvm-svn: 221413
* MachO: Remove an unused variable from processSectionDavid Majnemer2014-11-051-2/+0
| | | | | | | | | The local variable `cfi` became dead in r220730 when it's use was obviated; it was replaced with a call to read32. No functionality change intended. llvm-svn: 221412
* Make it easier to build against a pre-built Clang package with CMakeReid Kleckner2014-11-052-0/+31
| | | | | | | | | | | | | Installing <prefix>/share/clang/cmake/ClangConfig.cmake makes CMake's builtin find_package() utility work with Clang. This also allows downstream consumers of Clang to statically link against libraries like clangAST and have that pull in dependencies like clangBasic and LLVMSupport. See the CMake docs on packages: http://www.cmake.org/cmake/help/v3.0/manual/cmake-packages.7.html llvm-svn: 221411
* Thread Safety Analysis: move warnings on range-based for loops out of betaDeLesley Hutchins2014-11-051-11/+9
| | | | | | and into -Wthread-safety. llvm-svn: 221410
* [Sanitizer] Introduce generic stack frame rendering machineryAlexey Samsonov2014-11-0511-112/+343
| | | | | | | | | | | | | | | | | | | | | | | | Summary: This commit introduces function __sanitizer::RenderFrame() that allows to render the contents of AddressInfo (essentially, symbolized stack frame) using the custom format string. This function can be used to implement stack frame formatting for both ThreadSanitizer and generic StackTrace::Print(), used in another places. This paves the way towards allowing user to control the format of stack frames, obtaining them in any format he desires, and/or enforcing the consistent output from all sanitizers. Test Plan: compiler-rt test suite Reviewers: kcc Reviewed By: kcc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D6140 llvm-svn: 221409
* [mips64] Fix MIPS64 exception personality encodingPetar Jovanovic2014-11-052-5/+12
| | | | | | | | | | | Remove dynamic relocations of __gxx_personality_v0 from the .eh_frame. The MIPS64 follow-up of the MIPS32 fix (rL209907). Patch by Vladimir Stefanovic. Differential Revision: http://reviews.llvm.org/D6141 llvm-svn: 221408
* [X86][SSE] Vector integer to float conversion memory foldingSimon Pilgrim2014-11-052-8/+29
| | | | | | | | Added missing memory folding for the (V)CVTDQ2PS instructions - we can safely fold these (but not the (V)CVTDQ2PD versions which have a register/memory size discrepancy in the source operand). I've added a test case demonstrating that stack folding now works. Differential Revision: http://reviews.llvm.org/D5981 llvm-svn: 221407
* [docs] Document usage of Inputs/ for extra test files.Sean Silva2014-11-051-0/+52
| | | | llvm-svn: 221406
* Decouple ProcessWindows from the Windows debug driver thread.Zachary Turner2014-11-0521-83/+413
| | | | | | | | | In the llgs world, ProcessWindows will eventually go away and we'll implement a different protocol. This patch decouples ProcessWindows from the core debug loop so that this transition will not be more difficult than it needs to be. llvm-svn: 221405
* This patch fixes a crash after rebuilding call AST ofFariborz Jahanian2014-11-052-0/+39
| | | | | | | | | | | | | an __unknown_anytype(...). In this case, we rebuild the vararg function type specially to convert the call expression to something that IRGen can handle. However, FunctionDecl as rebuilt in RebuildUnknownAnyExpr::resolveDecl is bogus and results in crash when accessing its params later on. This patch fixes the crash by rebuilding the FunctionDecl to match its new resolved type. rdar://15297105. John McCall, please review post-commit. llvm-svn: 221404
* [Linker] Add some test coverage for llvm.ident mergingSean Silva2014-11-053-0/+14
| | | | llvm-svn: 221403
* Allow inline test case to register actually useful teardown hooks by ↵Enrico Granata2014-11-053-5/+13
| | | | | | allowing a hook to be passed back the test instance, were it not to be already bound to self. Use this ability to make the reversal of escape-non-printables a teardown hook for added reliability of the testing logic llvm-svn: 221402
* Fix heap-use-after-free bug in expandSDiv when the operands areMichael Ilseman2014-11-051-6/+10
| | | | | | | | constants, as discovered by ASAN. Patch by Mehdi Amini! llvm-svn: 221401
* Fixed the Objective-C stripped ivar test to ensureSean Callanan2014-11-051-0/+2
| | | | | | | | | | | that we load debug information properly. If we don't explicitly add-dsym, sometimes Spotlight will help out and tell us about the dSYM but we shouldn't be relying on that. Thanks to Jim for catching this. <rdar://problem/16424661> llvm-svn: 221400
* Add a setting escape-non-printables that drives whether the StringPrinter ↵Enrico Granata2014-11-058-18/+77
| | | | | | | | | | | should or should not escape sequences such as \t, \n, .. and generally any non-printing character The recent StringPrinter changes made this behavior the default, and the setting defaults to yes If you want to change this behavior and see non-printables unescaped (e.g. "a\tb" as "a b"), set it to false Fixes rdar://12969594 llvm-svn: 221399
* Fix rvalue bug in __has_operator_addressofEric Fiselier2014-11-052-11/+24
| | | | llvm-svn: 221398
* [ELF] Use getVisibility() function to access st_other fieldSimon Atanasyan2014-11-051-4/+4
| | | | | | | The st_other field can contains not only visibility flag so we should retrieve a visibility flag using a bit-mask. llvm-svn: 221397
* Remove obsolete ARM intrinsics vclz and vcntSteven Wu2014-11-052-12/+0
| | | | | | | Both of the intrinsics get autoupgraded to target independent intrinsics. llvm-svn: 221396
* Fix operator & detection trait to check for free function overloads as wellEric Fiselier2014-11-052-2/+20
| | | | llvm-svn: 221395
* BlockGenerator: Recompute values from SCEV before handing back the original ↵Tobias Grosser2014-11-053-15/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | values This patch moves the SCEV based (re)generation of values before the checking for scop-constant terms. It enables us to provide SCEV based replacements, which are necessary to correctly generate OpenMP subfunctions when using the SCEV based code generation. When recomputing a new value for a value used in the code of the original scop, we previously directly returned the same original value for all scop-constant expressions without even trying to regenerate these values using our SCEV expression. This is correct when the newly generated code remains fully in the same function, however in case we want to outline parts of the newly generated scop into subfunctions, this approach means we do not have any opportunity to update these values in the SCEV based code generation. (In the non-SCEV based code generation, we can provide such updates through the GlobalMap). To ensure we have this opportunity, we first try to regenerate scalar terms with our SCEV builder and will only return scop-constant expressions if SCEV based code generation was not possible. This change should not affect the results of the existing code generation passes. It only impacts the upcoming OpenMP based code generation. This commit also adds a test case. This test case passes before and after this commit. It was added to ensure test coverage for the changed code. llvm-svn: 221393
* Add accessor to get 'visibility' part of st_other fieldSimon Atanasyan2014-11-052-1/+5
| | | | | | This new `getVisibility()` function will also be used in the LLD code. llvm-svn: 221392
* cmake: Conditionalize CodeGen's dependency on intrinsics_genReid Kleckner2014-11-051-1/+10
| | | | | | | | Custom targets in cmake cannot be exported, and this dependency is only needed in the combined build to ensure that Intrinsics.gen is created before compiling CodeGen. In the standalone, all of LLVM is build first. llvm-svn: 221391
* Fix test breakage from r221386Derek Schuff2014-11-051-2/+2
| | | | llvm-svn: 221389
* BlockGenerator: inline lookupAvailableValue into getValue [NFC]Tobias Grosser2014-11-052-26/+11
| | | | | | | | | | | There was no good reason why this code was split accross two functions. In subsequent changes we will change the order in which values are looked up. Doing so would make the split into two functions even more arbitrary. We also slightly improve the documentation. llvm-svn: 221388
* R600/SI: Fix omod display for VOP3bMatt Arsenault2014-11-051-1/+1
| | | | llvm-svn: 221387
* [x86 fast-isel] Materialize allocas with the correct-sized lea for ILP32Derek Schuff2014-11-053-1/+25
| | | | | | | | | | Summary: X86FastISel::fastMaterializeAlloca was incorrectly conditioning its opcode selection on subtarget bitness rather than pointer size. Differential Revision: http://reviews.llvm.org/D6136 llvm-svn: 221386
* [DebugInfo] Do not record artificial global initializer functions in the ↵Frederic Riss2014-11-052-5/+8
| | | | | | | | | | | | | | | DeclCache. When we are generating the global initializer functions, we call CGDebugInfo::EmitFunctionStart() with a valid decl which is describing the initialized global variable. Do not update the DeclCache with this key as it will overwrite the the cached variable DIGlobalVariable with the newly created artificial DISubprogram. One could wonder if we should put artificial subprograms in the DIE tree at all (there are vaild uses for them carrying line information though). llvm-svn: 221385
* R600/SI: Add testcase I forgot to commit from months agoMatt Arsenault2014-11-051-0/+11
| | | | llvm-svn: 221384
* R600/SI: Move all rsrc building functions to SIISelLoweringMatt Arsenault2014-11-053-50/+61
| | | | llvm-svn: 221383
* R600/SI: Remove SI_ADDR64_RSRCMatt Arsenault2014-11-054-44/+62
| | | | llvm-svn: 221382
* Fix failing allow_user_segv.cc test on OS X 10.10Kuba Brecka2014-11-051-12/+23
| | | | | | | | The current ASan testcase Posix/allow_user_segv.cc expects SIGBUS to be triggered on 32-bit Darwin. This has apparently changed on 10.10 to trigger SIGSEGV instead, just as on 64-bit. Let's just install handlers for both SIGSEGV and SIGBUS instead of #ifdef'ing. Reviewed at http://reviews.llvm.org/D6121 llvm-svn: 221381
* Extend the OS X pthread_get_stacksize_np workaround to 10.10Kuba Brecka2014-11-051-1/+1
| | | | | | | | Fixes a failing ASan testcase (TestCases/stack-use-after-return.cc) on OS X 10.10. Reviewed at http://reviews.llvm.org/D6120 llvm-svn: 221380
* Extend Mac OS versions to YosemiteKuba Brecka2014-11-052-1/+3
| | | | | | | | This also fixes the test/asan/TestCases/Darwin/malloc_zone-protected.cc test failure on OS X 10.10. Reviewed at http://reviews.llvm.org/D6119 llvm-svn: 221379
* Fix LLDB build as a result of upstream LLVM changes.Zachary Turner2014-11-051-2/+1
| | | | llvm-svn: 221378
* [NVPTX] Add NVPTXLowerStructArgs passJustin Holewinski2014-11-055-0/+178
| | | | | | | | | | | | | | | | | | | | | | | This works around the limitation that PTX does not allow .param space loads/stores with arbitrary pointers. If a function has a by-val struct ptr arg, say foo(%struct.x *byval %d), then add the following instructions to the first basic block : %temp = alloca %struct.x, align 8 %tt1 = bitcast %struct.x * %d to i8 * %tt2 = llvm.nvvm.cvt.gen.to.param %tt2 %tempd = bitcast i8 addrspace(101) * to %struct.x addrspace(101) * %tv = load %struct.x addrspace(101) * %tempd store %struct.x %tv, %struct.x * %temp, align 8 The above code allocates some space in the stack and copies the incoming struct from param space to local space. Then replace all occurences of %d by %temp. Fixes PR21465. llvm-svn: 221377
* IR: MDNode => Value: Update for LLVM API change in r221375Duncan P. N. Exon Smith2014-11-051-1/+1
| | | | llvm-svn: 221376
* IR: MDNode => Value: NamedMDNode::getOperator()Duncan P. N. Exon Smith2014-11-0517-42/+47
| | | | | | | | | | | | | Change `NamedMDNode::getOperator()` from returning `MDNode *` to returning `Value *`. To reduce boilerplate at some call sites, add a `getOperatorAsMDNode()` for named metadata that's expected to only return `MDNode` -- for now, that's everything, but debug node named metadata (such as llvm.dbg.cu and llvm.dbg.sp) will soon change. This is part of PR21433. Note that there's a follow-up patch to clang for the API change. llvm-svn: 221375
* remove extra breaks; NFCSanjay Patel2014-11-051-4/+1
| | | | llvm-svn: 221374
* IR: MDNode => Value: AsmWriter SlotTracker APIDuncan P. N. Exon Smith2014-11-051-8/+9
| | | | | | | | Change `SlotTracker::CreateMetadataSlot()` and `SlotTracker::getMetadataSlot()` to use `Value` instead of `MDNode`. Part of PR21433. llvm-svn: 221373
* [ARM] Remove more dead code.Tilmann Scheller2014-11-051-4/+0
| | | | | | Dead code identified by the Clang static analyzer. llvm-svn: 221372
* ps][microMIPS] Implement CodeGen support for ANDI16 instructionZoran Jovanovic2014-11-053-2/+38
| | | | llvm-svn: 221371
* [Hexagon] [NFC] Alphabetizing cmake files.Colin LeMahieu2014-11-051-6/+6
| | | | llvm-svn: 221370
* ps][microMIPS] Implement CodeGen support for SLL16 and SRL16 instructionsZoran Jovanovic2014-11-053-9/+66
| | | | llvm-svn: 221369
* [ARM] Remove another redundant assignment.Tilmann Scheller2014-11-051-1/+0
| | | | | | Found by the Clang static analyzer. llvm-svn: 221368
* [mips][microMIPS] Implement ANDI16 instructionZoran Jovanovic2014-11-057-0/+69
| | | | llvm-svn: 221367
* [ARM] Remove redundant assignment.Tilmann Scheller2014-11-051-1/+0
| | | | | | Found by the Clang static analyzer. llvm-svn: 221366
OpenPOWER on IntegriCloud