- Nov 12, 2015
-
-
David Blaikie authored
llvm-svn: 252830
-
Xinliang David Li authored
llvm-svn: 252829
-
Vedant Kumar authored
llvm-svn: 252828
-
Nathan Wilson authored
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
-
Quentin Colombet authored
Differential Revision: http://reviews.llvm.org/D14357 rdar://problem/21942589 llvm-svn: 252825
-
Reid Kleckner authored
For really simple SEH catchpads, we tried to forward the invoke unwind edge across the empty block. llvm-svn: 252822
-
Manman Ren authored
rdar://problem/9001553 llvm-svn: 252820
-
Eric Christopher authored
features for a particular function, then use it to clean up some code. llvm-svn: 252819
-
Chad Rosier authored
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
-
- Nov 11, 2015
-
-
Kostya Serebryany authored
llvm-svn: 252815
-
Manman Ren authored
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
-
Johannes Doerfert authored
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
-
Hemant Kulkarni authored
llvm-svn: 252812
-
David Majnemer authored
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
-
Chris Bieneman authored
This allows TEST_SUITE variables to be passed from the top-level CMake into the external project. llvm-svn: 252810
-
Chris Bieneman authored
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
-
Chris Bieneman authored
[CMake] [Darwin] [Builtins] Force setting the flags we care about at the end 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
-
Sanjoy Das authored
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
-
Evgeniy Stepanov authored
llvm-svn: 252805
-
Mike Aizatsky authored
Summary: MSVC gets confused. Differential Revision: http://reviews.llvm.org/D14585 llvm-svn: 252804
-
Zachary Turner authored
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
-
Mike Aizatsky authored
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
-
Paul Robinson authored
llvm-svn: 252800
-
David Blaikie authored
llvm-svn: 252799
-
Hemant Kulkarni authored
Differential Revision: http://reviews.llvm.org/D13671 llvm-svn: 252798
-
Devin Coughlin authored
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
-
Akira Hatanaka authored
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
-
Tobias Grosser authored
I got this the other way around in 252750. Thank you Johannes for noticing. llvm-svn: 252795
-
Tobias Grosser authored
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
-
Davide Italiano authored
llvm-svn: 252793
-
Johannes Doerfert authored
llvm-svn: 252792
-
Yunzhong Gao authored
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
-
Rafael Espindola authored
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
-
Geoff Berry authored
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
-
Zachary Turner authored
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
-
Zachary Turner authored
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
-
David Blaikie authored
llvm-svn: 252786
-
Charles Li authored
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
-
Reid Kleckner authored
llvm-svn: 252784
-
Xinliang David Li authored
llvm-svn: 252783
-