summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [test] Fix comment.Dawn Perchik2015-11-121-1/+1
| | | | llvm-svn: 252831
* dwarfdump: add command line support for dumping the tu_index sectionDavid Blaikie2015-11-121-1/+2
| | | | llvm-svn: 252830
* Fix problems in coding styleXinliang David Li2015-11-121-13/+23
| | | | llvm-svn: 252829
* [Basic] Fix DRY violation, just call getLineTable() (NFC)Vedant Kumar2015-11-121-8/+3
| | | | llvm-svn: 252828
* Add diagnostics which fall under [dcl.spec.concept]p5Nathan Wilson2015-11-113-0/+22
| | | | | | | | | | | | Summary: Diagnose when a function concept declaration has parameter(s) Reviewers: rsmith, faisalv, aaron.ballman, hubert.reinterpretcast Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D14352 llvm-svn: 252827
* [ARM] Enable shrink-wrapping by default.Quentin Colombet2015-11-1112-18/+32
| | | | | | | | Differential Revision: http://reviews.llvm.org/D14357 rdar://problem/21942589 llvm-svn: 252825
* [WinEH] Don't forward branches across empty EH pad BBsReid Kleckner2015-11-113-1/+55
| | | | | | | For really simple SEH catchpads, we tried to forward the invoke unwind edge across the empty block. llvm-svn: 252822
* [TLS on Darwin] treat all Darwin platforms in the same way.Manman Ren2015-11-112-4/+4
| | | | | | rdar://problem/9001553 llvm-svn: 252820
* Extract out a function onto CodeGenModule for getting the map ofEric Christopher2015-11-115-44/+47
| | | | | | | features for a particular function, then use it to clean up some code. llvm-svn: 252819
* [LIR] General refactor to improve compile-time and simplify code.Chad Rosier2015-11-111-16/+26
| | | | | | | | | | | First create a list of candidates, then transform. This simplifies the code in that you have don't have to worry that you may be using an invalidated iterator. Previously, each time we created a memset/memcpy we would reevaluate the entire loop potentially resulting in lots of redundant work for large basic blocks. llvm-svn: 252817
* [sanitizer coverage] reset global counters in __sanitizer_reset_coverageKostya Serebryany2015-11-112-0/+7
| | | | llvm-svn: 252815
* [TLS on Darwin] change how we handle globals with linkonce or weak linkage.Manman Ren2015-11-115-37/+60
| | | | | | | | | | | | This is about how we handle static member of a template. Before this commit, we use internal linkage for the IR thread-local variable, which is inefficient. With this commit, we will start to follow Itanium C++ ABI. rdar://problem/23415206 Reviewed by John McCall. llvm-svn: 252814
* [FIX] Do not generate code for parameters referencing dead valuesJohannes Doerfert2015-11-114-3/+425
| | | | | | | Check if a value that is referenced by a parameter is dead and do not generate code for the parameter in such a case. llvm-svn: 252813
* Fix docs build break for revision r252798Hemant Kulkarni2015-11-111-0/+2
| | | | llvm-svn: 252812
* [IR] Add support for empty tokensDavid Majnemer2015-11-1114-14/+86
| | | | | | | | | | | | | | When working with tokens, it is often the case that one has instructions which consume a token and produce a new token. Currently, we have no mechanism to represent an initial token state. Instead, we can create a notional "empty token" by inventing a new constant which captures the semantics we would like. This new constant is called ConstantTokenNone and is written textually as "token none". Differential Revision: http://reviews.llvm.org/D14581 llvm-svn: 252811
* [CMake] Fixing passthrough for variables starting with the sub-project nameChris Bieneman2015-11-111-1/+1
| | | | | | This allows TEST_SUITE variables to be passed from the top-level CMake into the external project. llvm-svn: 252810
* [CMake] Fixing passthrough for variables starting with COMPILER_RTChris Bieneman2015-11-111-1/+1
| | | | | | This allows COMPILER_RT_* variables to be passed from the top-level CMake into the external project when LLVM_BUILD_EXTERNAL_COMPILER_RT=On. llvm-svn: 252809
* [CMake] [Darwin] [Builtins] Force setting the flags we care about at the end ↵Chris Bieneman2015-11-111-9/+11
| | | | | | | | of the compiler command line Setting CMAKE_*_FLAGS isn't sufficient here because CMAKE_*_FLAGS_${CMAKE_BUILD_TYPE} can override the flags, and there is no way to safely clear that because it is a cached variable (<sarcasm> YAY! </sarcasm>). llvm-svn: 252807
* Introduce deoptimization operand bundlesSanjoy Das2015-11-115-0/+56
| | | | | | | | | | | | | | | | | | | | | Summary: This change introduces the notion of "deoptimization" operand bundles. LLVM can recognize and optimize these in more precise ways than it can a generic "unknown" operand bundles. The current form of this special recognition / optimization is an enum entry in LLVMContext, a LangRef blurb and a verifier rule. Over time we will teach LLVM to do more aggressive optimization around deoptimization operand bundles, exploiting known facts about kinds of state deoptimization operand bundles are allowed to track. Reviewers: reames, majnemer, chandlerc, dexonsmith Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14551 llvm-svn: 252806
* [asan] Remove a flaky test.Evgeniy Stepanov2015-11-111-109/+0
| | | | llvm-svn: 252805
* Adding qualifier for make_unique.Mike Aizatsky2015-11-111-2/+2
| | | | | | | | Summary: MSVC gets confused. Differential Revision: http://reviews.llvm.org/D14585 llvm-svn: 252804
* Remove `FindSessionDictionary` and rely on PythonDataObjects.Zachary Turner2015-11-111-190/+140
| | | | | | | | This had been relegated to a simple forwarding function, so just delete it in preparation of migrating all of these functions out of python-wrapper.swig. llvm-svn: 252803
* sancov tool in c++Mike Aizatsky2015-11-113-0/+292
| | | | | | | | | | | First batch of sancov.py rewrite in c++. Supports "-print" and "-coveredfns" commands. Followup to http://reviews.llvm.org/D14356 in a better location. Differential Revision: http://reviews.llvm.org/D14579 llvm-svn: 252801
* Report Windows error code in a fatal error after a system call.Paul Robinson2015-11-111-2/+9
| | | | llvm-svn: 252800
* unique_ptrify the AllocValueProfData helper function introduced in r252783David Blaikie2015-11-111-6/+5
| | | | llvm-svn: 252799
* [Symbolizer]: Add -pretty-print optionHemant Kulkarni2015-11-116-13/+55
| | | | | | Differential Revision: http://reviews.llvm.org/D13671 llvm-svn: 252798
* [analyzer] Fix scan-build to handle missing output directories.Devin Coughlin2015-11-111-1/+3
| | | | | | | | | | | | | Cwd::abs_path has a somewhat tricky semantics: if it's operand directory does not exist, it'll return undefined (see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=257568). This may cause scan-build to silently ignore output directory (specified with -o) and use /tmp instead of trying to create directory. This tiny patch fixes the problem. A patch by Yury Gribov! Differential Revision: http://reviews.llvm.org/D14535 llvm-svn: 252797
* Move the enum attributes defined in Attributes.h to a table-gen file.Akira Hatanaka2015-11-118-59/+250
| | | | | | | | | | | | | | This is a step towards consolidating some of the information regarding attributes in a single place. This patch moves the enum attributes in Attributes.h to the table-gen file. Additionally, it adds definitions of target independent string attributes that will be used in follow-up commits by the inliner to check attribute compatibility. rdar://problem/19836465 llvm-svn: 252796
* ScopInfo: Bailing out means assigning isl_set_empty to the AssumedContextTobias Grosser2015-11-112-82/+6
| | | | | | I got this the other way around in 252750. Thank you Johannes for noticing. llvm-svn: 252795
* ScopInfo: Do not try to model the memory accesses in an error blockTobias Grosser2015-11-112-0/+39
| | | | | | | | | | Error blocks may contain arbitrary instructions, among them some which we can not modeled correctly. As we do not generate ScopStmts for error blocks anyhow there is no point in trying to generate access functions for them. This fixes llvm.org/PR25494 llvm-svn: 252794
* [SemaDeclCXX] Use isTemplateParamScope() rather than accessing raw bits.Davide Italiano2015-11-111-2/+2
| | | | llvm-svn: 252793
* [NFC] Simplify codeJohannes Doerfert2015-11-111-3/+1
| | | | llvm-svn: 252792
* Add a libLTO diagnostic handler that supports lto_get_error_message APIYunzhong Gao2015-11-113-12/+14
| | | | | | | | | | | | | | This is a follow-up from the previous discussion on the thread: http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20151019/307763.html The LibLTO lto_get_error_message() API reads error messages from a std::string sLastErrorString. Instead of passing this string around as an argument, this patch creates a diagnostic handler and then sends this handler to the constructor of LTOCodeGenerator. Differential Revision: http://reviews.llvm.org/D14313 llvm-svn: 252791
* Add support for processing .eh_frame.Rafael Espindola2015-11-1114-46/+512
| | | | | | | | | | | | | This adds support for: * Uniquing CIEs * Dropping FDEs that point to dropped sections It drops 657 488 bytes from the .eh_frame of a Release+Asserts clang. The link time impact is smallish. Linking clang with a Release+Asserts lld goes from 0.488064805 seconds to 0.504763060 seconds (1.034 X slower). llvm-svn: 252790
* [DAGCombiner] Improve zextload optimization.Geoff Berry2015-11-112-23/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Don't fold (zext (and (load x), cst)) -> (and (zextload x), (zext cst)) if (and (load x) cst) will match as a zextload already and has additional users. For example, the following IR: %load = load i32, i32* %ptr, align 8 %load16 = and i32 %load, 65535 %load64 = zext i32 %load16 to i64 store i32 %load16, i32* %dst1, align 4 store i64 %load64, i64* %dst2, align 8 used to produce the following aarch64 code: ldr w8, [x0] and w9, w8, #0xffff and x8, x8, #0xffff str w9, [x1] str x8, [x2] but with this change produces the following aarch64 code: ldrh w8, [x0] str w8, [x1] str x8, [x2] Reviewers: resistor, mcrosier Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14340 llvm-svn: 252789
* Convert python-wrapper.swig to use PythonDataObjects.Zachary Turner2015-11-111-99/+43
| | | | | | | | | This only begins to port python-wrapper.swig over. Since this code can be pretty hairy, I plan to do this incrementally over a series of patches, each time removing or converting more code over to the PythonDataObjects code. llvm-svn: 252788
* Create `PythonTuple` and `PythonCallable` wrapper classes.Zachary Turner2015-11-113-17/+454
| | | | | | | | | | | | | | This adds PythonTuple and PythonCallable classes to PythonDataObjects. Additionally, unit tests are provided that exercise this functionality, including invoking manipulating and checking for validity of tuples, and invoking and checking for validity of callables using a variety of different syntaxes. The goal here is to eventually replace the code in python-wrapper.swig that directly uses the Python C API to deal with callables and name resolution with this code that can be more easily tested and debugged. llvm-svn: 252787
* dwarfdump: DWP type unit index dumping skeletonDavid Blaikie2015-11-114-5/+26
| | | | llvm-svn: 252786
* [Lit Test] Updated 26 Lit tests to be C++11 compatible.Charles Li2015-11-1126-51/+234
| | | | | | | Expected diagnostics have been expanded to vary by C++ dialect. RUN line has also been expanded to: default, C++98/03 and C++11. llvm-svn: 252785
* [Windows] Add exports for dll_host test broken by r252071 and r251071Reid Kleckner2015-11-111-0/+2
| | | | llvm-svn: 252784
* Refactoring and fix another instance of asan errorXinliang David Li2015-11-111-5/+10
| | | | llvm-svn: 252783
* Format my previous commitDavid Blaikie2015-11-114-15/+13
| | | | llvm-svn: 252782
* dwarfdump: First piece of support for DWP dumpingDavid Blaikie2015-11-119-1/+118
| | | | | | Just a tiny piece of index dumping - the header in this instance. llvm-svn: 252781
* ScopInfo: Remove unused return value [NFC]Tobias Grosser2015-11-112-6/+4
| | | | llvm-svn: 252780
* Test commit after password resetHemant Kulkarni2015-11-111-1/+1
| | | | llvm-svn: 252779
* [WinEH] Only generate UnwindHelp slot for MSVCXXJoseph Tremoulet2015-11-112-18/+18
| | | | | | | | | | | | Summary: Other personalities don't use this special frame slot. Reviewers: majnemer, andrew.w.kaylor, rnk Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14580 llvm-svn: 252778
* [TLS] move setting tls_guard in tls_init.Manman Ren2015-11-113-6/+6
| | | | | | | | We used to emit the store prior to branch in the entry block. To make it more efficient, this commit moves it to the init block. We still mark as initialized before initializing anything else. llvm-svn: 252777
* Support: Recognize Borland DWARF extensions.Dawn Perchik2015-11-113-0/+58
| | | | | | | | | | | This patch adds DWARF values for the Delphi language and Borland C++ language extensions. Reviewed by: dblaikie Subscribers: llvm-commits, majnemer Differential Revision: http://reviews.llvm.org/D14522 llvm-svn: 252776
* Add target preference for GatherAllAliases max depthMatt Arsenault2015-11-113-1/+12
| | | | llvm-svn: 252775
* Fix bug in suggested fix that truncated variable names to 1 character.Samuel Benzaquen2015-11-112-32/+63
| | | | | | | | | | | | | | Summary: Fix bug in suggested fix that truncated variable names to 1 character. Also, rework the suggested fix to try to remove unnecessary whitespace. Reviewers: alexfh, aaron.ballman Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D13899 llvm-svn: 252773
OpenPOWER on IntegriCloud