summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* sink the Instruction::HasMetadata bit into SubclassData.Chris Lattner2009-12-296-65/+97
| | | | llvm-svn: 92240
* add a layer of accessors around the Value::SubClassData member, and use Chris Lattner2009-12-2911-51/+130
| | | | | | | | | | | a convention (shadowing the setter with private forwarding function) to prevent subclasses from accidentally using it. This exposed some bogosity in ConstantExprs, which was propaging the opcode of the constant expr into the NUW/NSW/Exact field in the getWithOperands/getWithOperandReplaced methods. llvm-svn: 92239
* adjust for llvm api changes.Chris Lattner2009-12-281-10/+2
| | | | llvm-svn: 92236
* This is a major cleanup of the instruction metadata interfaces thatChris Lattner2009-12-2818-261/+276
| | | | | | | | | | | | | | | | | | | | | | I asked Devang to do back on Sep 27. Instead of going through the MetadataContext class with methods like getMD() and getMDs(), just ask the instruction directly for its metadata with getMetadata() and getAllMetadata(). This includes a variety of other fixes and improvements: previously all Value*'s were bloated because the HasMetadata bit was thrown into value, adding a 9th bit to a byte. Now this is properly sunk down to the Instruction class (the only place where it makes sense) and it will be folded away somewhere soon. This also fixes some confusion in getMDs and its clients about whether the returned list is indexed by the MDID or densely packed. This is now returned sorted and densely packed and the comments make this clear. This introduces a number of fixme's which I'll follow up on. llvm-svn: 92235
* rearrange some code.Chris Lattner2009-12-281-37/+35
| | | | llvm-svn: 92234
* add IRBuilder.cpp to cmakeChris Lattner2009-12-281-0/+1
| | | | llvm-svn: 92233
* remove #include that comes in from ConstantFolder.hChris Lattner2009-12-281-1/+0
| | | | llvm-svn: 92232
* remove #include of Function.h from IRBuilderChris Lattner2009-12-282-5/+14
| | | | llvm-svn: 92231
* move debug info stuff out of line, allowing two #includesChris Lattner2009-12-283-25/+26
| | | | | | to go away from IRBuilder.h llvm-svn: 92230
* this form of SetDebugLocation is about to go away, add some #includes thatChris Lattner2009-12-282-7/+15
| | | | | | are about to not come in implicitly. llvm-svn: 92228
* split code that doesn't need to be templated out of IRBuilder into a newChris Lattner2009-12-283-91/+125
| | | | | | | non-templated IRBuilderBase class. Move that large CreateGlobalString out of line, eliminating the need to #include GlobalVariable.h in IRBuilder.h llvm-svn: 92227
* rename ivar to be more descriptive.Chris Lattner2009-12-281-14/+14
| | | | llvm-svn: 92226
* rename getMDKind -> getMDKindID, make it autoinsert if an MD KindChris Lattner2009-12-2811-111/+62
| | | | | | | doesn't exist already, eliminate registerMDKind. Tidy up a bunch of random stuff. llvm-svn: 92225
* rename getHandlerNames to getMDKindNames, simplify its interfaceChris Lattner2009-12-284-46/+33
| | | | | | and simplify all the clients that use it. llvm-svn: 92224
* tidy up and delete a dead smallvector.Chris Lattner2009-12-281-10/+5
| | | | llvm-svn: 92223
* Add missing include (for inline PATypeHolder::get).Benjamin Kramer2009-12-281-0/+1
| | | | llvm-svn: 92222
* avoid a completely unneeded linear walk.Chris Lattner2009-12-282-13/+10
| | | | llvm-svn: 92221
* Eliminate two bits of ugliness in MDNode::replaceElement:Chris Lattner2009-12-281-26/+13
| | | | | | | eliminate the temporary smallvector, and only do FindNodeOrInsertPos twice if the first one succeeds and we delete a node. llvm-svn: 92220
* rearrange some methods, no functionality change.Chris Lattner2009-12-281-13/+14
| | | | llvm-svn: 92219
* avoid temporary CallbackVH's.Chris Lattner2009-12-281-4/+8
| | | | llvm-svn: 92218
* Rewrite the function-local validation logic for MDNodes (most of r91708).Chris Lattner2009-12-283-59/+47
| | | | | | | | Among other benefits, this doesn't leak the SmallPtrSet, has the verifier code in the verifier pass, actually does the verification at the end, and is considerably simpler. llvm-svn: 92217
* rename MDNode instance variables to something meaningful.Chris Lattner2009-12-282-12/+12
| | | | llvm-svn: 92216
* snip one more #include from Metadata.hChris Lattner2009-12-283-3/+7
| | | | llvm-svn: 92214
* prune #includes more.Chris Lattner2009-12-281-2/+2
| | | | llvm-svn: 92213
* prune some #includesChris Lattner2009-12-282-2/+2
| | | | llvm-svn: 92212
* Metadata.h doesn't need to include ValueHandle.h anymore.Chris Lattner2009-12-284-1/+3
| | | | llvm-svn: 92211
* change the strange MetadataContext::getMDs function to expose lessChris Lattner2009-12-285-8/+10
| | | | | | irrelevant internal implementation details to clients. llvm-svn: 92210
* change NamedMDNode to use a pimpl for its operand list insteadChris Lattner2009-12-282-18/+38
| | | | | | of making it a declared part of the value. llvm-svn: 92209
* eliminate the elem_* iterator stuff from NamedMDNode.Chris Lattner2009-12-282-14/+2
| | | | llvm-svn: 92208
* move ElementVH out of the MDNode class into the MDNode.cpp file. AmongChris Lattner2009-12-282-26/+49
| | | | | | | other things, this avoids vtable and rtti data for it being splatted in every translation unit that uses it. llvm-svn: 92207
* move these out of their own timer groups into the 'uncategorized' groups.Chris Lattner2009-12-282-14/+2
| | | | llvm-svn: 92206
* Adjust indentation.Zhongxing Xu2009-12-281-1/+1
| | | | llvm-svn: 92205
* Fix 80-col violation.Zhongxing Xu2009-12-281-1/+1
| | | | llvm-svn: 92204
* use best-fit instead of first-fit when reusing a MacroArgs object,Chris Lattner2009-12-281-7/+16
| | | | | | this speeds up Eonly on the testcase in PR5888 from 30.5s to 0.85s llvm-svn: 92203
* The PreExpArgTokens array is indexed with an argument #,Chris Lattner2009-12-283-7/+8
| | | | | | | not a token number. Fix the reserve logic to get the right amount of space. llvm-svn: 92202
* Fixed llc crash for zext (i1 -> i8) loads.Sanjiv Gupta2009-12-282-2/+39
| | | | llvm-svn: 92201
* Fix for PR5871. Make __PRETTY_FUNCTION__ work for member functions defined ↵Sam Weinig2009-12-282-5/+46
| | | | | | in a class local to a function. llvm-svn: 92200
* Allow targets to specify the return type of libcalls that are generated for ↵Sanjiv Gupta2009-12-285-1/+18
| | | | | | floating point comparisons, rather than hard-coding them as i32. llvm-svn: 92199
* Mark variable used by 'assert' as 'unused'.Bill Wendling2009-12-281-2/+2
| | | | llvm-svn: 92198
* Remove dead variable.Bill Wendling2009-12-281-1/+0
| | | | llvm-svn: 92197
* Remove dead variable.Bill Wendling2009-12-281-5/+1
| | | | llvm-svn: 92196
* Remove dead variable.Bill Wendling2009-12-281-1/+0
| | | | llvm-svn: 92195
* Remove dead variable.Bill Wendling2009-12-281-1/+0
| | | | llvm-svn: 92194
* Remove dead variable.Bill Wendling2009-12-281-2/+0
| | | | llvm-svn: 92193
* Remove dead store.Bill Wendling2009-12-281-1/+0
| | | | llvm-svn: 92192
* Remove dead store and simplify code.Bill Wendling2009-12-281-5/+4
| | | | llvm-svn: 92191
* Remove dead store.Bill Wendling2009-12-281-2/+2
| | | | llvm-svn: 92190
* Remove dead variable.Bill Wendling2009-12-281-2/+0
| | | | llvm-svn: 92189
* Remove dead variable.Bill Wendling2009-12-281-1/+0
| | | | llvm-svn: 92188
* Remove dead store.Bill Wendling2009-12-281-1/+1
| | | | llvm-svn: 92187
OpenPOWER on IntegriCloud