- Mar 04, 2014
-
-
Chandler Carruth authored
instructions. llvm-svn: 202834
-
Chandler Carruth authored
reference the ConstantExpr implementation. llvm-svn: 202833
-
Chandler Carruth authored
this would have been required because of the use of DataLayout, but that has moved into the IR proper. It is still required because this folder uses the constant folding in the analysis library (which uses the datalayout) as the more aggressive basis of its folder. llvm-svn: 202832
-
Chandler Carruth authored
IR types. llvm-svn: 202827
-
Chandler Carruth authored
one in the tree (or in Polly) is using this. llvm-svn: 202825
-
Chandler Carruth authored
directly care about the Value class (it is templated so that the key can be any arbitrary Value subclass), it is in fact concretely tied to the Value class through the ValueHandle's CallbackVH interface which relies on the key type being some Value subclass to establish the value handle chain. Ironically, the unittest is already in the right library. llvm-svn: 202824
-
Chandler Carruth authored
Move the test for this class into the IR unittests as well. This uncovers that ValueMap too is in the IR library. Ironically, the unittest for ValueMap is useless in the Support library (honestly, so was the ValueHandle test) and so it already lives in the IR unittests. Mmmm, tasty layering. llvm-svn: 202821
-
Chandler Carruth authored
obviously is coupled to the IR. llvm-svn: 202818
-
Chandler Carruth authored
abstracting between a CallInst and an InvokeInst, both of which are IR concepts. llvm-svn: 202816
-
Chandler Carruth authored
name might indicate, it is an iterator over the types in an instruction in the IR.... You see where this is going. Another step of modularizing the support library. llvm-svn: 202815
-
Chandler Carruth authored
business. This header includes Function and BasicBlock and directly uses the interfaces of both classes. It has to do with the IR, it even has that in the name. =] Put it in the library it belongs to. This is one step toward making LLVM's Support library survive a C++ modules bootstrap. llvm-svn: 202814
-
Chandler Carruth authored
llvm-svn: 202811
-
Timur Iskhodzhanov authored
llvm-svn: 202808
-
Vladimir Medic authored
This patch implements .set mips32r2 directive and sets appropriate feature bits. It also introduces helper functions that are used to set and clear feature bits as necessary. This directive is a counterpart of -mips32r2 command line options with the exception that it does not influence elf header flags. The usage example is gives in test file. llvm-svn: 202807
-
Yaron Keren authored
llvm-svn: 202806
-
Chandler Carruth authored
out-of-line so that it can refer to the methods on User. As a consequence, this removes the need to define one template method if value_use_iterator in the extremely strange User.h header (!!!). This makse Use.h slightly less peculiar. The only remaining real peculiarity is the definition of Use::set in Value.h llvm-svn: 202805
-
Chandler Carruth authored
swap implementation. llvm-svn: 202802
-
Patrik Hagglund authored
llvm-svn: 202800
-
Chandler Carruth authored
inconsistent both with itself and with LLVM at large with formatting. The *s were on the wrong side, the indent was off, etc etc. This is much cleaner. Also, go clang-format laying out the array of tags in nice columns. llvm-svn: 202799
-
Chandler Carruth authored
the Use class. More cleanups to come here. This class just needs some TLC. llvm-svn: 202798
-
NAKAMURA Takumi authored
llvm-svn: 202795
-
NAKAMURA Takumi authored
llvm-svn: 202794
-
Craig Topper authored
llvm-svn: 202791
-
Rui Ueyama authored
llvm-svn: 202787
-
Rui Ueyama authored
llvm-svn: 202786
-
Rui Ueyama authored
The original code does not work correctly on executable files because the code is written in such a way that only object files are assumed to be given to llvm-objdump. Contents of RuntimeFunction are different between executables and objects. In executables, fields in RuntimeFunction have actual addresses to unwind info structures. On the other hand, in object files, the fields have zero value, but instead there are relocations pointing to the fields, so that Linker will fill them at link-time. So, when we are reading an object file, we need to use relocation info to find the location of unwind info. When executable, we should just look at the values in RuntimeFunction. llvm-svn: 202785
-
Rui Ueyama authored
llvm-svn: 202783
-
Rui Ueyama authored
No functionality change. llvm-svn: 202781
-
Kevin Qin authored
llvm-svn: 202775
-
Reid Kleckner authored
We were dropping the displacement on the floor if we also had some immediate offset. Should fix PR19033. llvm-svn: 202774
-
Chad Rosier authored
This reverts commit ff717c8fc786a0cfa1602982b91895fa09e514fc. llvm-svn: 202773
-
Rui Ueyama authored
llvm-svn: 202772
-
Rui Ueyama authored
This is a small cleanup before making a bit larger change to this function. llvm-svn: 202770
-
Chad Rosier authored
for the Cortex-A53 subtarget in the AArch64 backend. This patch lays the ground work to annotate each AArch64 instruction (no NEON yet) with a list of SchedReadWrite types. The patch also provides the Cortex-A53 processor resources, maps those the the default SchedReadWrites, and provides basic latency. NEON support will be added in a subsequent patch with proper forwarding logic. Verification was done by setting the pre-RA scheduler to linearize to better gauge the effect of the MIScheduler. Even without modeling the forward logic, the results show a modest improvement for Cortex-A53. Reviewers: apazos, mcrosier, atrick Patch by Dave Estes <cestes@codeaurora.org>! llvm-svn: 202767
-
- Mar 03, 2014
-
-
Aaron Ballman authored
llvm-svn: 202760
-
Reid Kleckner authored
We'd like to keep the clang-cl self-host working until we implement MSVC-compatible RTTI. Differential Revision: http://llvm-reviews.chandlerc.com/D2930 llvm-svn: 202758
-
Benjamin Kramer authored
libstdc++ and libc++ pulled this in transitively so I didn't notice. llvm-svn: 202753
-
Diego Novillo authored
DWARF discriminators are used to distinguish multiple control flow paths on the same source location. When this happens, instructions across basic block boundaries will share the same debug location. This pass detects this situation and creates a new lexical scope to one of the two instructions. This lexical scope is a child scope of the original and contains a new discriminator value. This discriminator is then picked up from MCObjectStreamer::EmitDwarfLocDirective to be written on the object file. This fixes http://llvm.org/bugs/show_bug.cgi?id=18270. llvm-svn: 202752
-
Benjamin Kramer authored
No functionality change. llvm-svn: 202751
-
Peter Collingbourne authored
Differential Revision: http://llvm-reviews.chandlerc.com/D2923 llvm-svn: 202750
-