aboutsummaryrefslogtreecommitdiff
path: root/include/llvm
AgeCommit message (Collapse)Author
2013-02-12Add support for the pubnames section to llvm-dwarfdump.Krzysztof Parzyszek
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174976 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12[NVPTX] Disable vector registersJustin Holewinski
Vectors were being manually scalarized by the backend. Instead, let the target-independent code do all of the work. The manual scalarization was from a time before good target-independent support for scalarization in LLVM. However, this forces us to specially-handle vector loads and stores, which we can turn into PTX instructions that produce/consume multiple operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174968 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12Renumber SlotIndexes locally when a new block is inserted.Cameron Zwarich
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174937 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12Add blocks to the LiveIntervalAnalysis RegMaskBlocks array when splittingCameron Zwarich
a critical edge. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174936 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12DIBuilder: make the return type of createBasicType more specificDavid Blaikie
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174924 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11[Support][Compiler] Add LLVM_HAS_VARIADIC_TEMPLATES.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174913 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11Rename to something more sensible. No functionality change.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174909 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11[NVPTX] Remove NoCapture from address space conversion intrinsics. NoCapture ↵Justin Holewinski
is not valid in this case, and was causing incorrect optimizations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174896 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11AArch64: Add basic relocation processing for llvm-dwarfdump.Tim Northover
This allows llvm-dwarfdump to handle the relocations needed, at least for LLVM-produced code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174874 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11Fix some problems with the updating of SlotIndexes after adding a new MBB. InCameron Zwarich
particular, holes were being left between two blocks after splitting an edge. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174868 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11Add support for printing out the attribute groups.Bill Wendling
This emits the attribute groups that are used by the functions. (It currently doesn't print out return type or parameter attributes within attribute groups.) Note: The functions still retrieve their attributes from the "old" bitcode format (using the deprecated 'Raw()' method). This means that string attributes within an attribute group will not show up during a disassembly. This will be addressed in a future commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174867 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11[tsan/msan] adding thread_safety and uninitialized_checks attributesKostya Serebryany
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174864 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11Revert "Rename LLVMContext diagnostic handler types and functions."Bob Wilson
This reverts my commit 171047. Now that I've removed my misguided attempt to support backend warnings, these diagnostics are only about inline assembly. It would take quite a bit more work to generalize them properly, so I'm just reverting this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174860 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11Currently, codegen may spent some time in SDISel passes even if an entireEvan Cheng
function is successfully handled by fast-isel. That's because function arguments are *always* handled by SDISel. Introduce FastLowerArguments to allow each target to provide hook to handle formal argument lowering. As a proof-of-concept, add ARMFastIsel::FastLowerArguments to handle functions with 4 or fewer scalar integer (i8, i16, or i32) arguments. It completely eliminates the need for SDISel for trivial functions. rdar://13163905 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174855 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11Fix unnecessary removal of const through cast machineryDavid Blaikie
I have some uncommitted changes to the cast code that catch this sort of thing at compile-time but I still need to do some other cleanup before I can enable it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174853 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10Fix the unused but nearly correct method SlotIndexes::insertMBBInMaps() and addCameron Zwarich
support for updating SlotIndexes to MachineBasicBlock::SplitCriticalEdge(). This calls renumberIndexes() every time; it should be improved to only renumber locally. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174851 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10Add code for emitting the attribute groups.Bill Wendling
This is some initial code for emitting the attribute groups into the bitcode. NOTE: This format *may* change! Do not rely upon the attribute groups' bitcode not changing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174845 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10Add 'empty' query methods to the builder and use them in the verifier.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174832 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10ok, ok, stop fighting type punning warnings by just using a union.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174827 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10hopefully "really" fix a type punning warning by defining the buffer asChris Lattner
type char, which can't have TBAA tags. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174826 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10attempt to defeat a gcc warning that is breaking a -Werror buildbot.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174825 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-10Add accessor for the LLVMContext.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174824 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Remove unneeded "TargetMachine.h" #includes.Jakub Staszak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174817 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Add a DenseMapInfo class for the AttributeSet.Bill Wendling
We are going to place the AttributeSet into a DenseMap during assembly writing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174812 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Simplify code.Jakub Staszak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174807 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Remove unneeded #includes.Jakub Staszak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174806 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09This is the correct version of r174802.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174804 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Fix a nasty off-by one error that only manifests with 64-bit word size (which isChris Lattner
not enabled yet). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174803 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Fix the underlying problem that was causing read(0) to be called: sometimes theChris Lattner
bitcode writer would generate abbrev records saying that the abbrev should be filled with fixed zero-bit bitfields (this happens in the .bc writer when the number of types used in a module is exactly one, since log2(1) == 0). In this case, just handle it as a literal zero. We can't "just fix" the writer without breaking compatibility with existing bc files, so have the abbrev reader do the substitution. Strengthen the assert in read to reject reads of zero bits so we catch such crimes in the future, and remove the special case designed to handle this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174801 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09recommit r173072 (preparing bitstream reader to read a machine word at a time,Chris Lattner
instead of always 32-bits at a time) with two changes: 1. Make Read(0) always return zero without affecting the state of our cursor. 2. Hack word_t to always be 32 bits, as staging. These two caveats will change shortly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174800 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Remove trailing spaces.Jakub Staszak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174791 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Remove unneeded #includes.Jakub Staszak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174790 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Remove #includes from the commonly used LoopInfo.h.Jakub Staszak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174786 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-09Remove the old liveness algorithm.Jakob Stoklund Olesen
This is part of the plan to delete LiveVariables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174783 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-08Enable *BasicBlockPass::createPrinterPass()Sergei Larin
Enables raw_ostream I/O for BasicBlockPass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174776 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-08Revert "Add LLVMContext::emitWarning methods and use them. ↵Bob Wilson
<rdar://problem/12867368>" This reverts r171041. This was a nice idea that didn't work out well. Clang warnings need to be associated with warning groups so that they can be selectively disabled, promoted to errors, etc. This simplistic patch didn't allow for that. Enhancing it to provide some way for the backend to specify a front-end warning type seems like overkill for the few uses of this, at least for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174748 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-08Revert 172027 and 174336. Remove diagnostics about over-aligned stack objects.Bob Wilson
Aside from the question of whether we report a warning or an error when we can't satisfy a requested stack object alignment, the current implementation of this is not good. We're not providing any source location in the diagnostics and the current warning is not connected to any warning group so you can't control it. We could improve the source location somewhat, but we can do a much better job if this check is implemented in the front-end, so let's do that instead. <rdar://problem/13127907> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174741 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-08ARM cost model: Address computation in vector mem ops not freeArnold Schwaighofer
Adds a function to target transform info to query for the cost of address computation. The cost model analysis pass now also queries this interface. The code in LoopVectorize adds the cost of address computation as part of the memory instruction cost calculation. Only there, we know whether the instruction will be scalarized or not. Increase the penality for inserting in to D registers on swift. This becomes necessary because we now always assume that address computation has a cost and three is a closer value to the architecture. radar://13097204 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174713 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07[Object][ELF] Add a way to get the dynamic symbol table section.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174682 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07[Object][ELF] Add {begin,end}_elf_dynamic_symbols to non-virtually iterate ↵Michael J. Spencer
over dynamic symbols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174681 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07ADT: Correct APInt::getActiveWords for zero valuesMeador Inge
PR15138 was opened because of a segfault in the Bitcode writer. The actual issue ended up being a bug in APInt where calls to APInt::getActiveWords returns a bogus value when the APInt value is 0. This patch fixes the problem by ensuring that getActiveWords returns 1 for 0 valued APInts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174641 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07[Object][ELF] Fix crash on no dynamic section.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174639 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-0780-colMichael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174572 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07[Object][ELF] Do the actual devirtualization.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174568 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07[Object][ELF] Devirtualize and simplify dynamic table iteration.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174566 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07Fix CMake detection of various cmath functions, and XFAIL the test on ↵Owen Anderson
platforms that are known to be missing them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174564 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07Conditionalize constant folding of math intrinsics on the availability of an ↵Owen Anderson
implementation on the host. This is a little bit unfortunate, but until someone decides to implement a full libm for APFloat, we don't have a better way to get this functionality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174561 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-06[Support][ErrorOr] Add support for convertable types.Michael J. Spencer
Thanks to Andrew, David, and Aaron for helping fix this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174552 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-06Store bitcode verifier errors rather than dumping to stderrDerek Schuff
This allows properly implementing the analysis pass print() method, and in the future will allow the error message to be sent somewhere useful R=jvoung@chromium.org,eliben@chromium.org,mseaborn@chromium.org BUG= https://code.google.com/p/nativeclient/issues/detail?id=2309 Review URL: https://codereview.chromium.org/12220028
2013-02-06Improve comment.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174536 91177308-0d34-0410-b5e6-96231b3b80d8