summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [esan|cfrag] Add test struct-simple.cppDerek Bruening2016-05-241-0/+38
| | | | | | | | | | | | | | | Summary: Adds a new test struct-simple.cpp for testing the cache-fragmentation tool with a multi-compilation-unit application. Patch by Qin Zhao. Reviewers: bruening Subscribers: kubabrecka, kcc, vitalybuka, eugenis, aizatsky, llvm-commits, zhaoqin Differential Revision: http://reviews.llvm.org/D20599 llvm-svn: 270631
* Re-enable "[LoopUnroll] Enable advanced unrolling analysis by default" one ↵Michael Zolotukhin2016-05-242-4/+4
| | | | | | | | more time. This reverts commit r270577. llvm-svn: 270630
* [LoopUnrollAnalyzer] Fix a crash in UnrolledInstAnalyzer::visitCastInst.Michael Zolotukhin2016-05-242-5/+19
| | | | | | This fixes PR27847. Now for real. llvm-svn: 270629
* [codeview] Add support for new type records.Zachary Turner2016-05-2413-186/+723
| | | | | | | | | | | | | | | | | | | This adds support for parsing and dumping the following symbol types: S_LPROCREF S_ENVBLOCK S_COMPILE2 S_REGISTER S_COFFGROUP S_SECTION S_THUNK32 S_TRAMPOLINE As of this patch, the test PDB files no longer have any unknown symbol types. llvm-svn: 270628
* [esan] Add calls from the ctor/dtor to the runtime libraryDerek Bruening2016-05-242-6/+45
| | | | | | | | | | | | | | | | | | | | | Summary: Adds createEsanInitToolGV for creating a tool-specific variable passed to the runtime library. Adds dtor "esan.module_dtor" and inserts calls from the dtor to "__esan_exit" in the runtime library. Updates the EfficiencySanitizer test. Patch by Qin Zhao. Reviewers: aizatsky Subscribers: bruening, kcc, vitalybuka, eugenis, llvm-commits Differential Revision: http://reviews.llvm.org/D20488 llvm-svn: 270627
* [libfuzzer][doc] documenting running libfuzzer tests.Mike Aizatsky2016-05-241-0/+12
| | | | | | Differential Revision: http://reviews.llvm.org/D20594 llvm-svn: 270626
* Make the altivec intrinsics that require immediate constant propagationEric Christopher2016-05-241-20/+12
| | | | | | | | | macros rather than functions. Unfortunately couldn't come up with a simple testcase that didn't need code generation to verify what was going on. llvm-svn: 270625
* [esan] Add compilation unit init/exit routines.Derek Bruening2016-05-245-2/+24
| | | | | | | | | | | | | | | | | | | | | Summary: Adds processCompilationUnitInit and processCompilationUnitExit for compilation unit init/exit. Adds a tool-specific argument passed to esan_init. Adds the dtor and esan_exit called from the dtor. A test will be added separately (adding it here results in failure until the corresponding compilation patch is in place). Reviewers: aizatsky Subscribers: kubabrecka, bruening, kcc, vitalybuka, eugenis, llvm-commits Differential Revision: http://reviews.llvm.org/D20486 llvm-svn: 270624
* [MBP] Factor out the optimizations on branch conditions and unanalyzable ↵Haicheng Wu2016-05-241-44/+49
| | | | | | | | | | | | | | | | | | | | | branches. NFCI. The benefits of this patch are -- We call AnalyzeBranch() to optimize unanalyzable branches, but the result of AnalyzeBranch() is not used. Now the result is useful. -- Before the layout of all the MBBs is set, the result of AnalyzeBranch() is not correct and needs to be fixed before using it to optimize the branch conditions. Now this optimization is called after the layout, the code used to fix the result of AnalyzeBranch() is not needed. -- The branch condition of the last block is not optimized before. Now it is optimized. Differential Revision: http://reviews.llvm.org/D20177 llvm-svn: 270623
* There's no reason to use _ to name variables different just for construction.Eric Christopher2016-05-242-5/+5
| | | | llvm-svn: 270622
* Fix an issue where the NSDate data formatter was not using the proper ↵Enrico Granata2016-05-241-1/+3
| | | | | | | | alignment on watchOS targets Fixes rdar://problem/23298264 llvm-svn: 270621
* Ach, editing too many files at once. Make this file compile again.Jason Molenda2016-05-241-1/+1
| | | | llvm-svn: 270620
* LiveIntervalAnalysis: Fix handleMove() re-using the wrong value numberMatthias Braun2016-05-242-9/+27
| | | | | | This fixes http://llvm.org/PR27856 llvm-svn: 270619
* In r268475 I made a change to ObjectFileMachO so that if it isJason Molenda2016-05-241-1/+4
| | | | | | | | | | | | | | | | missing an LC_FUNCTION_STARTS section, we assume it has been aggressively stripped (it is *very* unusual for anyone to strip LC_FUNCTION_STARTS) so we disable assembly instruction unwind plan creation. Kernel extensions (kexts) don't have LC_FUNCTION_STARTS, but we almost always have good symbol bounds just with the linker symbols. So add an exception to allow assembly instruction unwind plan creation for kexts even though they lack LC_FUNCTION_STARTS. <rdar://problem/26453952> llvm-svn: 270618
* [profile] clean up profile file handling codeXinliang David Li2016-05-242-94/+139
| | | | | | Differentianl Revision: http://reviews.llvm.org/D20572 llvm-svn: 270617
* [asan] Workaround LD_PRELOAD bug in the Android linker.Evgeniy Stepanov2016-05-241-1/+8
| | | | llvm-svn: 270616
* [ms] Allow more unqualified lookup of types in dependent base classesReid Kleckner2016-05-245-28/+112
| | | | | | | | | | | | | | | | | | | Summary: In dependent contexts where we know a type name is required, such as a new expression, we can recover by forming a DependentNameType. This generalizes our existing compatibility hack for default arguments for template type parameters. Works towards parsing atlctrlw.h, which is PR26748. Reviewers: avt77, rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20500 llvm-svn: 270615
* clang-cl: Bake /Ob0 and /Ob2 into the general /O option handlingHans Wennborg2016-05-243-5/+14
| | | | | | | This is a follow-up to r270609, wherein I forgot that /O options can be combined, and e.g. /Odb2 is a valid combination. llvm-svn: 270614
* DWARF: Omit DW_AT_APPLE attributes (except ObjC ones) when not targeting LLDBDavid Blaikie2016-05-245-17/+31
| | | | | | | | | | | | | | | These attributes aren't used by other debuggers (& may be confused with other DWARF extensions) so they just waste space (about 1.5% on .dwo file size on a random large program I tested). We could remove the ObjC property ones too, but I figured they were probably more necessary when trying to understand ObjC (I could be wrong though) & so any debugger interested in working with ObjC would use them, perhaps? (also, there are some legacy tests in Clang that test for them - making it one of those annoying cross-project commits and/or cleanup to refactor those tests) llvm-svn: 270613
* [GuardWidening] Tighten the interface of the RangeCheck struct; NFCSanjoy Das2016-05-241-32/+37
| | | | | | Make `GuardWideningImpl::RangeCheck` into a class and add accessors. llvm-svn: 270611
* Remove unused global variable.Zachary Turner2016-05-241-11/+0
| | | | llvm-svn: 270610
* [Driver] Add support for -finline-functions and /Ob2 flagsHans Wennborg2016-05-247-9/+41
| | | | | | | | | | | | | | | | | | -finline-functions and /Ob2 are currently ignored by Clang. The only way to enable inlining is to use the global O flags, which also enable other options, or to emit LLVM bitcode using Clang, then running opt by hand with the inline pass. This patch allows to simply use the -finline-functions flag (same as GCC) or /Ob2 in clang-cl mode to enable inlining without other optimizations. This is the first patch of a serie to improve support for the /Ob flags. Patch by Rudy Pons <rudy.pons@ilod.org>! Differential Revision: http://reviews.llvm.org/D20576 llvm-svn: 270609
* Reword the "Happened at" TSan-reported thread to contain a thread id.Kuba Brecka2016-05-241-2/+5
| | | | llvm-svn: 270608
* [llvm-pdbdump] Rework command line options.Zachary Turner2016-05-245-78/+150
| | | | | | | | | When dumping huge PDB files, too many of the options were grouped together so you would get neverending spew of output. This patch introduces more granular display options so you can only dump the fields you actually care about. llvm-svn: 270607
* Create Relocations.cpp and move scanRelocs there.Rui Ueyama2016-05-245-615/+712
| | | | | | | | | | scanReloc and the functions on which scanReloc depends is in total more than 600 lines of code. Since scanReloc does not depend on Writer, it is better to move it into a separate file. Differential Revision: http://reviews.llvm.org/D20554 llvm-svn: 270606
* Add libxar to LLVM_SYSTEM_LIBS if availableChris Bieneman2016-05-241-0/+3
| | | | | | This should fix PR27855. We have some terrible hacks in the CMake to add linking SYSTEM_LIBS to all tools. I think we need a better way to do this in the future. llvm-svn: 270605
* Add FIXMEs to all derived classes of std::error_category.Peter Collingbourne2016-05-2414-0/+42
| | | | | | | | This helps make clear that we're moving away from std::error_code. Differential Revision: http://reviews.llvm.org/D20592 llvm-svn: 270604
* xfail TestRedefinitionsInline with older ClangEd Maste2016-05-241-1/+2
| | | | | | | | This fails on FreeBSD 10 with the system compiler, Clang 3.4.1. llvm.org/pr27845 llvm-svn: 270603
* Use range loop.Rafael Espindola2016-05-241-3/+2
| | | | | | Thanks to Rui for the suggestion. llvm-svn: 270601
* [ThinLTO] Handle empty exports list for module.Teresa Johnson2016-05-241-6/+9
| | | | | | | We might have an empty exports list for a module and shouldn't assert when checking if a symbol is exported. llvm-svn: 270600
* clang-rename: fix renaming non-members variables when referenced as macro ↵Miklos Vajna2016-05-242-1/+27
| | | | | | | | | | | | arguments The second check failed, FOO(C::X) wasn't renamed to FOO(C::Y). Reviewers: klimek Differential Revision: http://reviews.llvm.org/D20537 llvm-svn: 270599
* [libFuzzer] add a license header to afl/afl_driver.cppKostya Serebryany2016-05-241-0/+8
| | | | llvm-svn: 270598
* [codeview, pdb] Dump symbol records in publics streamZachary Turner2016-05-249-73/+164
| | | | | | | Differential Revision: http://reviews.llvm.org/D20580 Reviewed By: ruiu llvm-svn: 270597
* [profile] Fix runtime hook linkage bug for COFFXinliang David Li2016-05-242-0/+5
| | | | | | | | | Patch by: Johan Engelen the user hook has linkonceODR linkage and it needs to be in comdatAny group. llvm-svn: 270596
* [ThinLTO] Fix bot failures by avoiding threaded map modificationsTeresa Johnson2016-05-241-3/+5
| | | | | | | | Ensure multiple threads won't have to modify map, probable cause of bot failures from r270584 such as: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/13095 llvm-svn: 270595
* [AMDGPU][NFC] Rename ReserveTrapVGPRs -> ReserveRegsKonstantin Zhuravlyov2016-05-248-26/+26
| | | | | | Differential Revision: http://reviews.llvm.org/D20081 llvm-svn: 270594
* Lock out Process::RunThreadPlan so only one can be in flight at a time.Jim Ingham2016-05-242-1/+5
| | | | | | | | | | | | What with all sorts of folks (TSAN, ASAN, queue detection, etc...) trying to gather info by calling functions down in the lower layers of lldb, we've started to see people running expressions simultaneously. The expression evaluation part is okay, but only one RunThreadPlan can be active at a time. I added a lock to enforce that. <rdar://problem/26431072> llvm-svn: 270593
* Skip leading spaces when decoding hex valuesFrancis Ricci2016-05-241-0/+3
| | | | | | | | | | | | | | | | | | | | | Summary: The StringExtractor functions using stroull will already skip leading whitespace (ie GetU64). Make sure that the manual hex parsing functions also skip leading whitespace. This is important for members of the gdb protocol which are defined as using whitespace separators (ie qfThreadInfo, qC, etc). While lldb-server does not use the whitespace separators, gdb-remotes should work if they do, as the whitespace is defined by the gdb-remote protocol. Reviewers: vharron, jasonmolenda, clayborg Subscribers: sas, lldb-commits Differential Revision: http://reviews.llvm.org/D20509 llvm-svn: 270592
* [RecordLayout] Use an ASTVector instead of using a separate pointer and counterDavid Majnemer2016-05-243-42/+20
| | | | | | No functional change is intended. llvm-svn: 270591
* Replace file system forbidden symbols in the hostname which passed to the ↵Oleksiy Vyalov2016-05-241-4/+20
| | | | | | | | ModuleCache. http://reviews.llvm.org/D20548 llvm-svn: 270590
* Improve wording in TSan reports involving global variables. Don't repeat ↵Kuba Brecka2016-05-242-12/+43
| | | | | | hex addresses that are the same. llvm-svn: 270588
* Fix build errorsZachary Turner2016-05-241-2/+2
| | | | llvm-svn: 270587
* [InstCombine] Clean up and FileCheckize test case.Chad Rosier2016-05-241-61/+74
| | | | llvm-svn: 270586
* Dump symbol record details in llvm-pdbdumpZachary Turner2016-05-249-149/+262
| | | | | | | | | | | | | This makes use of the newly introduced `CVSymbolVisitor` to dump details of each type of symbol record in the symbol streams. Future patches will bring this visitor based dumping to the publics stream, as well as creating a `SymbolDumpDelegate` to print more information about relocations etc. Differential Revision: http://reviews.llvm.org/D20545 Reviewed By: ruiu llvm-svn: 270585
* [ThinLTO] Change ODR resolution and internalization to be index-basedTeresa Johnson2016-05-243-196/+289
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch changes the ODR resolution and internalization to be based on updates to the Index, which are consumed by the backend portion of the transformations. It will be followed by an NFC change to move these out of libLTO's ThinLTOCodeGenerator so that it can be used by other linkers (gold and lld) and by ThinLTO distributed backends. The global summary-based portions use callbacks so that the client can determine the prevailing copy and other information in a client-specific way. Eventually, with the API being developed in D20268, these may be modified to use information such as symbol resolutions, supplied by the clients to the API. Reviewers: joker-eph Subscribers: joker.eph, pcc, llvm-commits Differential Revision: http://reviews.llvm.org/D20290 llvm-svn: 270584
* Revert "[Lex] Support more type-traits in __has_feature"David Majnemer2016-05-242-37/+4
| | | | | | | This reverts commit r270580. Using __has_feature to test for type-traits is deprecated. llvm-svn: 270583
* [IRCE] Return a Value*, not SCEV* from parseRangeCheck; NFCSanjoy Das2016-05-241-26/+10
| | | | | | | This is better layering, since the caller needs to check if the index was an add-rec anyway. llvm-svn: 270582
* [clang-tidy] Don't rely on <array> being available.Benjamin Kramer2016-05-241-6/+5
| | | | | | | The STL isn't necessarily around when running tests. Make our own fake std::array to test this. llvm-svn: 270581
* [Lex] Support more type-traits in __has_featureDavid Majnemer2016-05-242-2/+31
| | | | | | | It looks like we forgot to update the __has_feature support when we added some of the type traits. llvm-svn: 270580
* fix typos; NFCSanjay Patel2016-05-241-11/+11
| | | | llvm-svn: 270579
OpenPOWER on IntegriCloud