Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | llvm.global_[cd]tor is defined to be either external, or appending with an array | Nick Lewycky | 2011-04-08 | 1 | -0/+17 | |
| | | | | | | | of { i32, void ()* }. Teach the verifier to verify that, deleting copies of checks strewn about. llvm-svn: 129128 | |||||
* | Set unnamed_addr on strings created through the IRBuilder. | Nick Lewycky | 2011-04-07 | 1 | -0/+1 | |
| | | | | llvm-svn: 129040 | |||||
* | Replace const std::vector& with ArrayRef in the type creation APIs. | Nick Lewycky | 2011-04-06 | 2 | -8/+10 | |
| | | | | llvm-svn: 129024 | |||||
* | face+palm | Devang Patel | 2011-04-06 | 1 | -4/+4 | |
| | | | | | | Keep track of llvm.dbg.value intrinsics with non null values. llvm-svn: 129010 | |||||
* | Add an empty key for DebugLoc so that you can store an empty DebugLoc in a | Nick Lewycky | 2011-04-06 | 1 | -1/+1 | |
| | | | | | | DenseMap. llvm-svn: 128994 | |||||
* | Support using DebugLoc's in a DenseMap. | Nick Lewycky | 2011-04-06 | 1 | -0/+24 | |
| | | | | llvm-svn: 128988 | |||||
* | Remove some support for ReturnInsts with multiple operands, and for | Jay Foad | 2011-04-04 | 1 | -24/+4 | |
| | | | | | | | returning a scalar value in a function whose return type is a single- element structure or array. llvm-svn: 128810 | |||||
* | Move Object.cpp out of VMCore and into Object. | Eric Christopher | 2011-04-03 | 2 | -60/+0 | |
| | | | | llvm-svn: 128800 | |||||
* | Add a set of C bindings for the Object interface. | Eric Christopher | 2011-04-03 | 2 | -0/+60 | |
| | | | | | | Patch by Patrick Walton! llvm-svn: 128798 | |||||
* | Various Instructions' resizeOperands() methods are only used to grow the | Jay Foad | 2011-04-01 | 1 | -54/+16 | |
| | | | | | | list of operands. Simplify and rename them accordingly. llvm-svn: 128708 | |||||
* | While testing dragonegg I noticed that isCastable and getCastOpcode | Duncan Sands | 2011-04-01 | 1 | -4/+12 | |
| | | | | | | | | had gotten out of sync: isCastable didn't think it was possible to cast the x86_mmx type to anything, while it did think it possible to cast an i64 to x86_mmx. llvm-svn: 128705 | |||||
* | Remove PHINode::reserveOperandSpace(). Instead, add a parameter to | Jay Foad | 2011-03-30 | 1 | -1/+1 | |
| | | | | | | PHINode::Create() giving the (known or expected) number of operands. llvm-svn: 128537 | |||||
* | Remove dead code. | Bill Wendling | 2011-03-30 | 1 | -68/+0 | |
| | | | | llvm-svn: 128519 | |||||
* | Add intrinsics @llvm.arm.neon.vmulls and @llvm.arm.neon.vmullu.* back. Frontends | Evan Cheng | 2011-03-29 | 1 | -1/+0 | |
| | | | | | | | | | | | | | | | was lowering them to sext / uxt + mul instructions. Unfortunately the optimization passes may hoist the extensions out of the loop and separate them. When that happens, the long multiplication instructions can be broken into several scalar instructions, causing significant performance issue. Note the vmla and vmls intrinsics are not added back. Frontend will codegen them as intrinsics vmull* + add / sub. Also note the isel optimizations for catching mul + sext / zext are not changed either. First part of rdar://8832507, rdar://9203134 llvm-svn: 128502 | |||||
* | Spruce up the error output. | Bill Wendling | 2011-03-29 | 1 | -2/+1 | |
| | | | | llvm-svn: 128451 | |||||
* | Do not accidently initialize NumDbgValueLost and NumDbgLineLost counts. | Devang Patel | 2011-03-16 | 1 | -4/+4 | |
| | | | | llvm-svn: 127720 | |||||
* | Unbreak the CMake build. | Francois Pichet | 2011-03-10 | 1 | -0/+1 | |
| | | | | llvm-svn: 127383 | |||||
* | Introduce DebugInfoProbe. This is used to monitor how llvm optimizer is ↵ | Devang Patel | 2011-03-10 | 2 | -1/+259 | |
| | | | | | | | | | | | | treating debugging information. It generates output that lools like 8 times line number info lost by Scalar Replacement of Aggregates (SSAUp) 1 times line number info lost by Simplify well-known library calls 12 times variable info lost by Jump Threading llvm-svn: 127381 | |||||
* | Make these options hidden to reduce the amount of text -help puts on the | Eric Christopher | 2011-03-09 | 1 | -2/+4 | |
| | | | | | | command line, they'll still be seen with -help-hidden. llvm-svn: 127353 | |||||
* | ptx: Fix calling convention printing in AsmWriter.cpp | Justin Holewinski | 2011-03-07 | 1 | -2/+2 | |
| | | | | | | | This allows LLVM IR using ptx_kernel or ptx_device calling conventions to be properly printed when emitted in text form. llvm-svn: 127157 | |||||
* | ConstantInt has some getters which return ConstantInt's or ConstantVector's of | Nick Lewycky | 2011-03-06 | 1 | -6/+31 | |
| | | | | | | | | the value splatted into every element. Extend this to getTrue and getFalse which by providing new overloads that take Types that are either i1 or <N x i1>. Use it in InstCombine to add vector support to some code, fixing PR8469! llvm-svn: 127116 | |||||
* | Add ArrayRef variant. | Devang Patel | 2011-03-04 | 1 | -0/+3 | |
| | | | | llvm-svn: 126978 | |||||
* | Use X86_thiscall calling convention for Win64 as well. | Tilmann Scheller | 2011-03-03 | 1 | -3/+0 | |
| | | | | llvm-svn: 126934 | |||||
* | Add Win64 thiscall calling convention. | Tilmann Scheller | 2011-03-02 | 1 | -0/+3 | |
| | | | | llvm-svn: 126862 | |||||
* | Add a special streamer to libLTO that just records symbols definitions and | Rafael Espindola | 2011-03-02 | 1 | -3/+6 | |
| | | | | | | | | | | | uses. The result produced by the streamer is used to give the linker more accurate information and to add to llvm.compiler.used. The second improvement removes the need for the user to add __attribute__((used)) to functions only used in inline asm. The first one lets us build firefox with LTO on Darwin :-) llvm-svn: 126830 | |||||
* | Added missing va_end(). | Talin | 2011-03-01 | 1 | -0/+1 | |
| | | | | llvm-svn: 126759 | |||||
* | Add an END_WITH_NULL accessor for ConstantStruct. | Talin | 2011-02-28 | 1 | -2/+13 | |
| | | | | llvm-svn: 126714 | |||||
* | These tags are now covered by dwarf::TagString(). | Devang Patel | 2011-02-18 | 1 | -9/+1 | |
| | | | | llvm-svn: 125987 | |||||
* | Expose getTypeName to the C API. Patch by Patrick Walton. | Rafael Espindola | 2011-02-18 | 1 | -0/+4 | |
| | | | | llvm-svn: 125845 | |||||
* | hoist GlobalValue::removeDeadConstantUsers up to being a method on Constant. | Chris Lattner | 2011-02-18 | 2 | -49/+53 | |
| | | | | llvm-svn: 125828 | |||||
* | Enhance constant folding of bitcast operations on vectors of floats. | Nadav Rotem | 2011-02-17 | 2 | -3/+8 | |
| | | | | | | | Add getAllOnesValue of FP numbers to Constants and APFloat. Add more tests. llvm-svn: 125776 | |||||
* | convert ConstantVector::get to use ArrayRef. | Chris Lattner | 2011-02-15 | 4 | -137/+79 | |
| | | | | llvm-svn: 125537 | |||||
* | revert my ConstantVector patch, it seems to have made the llvm-gcc | Chris Lattner | 2011-02-14 | 4 | -79/+137 | |
| | | | | | | builders unhappy. llvm-svn: 125504 | |||||
* | Switch ConstantVector::get to use ArrayRef instead of a pointer+size | Chris Lattner | 2011-02-14 | 4 | -137/+79 | |
| | | | | | | idiom. Change various clients to simplify their code. llvm-svn: 125487 | |||||
* | Fix a regression from r125393; | Nadav Rotem | 2011-02-13 | 1 | -1/+2 | |
| | | | | | | | | | | | | | It caused a crash in MultiSource/Benchmarks/Bullet. Opt hit an assertion with "opt -std-compile-opts" because Constant::getAllOnesValue doesn't know how to handle floats. This patch added a test to reproduce the problem and a check that the destination vector is of integer type. Thank you Benjamin! llvm-svn: 125459 | |||||
* | Fix 9173. | Nadav Rotem | 2011-02-11 | 1 | -0/+40 | |
| | | | | | | | Add more folding patterns to constant expressions of vector selects and vector bitcasts. llvm-svn: 125393 | |||||
* | make ConstantExpr::replaceUsesOfWithOnConstant preserve the inbounds | Chris Lattner | 2011-02-11 | 1 | -1/+2 | |
| | | | | | | flag. Noticed by Jin Gu Kang! llvm-svn: 125366 | |||||
* | make the constantexpr interfaces for inbounds GEPs follow the same style | Chris Lattner | 2011-02-11 | 1 | -63/+10 | |
| | | | | | | as other constantexpr flags, reducing redundancy. llvm-svn: 125365 | |||||
* | switch the constantexpr, target folder, and IRBuilder interfaces | Chris Lattner | 2011-02-10 | 1 | -67/+24 | |
| | | | | | | | for NSW/NUW binops to follow the pattern of exact binops. This allows someone to use Builder.CreateAdd(x, y, "tmp", MaybeNUW); llvm-svn: 125270 | |||||
* | refactor ConstantExpr interfaces a bit around "exactness". | Chris Lattner | 2011-02-09 | 1 | -29/+12 | |
| | | | | llvm-svn: 125190 | |||||
* | fix comment change. | Chris Lattner | 2011-02-07 | 1 | -1/+1 | |
| | | | | llvm-svn: 125047 | |||||
* | implement .ll and .bc support for nsw/nuw on shl and exact on lshr/ashr. | Chris Lattner | 2011-02-07 | 1 | -53/+74 | |
| | | | | | | Factor some code better. llvm-svn: 125006 | |||||
* | enhance vmcore to know that udiv's can be exact, and add a trivial | Chris Lattner | 2011-02-06 | 3 | -4/+10 | |
| | | | | | | | | instcombine xform to exercise this. Nothing forms exact udivs yet though. This is progress on PR8862 llvm-svn: 124992 | |||||
* | Make SwitchInst::removeCase() more efficient. | Jay Foad | 2011-02-01 | 1 | -8/+4 | |
| | | | | llvm-svn: 124659 | |||||
* | Have m_One also match constant vectors for which every element is 1. | Duncan Sands | 2011-02-01 | 1 | -1/+1 | |
| | | | | llvm-svn: 124655 | |||||
* | Fix 'fcmp one' constant folding. Noticed by inspection. | Nick Lewycky | 2011-01-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 124557 | |||||
* | Fix some formatting and upgrade comments from llvm 1.x to 2.x syntax. | Nick Lewycky | 2011-01-30 | 1 | -6/+6 | |
| | | | | llvm-svn: 124556 | |||||
* | Add the select optimization recently added to instcombine to constant folding. | Nick Lewycky | 2011-01-29 | 1 | -0/+12 | |
| | | | | | | | This is the one where one of the branches of the select is another select on the same condition. llvm-svn: 124547 | |||||
* | Fix indentation. | Jay Foad | 2011-01-27 | 1 | -9/+9 | |
| | | | | llvm-svn: 124375 | |||||
* | Simplify User::operator delete(). | Jay Foad | 2011-01-26 | 1 | -10/+3 | |
| | | | | llvm-svn: 124330 |