3ecb447f52d169dea6663b95b5b5b43e9bb5826b |
|
10-Apr-2012 |
Bill Wendling <isanbard@gmail.com> |
The MDString class stored a StringRef to the string which was already in a StringMap. This was redundant and unnecessarily bloated the MDString class. Because the MDString class is a "Value" and will never have a "name", and because the Name field in the Value class is a pointer to a StringMap entry, we repurpose the Name field for an MDString. It stores the StringMap entry in the Name field, and uses the normal methods to get the string (name) back. PR12474 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f1d0f7781e766df878bec4e7977fa3204374f394 |
|
26-Mar-2012 |
Craig Topper <craig.topper@gmail.com> |
Prune some includes and forward declarations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
274d377ea68195989c3238fe96ce2ca812a12faf |
|
15-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Extend the inline cost calculation to account for bonuses due to correlated pairs of pointer arguments at the callsite. This is designed to recognize the common C++ idiom of begin/end pointer pairs when the end pointer is a constant offset from the begin pointer. With the C-based idiom of a pointer and size, the inline cost saw the constant size calculation, and this provides the same level of information for begin/end pairs. In order to propagate this information we have to search for candidate operations on a pair of pointer function arguments (or derived from them) which would be simplified if the pointers had a known constant offset. Then the callsite analysis looks for such pointer pairs in the argument list, and applies the appropriate bonus. This helps LLVM detect that half of bounds-checked STL algorithms (such as hash_combine_range, and some hybrid sort implementations) disappear when inlined with a constant size input. However, it's not a complete fix due the inaccuracy of our cost metric for constants in general. I'm looking into that next. Benchmarks showed no significant code size change, and very minor performance changes. However, specific code such as hashing is showing significantly cleaner inlining decisions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
84dfc32ff906271c373819595e60a173624e1184 |
|
10-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Refactor some methods to look through bitcasts and GEPs on pointers into a common collection of methods on Value, and share their implementation. We had two variations in two different places already, and I need the third variation for inline cost estimation. Reviewed by Duncan Sands on IRC, but further comments here welcome. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152490 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
27dd9cf5d1ec831a1cd0766580e6d1177a9800a3 |
|
23-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
start the implementation of a new ConstantDataVector and ConstantDataArray classes, per PR1324. Not all of their helper functions are implemented, nothing creates them, and the rest of the compiler doesn't handle them yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148741 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0271dadee48ccfcb98ed7a7c7849ad3dd0882a44 |
|
18-Jan-2012 |
Jakub Staszak <kubastaszak@gmail.com> |
Remove unneeded include. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
2bbb7e3ca609dcd2eb2ae3b98d85fe002baf653e |
|
15-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove Value::getNameStr. It has been deprecated for a while and provides no additional value over getName(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144657 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
78eb93c5916f36e74e73c10e44f4e5b9ca6b769c |
|
11-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
Typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137286 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e |
|
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
land David Blaikie's patch to de-constify Type, with a few tweaks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
678f9e05c949bc565b736b0bb4337bffb0f3c687 |
|
15-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove the old and dangerous uncheckedReplaceAllUsesWith method, which was just replaceAllUsesWith without some assertions. It was needed back when type refinement was alive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1afcace3a3a138b1b18e5c6270caa8dae2261ae2 |
|
09-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
Land the long talked about "type system rewrite" patch. This patch brings numerous advantages to LLVM. One way to look at it is through diffstat: 109 files changed, 3005 insertions(+), 5906 deletions(-) Removing almost 3K lines of code is a good thing. Other advantages include: 1. Value::getType() is a simple load that can be CSE'd, not a mutating union-find operation. 2. Types a uniqued and never move once created, defining away PATypeHolder. 3. Structs can be "named" now, and their name is part of the identity that uniques them. This means that the compiler doesn't merge them structurally which makes the IR much less confusing. 4. Now that there is no way to get a cycle in a type graph without a named struct type, "upreferences" go away. 5. Type refinement is completely gone, which should make LTO much MUCH faster in some common cases with C++ code. 6. Types are now generally immutable, so we can use "Type *" instead "const Type *" everywhere. Downsides of this patch are that it removes some functions from the C API, so people using those will have to upgrade to (not yet added) new API. "LLVM 3.0" is the right time to do this. There are still some cleanups pending after this, this patch is large enough as-is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
db04b81014cadc6ecdbaaa918a89a180511c6855 |
|
08-Mar-2011 |
Chris Lattner <sabre@nondot.org> |
fix incorrect comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
46985a14409486293b689ca07dd07d7482734795 |
|
02-Feb-2011 |
Dan Gohman <gohman@apple.com> |
Fix reassociate to clear optional flags, such as nsw. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
3b77f56194952bc3767c11e8b216906d404fcb2c |
|
20-Dec-2010 |
Owen Anderson <resistor@mac.com> |
Revert r122114 (CallbackVH observing use-list changes) because it caused severe slowdowns on the Linux self-host configuration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
a479b2325635544fb2c955c4d7e8b6ea9582120f |
|
18-Dec-2010 |
Owen Anderson <resistor@mac.com> |
Add support to CallbackVH to receive notification when a Value's use-list changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
5034dd318a9dfa0dc45a3ac01e58e60f2aa2498d |
|
15-Dec-2010 |
Dan Gohman <gohman@apple.com> |
Move Value::getUnderlyingObject to be a standalone function so that it can live in Analysis instead of VMCore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121885 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
4d70a2949007edeaad4662d5cdcb2d272cb2b2ff |
|
11-Nov-2010 |
Dan Gohman <gohman@apple.com> |
Factor out Instruction::isSafeToSpeculativelyExecute's code for testing for dereferenceable pointers into a helper function, isDereferenceablePointer. Teach it how to reason about GEPs with simple non-zero indices. Also eliminate ArgumentPromtion's IsAlwaysValidPointer, which didn't check for weak externals or out of range gep indices. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
61c70e98ac3c7504d31dd9bc81c4e9cb998e9984 |
|
28-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
remove unions from LLVM IR. They are severely buggy and not being actively maintained, improved, or extended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e16829b401409b398c9de9847c1d12eb931f7d63 |
|
30-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Move MaximumAlignment to be a member of the Value class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
5d414b44fc7720a040357ec43f111f8ac53a59f4 |
|
28-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Move MaximumAlignment to Value.h, now that GlobalValue.h needs it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
17aa92c92a925b4a674440c7ef088c223990e854 |
|
22-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Make NamedMDNode not be a subclass of Value, and simplify the interface for creating and populating NamedMDNodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1ad25b605c9a0384998a63d72042a7a3caf83912 |
|
15-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add an accessor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
44781a0a79e0d3b9f32c2fed4bf0971ff082e525 |
|
21-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
make the Value constructor protected. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6ed9d40aa113bba1101a9f74c661d0d11e229f50 |
|
29-May-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0179e977234fef45b1877eb93a3c7565cdd1862d |
|
30-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Switch isa_impl from a function template to a class template with a static inline member function doit(). This enables the use of partial specialization to override the last stage of the "isa" check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99898 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
60ad781c61815ca5b8dc2a45a102e1c8af65992f |
|
26-Mar-2010 |
Gabor Greif <ggreif@gmail.com> |
rename use_const_iterator to const_use_iterator for consistency's sake git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
fdfeb6976f07ad10d809b922ed7376ba2a3539be |
|
12-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
Add support for a union type in LLVM IR. Patch by Talin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96011 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
032742972f69c014dd5e985753c06a7fe3d08704 |
|
25-Jan-2010 |
Bob Wilson <bob.wilson@apple.com> |
Change Value::getUnderlyingObject to have the MaxLookup value specified as a parameter with a default value, instead of just hardcoding it in the implementation. The limit of MaxLookup = 6 was introduced in r69151 to fix a performance problem with O(n^2) behavior in instcombine, but the scalarrepl pass is relying on getUnderlyingObject to go all the way back to an AllocaInst. Making the limit part of the method signature makes it clear that by default the result is limited and should help avoid similar problems in the future. This fixes pr6126. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
183912af7947e7c48da64d94b6fe78ebb09cc7ec |
|
31-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
Remove #include of metadata.h from intrinsicinst.h. The only method that needs it (DbgValueInst::getValue) has been moved out of line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
081134741b40b342fb2f85722c9cea5d412489a8 |
|
29-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
Final step in the metadata API restructuring: move the getMDKindID/getMDKindNames methods to LLVMContext (and add convenience methods to Module), eliminating MetadataContext. Move the state that it maintains out to LLVMContext. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
5a96f93573439be771ce9609fa2a5754c94485b6 |
|
29-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
sink twine.h down out of Value.h. It is annoying that you need to #include Twine.h just to give a twine a default value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92247 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
cafe9bba32aeed16e8e3db28b4cd4ff13160438f |
|
29-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
add a layer of accessors around the Value::SubClassData member, and use 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
3990b121cf4a0b280ed3e54cf13870cbf4259e78 |
|
29-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
This is a major cleanup of the instruction metadata interfaces that 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92235 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ce8447ccfeb8e90fc37f2eeb504d391a59c44a66 |
|
13-Nov-2009 |
Dan Gohman <gohman@apple.com> |
Move the FixedStackPseudoSourceValueVal enum value before InstructionVal so that isa<Instructon> doesn't return true for FixedStackPseudoSourceValue values. This fixes a variety of problems, including crashes with -debug and -print-machineinstrs. Also, add a comment to warn about this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88711 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
efae4d379db51345aa949ba27a4a834681df9c30 |
|
12-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove my Value.h build fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87029 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
d7a18e420e1a95c06f551ded98531eb3ae97eaa9 |
|
12-Nov-2009 |
David Greene <greened@obbligato.org> |
Fix a build error by providing a missing enum value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87028 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
db99095cfe2690509a27820aa384bc528426e471 |
|
12-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Attempt to unbreak LLVM build, David G. please check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
2ee11eccdde14c95c78773be76b02bb5fd09d7ee |
|
28-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
IR support for the new BlockAddress constant kind. This is untested and there is no way to use it, next up: doing battle with asmparser. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85349 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9d89df169027035bf692b3d397bb93cff7bdc860 |
|
22-Oct-2009 |
Devang Patel <dpatel@apple.com> |
Hide MetadataContext implementation details. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e30e678865b8dc1b69ef1c26e7567ffd1300553c |
|
28-Sep-2009 |
Devang Patel <dpatel@apple.com> |
s/class Metadata/class MetadataContext/g git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6c6c016b1b9711bc8968b51746d4b867e17905f4 |
|
23-Sep-2009 |
Devang Patel <dpatel@apple.com> |
Do not leave behind metadata while cloning an instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
cd26ec5f3c089b3b24f80ff200e94e681eb9e1ee |
|
23-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Give MachineMemOperand an operator<<, factoring out code from two different places for printing MachineMemOperands. Drop the virtual from Value::dump and instead give Value a protected virtual hook that can be overridden by subclasses to implement custom printing. This lets printing be more consistent, and simplifies printing of PseudoSourceValue values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82599 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
937b1e92a9862862722732cb0f72d5ade77ac4c8 |
|
16-Sep-2009 |
Devang Patel <dpatel@apple.com> |
Add llvm::Metadata to manage metadata used in a context. This interface will be used to attach metadata with an instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82060 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e3394d4a49db24aa802432e04d1054d83a052ff1 |
|
15-Sep-2009 |
Dan Gohman <gohman@apple.com> |
When a constant's type is refined, update the constant in place instead of cloning and RAUWing it. - Make AbstractTypeUser a friend of Value so that it can offer its subclasses a way to update a Value's type in place. This is better than a universally visible setType method on Value, and it's sufficient for the immediate need. - Eliminate the constant "convert" functions. This eliminates a lot of logic duplication, and fixes a complicated bug where a constant can't actually be cloned during the type refinement process because some of the types that its folder needs are half-destroyed, being in the middle of refinement themselves. - Move the getValType functions from being static overloaded functions in Constants.cpp to be members of class template specializations in ConstantsContext.h. This means that the code ends up getting instantiated twice, however it also makes it possible to eliminate all "convert" functions, so it's not a big net code size increase. And if desired, the duplicate instantiations could be eliminated with some reorganization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81861 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f8dbee7cea072eb63ae343759975109553697bcb |
|
08-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Reappy r80998, now that the GlobalOpt bug that it exposed on MiniSAT is fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
92a97a9166e359e195d949e63d7e24a4a33284cf |
|
06-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Revert "Include optional subclass flags, such as inbounds, nsw, etc., ...", this breaks MiniSAT on x86_64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
859fff476dfe8d83abdf4621b1d20062c0daa85c |
|
04-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Include optional subclass flags, such as inbounds, nsw, etc., in the Constant uniquing tables. This allows distinct ConstantExpr objects with the same operation and different flags. Even though a ConstantExpr "a + b" is either always overflowing or never overflowing (due to being a ConstantExpr), it's still necessary to be able to represent it both with and without overflow flags at the same time within the IR, because the safety of the flag may depend on the context of the use. If the constant really does overflow, it wouldn't ever be safe to use with the flag set, however the use may be in code that is never actually executed. This also makes it possible to merge all the flags tests into a single test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
58cfa3b13752579c86cf85270d49f9ced0942f2f |
|
26-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Rename Instruction::isIdenticalTo to Instruction::isIdenticalToWhenDefined, and introduce a new Instruction::isIdenticalTo which tests for full identity, including the SubclassOptionalData flags. Also, fix the Instruction::clone implementations to preserve the SubclassOptionalData flags. Finally, teach several optimizations how to handle SubclassOptionalData correctly, given these changes. This fixes the counterintuitive behavior of isIdenticalTo not comparing the full value, and clone not returning an identical clone, as well as some subtle bugs that could be caused by these. Thanks to Nick Lewycky for reporting this, and for an initial patch! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
bdff548e4dd577a72094d57b282de4e765643b96 |
|
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate the "Value" printing methods that print to a std::ostream. This required converting a bunch of stuff off DOUT and other cleanups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
12ddd409535b52a7fa5157ded9a4cedd161fedb6 |
|
11-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make LLVMContext and LLVMContextImpl classes instead of structs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
4f95d2bda4235d36acd95688d0744d7363214706 |
|
05-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
revert r78048, it isn't worth using assertingvh here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78119 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
48b2f3e4850cd27d54224cd42da8a160d6b95984 |
|
05-Aug-2009 |
Owen Anderson <resistor@mac.com> |
Factor some of the constants+context related code out into a separate header, to make LLVMContextImpl.h not hideous. Also, fix some MSVC compile errors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0a0193edf9152bdc47a49a1a513d6e9cbf723131 |
|
04-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
switch ValueMap to using AssertingVH. This is an old patch I had laying around in a tree I forgot about. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f457d1316dec017cf204b54524878310c356bf64 |
|
29-Jul-2009 |
Devang Patel <dpatel@apple.com> |
Add NamedMDNode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77409 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
dd04246fa2065e9f489ddbb1dcd5e52d251678a3 |
|
29-Jul-2009 |
Devang Patel <dpatel@apple.com> |
Clarify getName() comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
3d2a56d38758943ee8070cacfd9e29754bdb59b3 |
|
28-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add a comment on Value explaining the current getName() behavior. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77269 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
460f656475738d1a95a6be95346908ce1597df25 |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove Value::getName{Start,End}, the last of the old Name APIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77152 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f0443c1eb44d737d9bd78962932fc80f74c6113c |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove Value::getNameLen git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77148 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
c993250dd2a4e4f6629179613b6b0757108319e7 |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Some clients rely on getName{Start,End} not returning 0, even if the length is 0. - I could have swore the prev change went through a make check cycle... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77106 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
499027fb4826e25919f2ea154ca4db73842560af |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Rewrite getName{Start,End,Len} in terms of getName(), instead of vice-versa. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
3f53fa9a51c4ce7ba81170ca7ab2e49bd37281b0 |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove Value::setName(const char*, unsigned). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77100 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
d1319ef308ffe3e5de2f90ee11892ff43adbea13 |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove Value::setName(const char*). - Split into a separate patch because there is a slight functionality change, it is no longer valid to call setName(0), which was equivalent to setName(""). I'm hoping no one depends on this... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
03d7651c3652e1f0cc86e79b26585d86818da9cf |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove Value::{isName, getNameRef}. Also, change MDString to use a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6e0d1cb30957a636c53158d3089e6fb88348a57a |
|
25-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Initial update to VMCore to use Twines for string arguments. - The only meat here is in Value.{h,cpp} the rest is essential 'const std::string &' -> 'const Twine &'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e6c42dd6d3cc1e0a8a11224a11bcfbd8c60c6fff |
|
23-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add llvm::Value::getNameRef, for help in API migration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
104cf9e02b0ed94d4173869a598af6c6972a8660 |
|
23-Jul-2009 |
Devang Patel <dpatel@apple.com> |
Derive MDNode from MetadataBase instead of Constant. Emit MDNodes into METADATA_BLOCK in bitcode file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e54abc90fe9942ef3902040a7ac475ce0c369dc9 |
|
22-Jul-2009 |
Devang Patel <dpatel@apple.com> |
Introduce MetadataBase, a base class for MDString and MDNode. Derive MDString directly from MetadataBase. Introduce new bitcode block to hold metadata. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e922c0201916e0b980ab3cfe91e1413e68d55647 |
|
22-Jul-2009 |
Owen Anderson <resistor@mac.com> |
Get rid of the Pass+Context magic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
47128fe2969b90880c5ffdbeb8c699a06bbaa9f9 |
|
17-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Add a method to clear optional optimization information from a Value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76215 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9491c16e14f9fb56d5d71cd855c2d8c315fbb5ae |
|
17-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Add a SubclassOptionalData field to Value. See the doxygen comment for details. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
21cc4460efa104e8591b05a90f20130291614344 |
|
04-Apr-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Add support for embedded metadata to LLVM. This introduces two new types of Constant, MDString and MDNode which can only be used by globals with a name that starts with "llvm." or as arguments to a function with the same naming restriction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68420 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
25f0ee5191f8460099cfa9897f7a1750b79bfa98 |
|
03-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
correct patch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
d72513417d146b667685527bd3f24335d7a4bce9 |
|
03-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
add patch to go along with r68350 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
722272df41d8de9c7683811b7bd8e901ee2f2785 |
|
01-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Add two new classes: WeakVH and AssertingVH. These are both "ValueHandles", which are effectively smart pointers to Value*'s. They are both very light weight and simple, and react to values being destroyed or being RAUW'd. WeakVN does a best effort to follow a value around, including through RAUW operations and will get nulled out of the value is destroyed. This is useful for the eventual "metadata that references a value" work, because it is a reference to a value that does not show up on its use_* list. AssertingVH is a pointer that compiles down to a dumb raw pointer when assertions are disabled. When enabled, it emits an assertion if the pointed-to value is destroyed while it is still being referenced. This is very useful for Maps and other things, and should have caught the recent bugs in CallGraph and Reassociate, for example. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
c4ef55119285fa2f966ee6578a58371c3c368774 |
|
31-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
shrink subclassid, liberating some bits for future (ab)use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
aab3d88bc481fdc3081d2280dab4f7efd7e74a61 |
|
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Value* only has 2 bits free as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
01c8e0233d086354b55d2047506ac6a8fc3c9f65 |
|
02-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
Comment typeo fix, thanks Duncan! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
c7f7c1dc5067a36c8ae337610dcbbe55d525c80c |
|
02-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
add a little helper function that does PHI translation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60405 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0fed8bf91f3c73fcaa598bfdb26365a1c200e748 |
|
28-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
fit in 80 cols git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
c9f7ef7e7a95ff95a779a057297e0973d21aca02 |
|
13-Oct-2008 |
Gabor Greif <ggreif@gmail.com> |
remove a deprecated internal interface git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
5d0392c6b370758750b397e254a6c6f028479969 |
|
01-Oct-2008 |
Duncan Sands <baldrick@free.fr> |
Factorize code: remove variants of "strip off pointer bitcasts and GEP's", and centralize the logic in Value::getUnderlyingObject. The difference with stripPointerCasts is that stripPointerCasts only strips GEPs if all indices are zero, while getUnderlyingObject strips GEPs no matter what the indices are. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
c4f72dd6e759a170808ecfc6be784f8598367484 |
|
26-Sep-2008 |
Bill Wendling <isanbard@gmail.com> |
Make pointer parameter const for isUsedInBasicBlock. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56625 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6f4266506bca785828bacda55bd5db9172f990c6 |
|
19-Sep-2008 |
Gabor Greif <ggreif@gmail.com> |
backing out my last commit, it was not intended to go on the trunk git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56349 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6c2c95d0acd867add034d93d4b909ddd75d61b14 |
|
19-Sep-2008 |
Gabor Greif <ggreif@gmail.com> |
first shot at removing Use::Val untested, Use::swap() is definitely not done yet git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
bfe2f407db4cfb27f7e0cebbffcd3db8d53f864c |
|
13-Sep-2008 |
Gabor Greif <ggreif@gmail.com> |
minor correction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56190 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
42387462303a8eb917569305d5390c8da64ac82f |
|
24-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
we should use 'class' for non-pod types instead of 'struct' to make it easier to deal with the VC++ struct/class bug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55290 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
a3f343f4cd453b33214ba892bfeb58706fcf8cea |
|
24-Aug-2008 |
Cedric Venet <cedric.venet@laposte.net> |
Updating VC++ project. Adding one include file and correct one declaration from class to struct in order to make llvm compile on VC2005. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
944fac71e082cc2664cc71b4d3f6c72bab7143fb |
|
24-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Switch the asmprinter (.ll) and all the stuff it requires over to use raw_ostream instead of std::ostream. Among other goodness, this speeds up llvm-dis of kc++ with a release build from 0.85s to 0.49s (88% faster). Other interesting changes: 1) This makes Value::print be non-virtual. 2) AP[S]Int and ConstantRange can no longer print to ostream directly, use raw_ostream instead. 3) This fixes a bug in raw_os_ostream where it didn't flush itself when destroyed. 4) This adds a new SDNode::print method, instead of only allowing "dump". A lot of APIs have both std::ostream and raw_ostream versions, it would be useful to go through and systematically anihilate the std::ostream versions. This passes dejagnu, but there may be minor fallout, plz let me know if so and I'll fix it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1bf9a18834b338484c0a494110cff9cc407be381 |
|
24-Jul-2008 |
Evan Cheng <evan.cheng@apple.com> |
Rename instance variables, parameter argument names to eliminate a bunch of compilation warnings with -Wshadow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53970 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
d0ebbff8a322b3322d5dbecf86d402f0835b76ce |
|
27-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
add a helper. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0ad4d9be0310b79e47561abeef39daf322d06760 |
|
16-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
add a const version of stripPointerCasts git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
502a4f5162498ec420e3cb22f667808d726dd7da |
|
12-Jun-2008 |
Evan Cheng <evan.cheng@apple.com> |
Do not speculatively execute an instruction by hoisting it to its predecessor BB if any of its operands are defined but not used in BB. The transformation will prevent the operand from being sunk into the use block. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52244 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0039adb5148f3a2c878c84f09268a58d0478e2ad |
|
11-Jun-2008 |
Gabor Greif <ggreif@gmail.com> |
remove bogus comment git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52216 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1baa88e3de8947b02d9ef4caa73e5860f048ec6e |
|
29-May-2008 |
Dan Gohman <gohman@apple.com> |
Prune and tidy #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
13d57320bd212483463d4f8992d5787b29eda5df |
|
19-May-2008 |
Bill Wendling <isanbard@gmail.com> |
Remove warnings about unused parameters and shadowed variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
efe65369a74871c3140a540a6c95ce5d1f080954 |
|
10-May-2008 |
Gabor Greif <ggreif@gmail.com> |
merge of use-diet branch to trunk git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50943 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0b12ecf6ff6b5d3a144178257b6206f0c4788792 |
|
08-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Turn StripPointerCast() into a method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b04adddd50dfa4c3fbdad3b15d601402254c1ff5 |
|
07-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Make StripPointerCast a common function (should we mak it method of Value instead?) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
12e6d200597bb5d61ed56ccf9d70a52614956a70 |
|
30-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
add a method for comparing to see if a value has a specified name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
59dc98de2f79c027eb6860443daee260710b1405 |
|
14-Mar-2008 |
Gabor Greif <ggreif@gmail.com> |
move the Use destructor where it belongs to git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48376 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
4e35595368f9b62ffe0ef9aee57dd003a884a3f2 |
|
07-Mar-2008 |
Dan Gohman <gohman@apple.com> |
There is no killUse. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48034 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
69de1932b350d7cdfc0ed1f4198d6f78c7822a02 |
|
06-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Re-apply the memory operand changes, with a fix for the static initializer problem, a minor tweak to the way the DAGISelEmitter finds load/store nodes, and a renaming of the new PseudoSourceValue objects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
334dc1f58d617dcff969a2e107febaae42bbc883 |
|
31-Jan-2008 |
Evan Cheng <evan.cheng@apple.com> |
Revert 46556 and 46585. Dan please fix the PseudoSourceValue problem and re-commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46623 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f38dc192dd378903048efbadb95b75cf41abfb63 |
|
30-Jan-2008 |
Dan Gohman <gohman@apple.com> |
Add a new PseudoSourceValue class, which will be used to help track memory reference information in the backend. Most of this was written by Florian Brander, cleanup and updating to TOT by me. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
7ed47a13356daed2a34cd2209a31f92552e3bdd8 |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Don't attribute in file headers anymore. See llvmdev for the discussion of this change. Boy are my fingers tired. ;-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
afba8fe662d65b25b4baf46bb26cc18e1f9cc0a5 |
|
10-Dec-2007 |
Gordon Henriksen <gordonhenriksen@mac.com> |
Reverting dtor devirtualization patch. _sabre_: it has a major problem: by the time ~Value is run, all of the "parts" of the derived classes have been destroyed _sabre_: the vtable lives to fight another day git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ed455c8fa25dd37a13b33f0afa66be03ac49b5bb |
|
09-Dec-2007 |
Gordon Henriksen <gordonhenriksen@mac.com> |
Devirtualizing Value destructor (PR889). Patch by Pawel Kunio! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
71996e73d8050d2b8805b14a48ab635155b11a12 |
|
10-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
add Value::getNameStart/getNameLen() accessors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
8b0a8c84da2030ee8f4440d5b60a8033de691222 |
|
25-Apr-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
a1a702cdd23221e6e3f36632be91150138958e9d |
|
13-Apr-2007 |
Dan Gohman <gohman@apple.com> |
Rename Value::getValueType to getValueID, to avoid confusion with other things named getValueType. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
53201869cdb92cfe298126ea9e6f5b763038d494 |
|
06-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Document the use of getValueType() more accurately, specifically explain that the instruction opcode is added to the InstructionVal value and the consequences of that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
924b1ca9ee02b648149d76b62e30f5d9c0ebbf27 |
|
15-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Add a new Value::getNameStr method, which is preferred over getName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ac9dcb94dde5f166ee29372385c0e3b695227ab4 |
|
15-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
For PR1195: Change use of "packed" term to "vector" in comments, strings, variable names, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9d6565a5b1fbc4286d6ee638d8f47a3171a9ed7e |
|
15-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
For PR1195: Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ec79b3da13ae9ba09f52e177bd71fcc5669d61a5 |
|
13-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add a setName variant that takes a null-terminated string. This can be used to avoid std::string allocations in common cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34232 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
042ad36871d67a2db48bf41a8dbde3a5676fc96f |
|
12-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Add new setName accessor which doesn't require creating a string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34197 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
dec628eead87b20773c98a00830580df211acc98 |
|
12-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Switch ValueSymbolTable to use StringMap<Value*> instead of std::map<std::string, Value*> as its main datastructure. There are many improvements yet to be made, but this speeds up opt --std-compile-opts on 447.dealII by 7.3%. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
7216811ea22d68cbf8df092cda8e64e13e394ac8 |
|
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add a helper method: Value::takeName git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34171 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ef9b9a793949469cdaa4ab6d0173136229dcab7b |
|
05-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
For PR411: This patch replaces the SymbolTable class with ValueSymbolTable which does not support types planes. This means that all symbol names in LLVM must now be unique. The patch addresses the necessary changes to deal with this and removes code no longer needed as a result. This completes the bulk of the changes for this PR. Some cleanup patches will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6b6b6ef1677fa71b1072c2911b4c1f9524a558c9 |
|
11-Jan-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
For PR1043: Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33073 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
70d8d121eaa3a3982022f7146113416f9b3f26c1 |
|
04-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
Now that setcondinst has been eliminated, we can mark Value::SubclassID const and remove the ugly mutator methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
5c7e326585f3a543388ba871c3425f7664cd9143 |
|
17-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Added an automatic cast to "std::ostream*" etc. from OStream. We then can rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e81561909d128c6e2d8033cb5465a49b2596b26a |
|
07-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b5ebf15b2b2ce8989caf1a1114b05d80b0f9bd48 |
|
28-Nov-2006 |
Bill Wendling <isanbard@gmail.com> |
Added a temporary hack to get the llvm-streams to work for future checkins. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b83eb6447ba155342598f0fabe1f08f5baa9164a |
|
20-Oct-2006 |
Reid Spencer <rspencer@reidspencer.com> |
For PR950: This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
bddcb9427cb36ac6609fef233eaac3c9b5e5a8f4 |
|
05-Jun-2006 |
Reid Spencer <rspencer@reidspencer.com> |
For PR778: Move file-scoped documentation to class-scoped so it is more readily accessible. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6dbca0b6bcf1a53ad30850448e662b5c77985a62 |
|
26-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Allow use of isa<InlineAsm>(X) without #including InlineAsm.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
cc041ba03aed685400197fb938b7a583713d25af |
|
24-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of the InlineAsm class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
78df7f141c63e563f82de44ecdcb6bcfe3e633ad |
|
10-Jan-2006 |
Reid Spencer <rspencer@reidspencer.com> |
Make ValueSymbolTable (temporarily) a friend of Value so it can mod the Name of Value instances. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25174 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e15ccf464cfa78423e34264c2047cb44d6974b65 |
|
17-Dec-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Fix VC++ level 4 warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b995c5e1185840ee8574f827d7c7cb0db8dc4242 |
|
08-Oct-2005 |
Chris Lattner <sabre@nondot.org> |
remove a comma to compile with pedantic gcc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
225e8dd2f512e3e6840ba7cb1570fdc4d56a853f |
|
27-Sep-2005 |
Chris Lattner <sabre@nondot.org> |
Split SimpleConstantVal up into its components, so each Constant subclass gets a different enum value. This allows 'classof' for these to be really simple, not needing to call getType() anymore. This speeds up isa/dyncast/etc for constants, and also makes them smaller. For example, the text section of a release build of InstCombine.cpp shrinks from 230037 bytes to 216363 bytes, a 6% reduction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f7cc47cdfe53350b8fc99551732b5656ef9b0f0a |
|
17-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
remove a dead enum value, making a comment above correct again git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22810 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9769ab22265b313171d201b5928688524a01bd87 |
|
21-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9110286da14fc9dab998605c590e2ce5ac43308c |
|
16-Mar-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Convert tabs to spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
eaadf5827692ae713faa6b38175559568c3dba26 |
|
06-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
Add a new method, allow symtab to poke name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0d1e40728d668085257b78657b381e1f13d77d52 |
|
05-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
remove all of the various setName implementations, consolidating them into Value::setName, which is no longer virtual. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
d0478744b3b5232694d0f887b3210078de5266c4 |
|
05-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
Remove the second argument to Value::setName, it is never needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
977a39570fcade4dfed60124f67eabc51efa76c6 |
|
23-Feb-2005 |
Chris Lattner <sabre@nondot.org> |
Add new method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20287 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
8f0d40392658fd1ccc057198bd5a6f1c85be5425 |
|
05-Feb-2005 |
Chris Lattner <sabre@nondot.org> |
SubclassID is really a small field. Split it into half and let subclasses play with the unused part. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
a26619748932b146a09773d51465d7b7dcdb7dd2 |
|
01-Feb-2005 |
Chris Lattner <sabre@nondot.org> |
Switch from using an ilist for uses to using a custom doubly linked list. This list does not provide the ability to go backwards in the list (its more of an unordered collection, stored in the shape of a list). This change means that use iterators are now only forward iterators, not bidirectional. This improves the memory usage of use lists from '5 + 4*#use' per value to '1 + 4*#use'. While it would be better to reduce the multiplied factor, I'm not smart enough to do so. This list also has slightly more efficient operators for manipulating list nodes (a few less loads/stores), due to not needing to be able to iterate backwards through the list. This change reduces the memory footprint required to hold 176.gcc from 66.025M -> 57.687M, a 14% reduction. It also speeds up the compiler, 7.73% in the case of bytecode loading alone (release build loading 176.gcc). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19956 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b8d5b1211f982d65546d855130d99c42780a76a0 |
|
29-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Adjust to User.h changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
4251ce4b10a35552df67ea624b180ad247960eef |
|
13-Dec-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Added a size_type typedef to LLVM containers to make Visual Studio shut up (and possibly to make LLVM more x86 64bit friendly). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1fca5ff62bb2ecb5bfc8974f4dbfc56e9d3ca721 |
|
27-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
Convert 'struct' to 'class' in various places to adhere to the coding standards and work better with VC++. Patch contributed by Morten Ofstad! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17281 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
7eb8a523320d05d9318c957c9840cfbde3cf5b6d |
|
16-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
Add new UndefValueVal type git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
530036b5e89e41787056120666bf0128ea8addd8 |
|
23-Sep-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Change Value from a "struct" to a "class" so that VC 7.1 doesn't generate missing symbols when its referenced as a class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16496 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
551ccae044b0ff658fe629dd67edd5ffe75d10e8 |
|
02-Sep-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Changes For Bug 352 Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b6197611d54de7f0ba50b185aa4fe6eea9ceb8ff |
|
04-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
New methods git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15462 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ff8c1b3dc6766d534878613f6db511edb33ba44f |
|
30-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
I demand the ability to say 'if (isa<Value>(V))'! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15340 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
66a434692b63ac76c99a0d259c7fedc0b75a1d6a |
|
19-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Add new enum entries for ConstantAggregateZeroVal/ConstantExprVal and rename ConstantVal to SimpleConstantVal git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b0104d07ee56e1d44a58b80eef153d73ed610a7a |
|
18-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Add a missing space to align comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14955 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1488b34be5f30c056513cdfd4576053af92b68a0 |
|
18-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
bug 122: - Add ValueListTy to TypeTy so that the bcreader can have its own User category that won't get factored into any optimizations or cleanup. - Correct an isa_impl to correctly include GlobalValue now that it isa Constant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
80d94b88e1cdcffba477864f4d26ae80c2877ab7 |
|
15-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Final fix for PR341: eliminate operator<<(ostream, Value*). Clients should now send references to ostreams instead of pointers. Sending pointers to ostreams will print their addresses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14849 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
268f2583b90ee28b4685a5772558ad0c6d3d4c18 |
|
12-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Add a missing #include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14773 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ba466362c4b82a0a52bb5d877c439b759d86eee0 |
|
06-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Remove definition and use of OtherVal enumerator. This just fixes a thinko. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
da8440a6aeba3705095ebd919eea08fb2c462e67 |
|
04-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
- Remove enumerator TypeVal since Values can't be types any more - Remove isa_impl relationship between Types and Values - Add OtherVal so "other" users can interact with Values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
7da38ec915010576685200089c75a2135bd3fa97 |
|
27-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Eliminate the Instruction::iType field, folding it into the Value::VTy field. This reduces the size of the instruction class by 4 bytes, and means that isa<CallInst>(V) (for example) only needs to do one load from memory instead of two. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
f6b784410103cd0da2de5797463da5830f8ac6bc |
|
26-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Rearrange some code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
85b0195f0e619d7151824a08f33e6754a451e7fc |
|
08-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Apparently a particular vendor compiler uses the struct/class tag to MANGLE symbols with. Therefore, if you do not use struct/class consistently, you can get LINK ERRORS. grr. This fixes the link errors for libsupport and vmcore. -Chris git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
c230978a82adff3ab9d6ae0426a942e431ce9c5e |
|
26-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Annotations are evil. This makes Value not derive from Annotable, which makes all dynamically allocated LLVM values 4 bytes smaller, eliminate some vtables, and make Value's destructor faster. This makes Function derive from Annotation now because it is the only core LLVM class that still has an annotation stuck onto it: MachineFunction. MachineFunction is obviously horrible and gross (like most other annotations), but will be the subject of refactorings later in the future. Besides many fewer Function objects are dynamically allocated that instructions blocks, constants, types, etc... :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9a0817971a71442d24a6aec0c5c66110176bdf95 |
|
10-Jan-2004 |
Chris Lattner <sabre@nondot.org> |
Minor cleanup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
d0fde30ce850b78371fd1386338350591f9ff494 |
|
11-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Put all LLVM code into the llvm namespace, as per bug 109. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
6fbcc26f1460eaee4e0eb8b426fc1ff0c7af11be |
|
20-Oct-2003 |
John Criswell <criswell@uiuc.edu> |
Added LLVM copyright header (for lack of a better term). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
202884fd9b575396f7ca220755cc4e3dac9b5a97 |
|
16-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Completely rewrite support for the Value::use_* list. Now, all operations on this list (except use_size()) are constant time. Before the killUse method (used whenever something stopped using a value) was linear time, and thus very very slow for large programs. This speeds GCCAS up _substantially_ on large programs: almost 2x for 176.gcc: 176.gcc: 77.07s -> 37.38s 177.mesa: 7.59s -> 5.57s 252.eon: 21.02s -> 19.52s (*) 253.perlbmk: 11.40s -> 13.05s 254.gap: 7.25s -> 7.42s 252.eon would speed up a whole lot more, but optimization time is being dominated by the inlining pass, which needs to be fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9159 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
14d9ce7892c7c0008c7cc38894ee3f71e4104d94 |
|
15-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Add new hasOneUse() method. Remove explicit inline qualifiers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9132 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0dde36c4c70e2c16be7802e978fb7dd34a7125cb |
|
02-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
There is no reason for Value to be an AbstractTypeUser. This just makes things significantly more complete. Instead, just make DerivedType's AbstractTypeUser's, and make Value contain a PATypeHolder. This will also be more efficient in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
48486893f46d2e12e926682a3ecb908716bc66c4 |
|
30-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
Standardize header file comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
94949dad0c83a651bede5b0fce79bd70bb16899e |
|
29-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Add new method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8204 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
893f025262574d01de5585d64860673e13d77ee5 |
|
18-Jun-2003 |
Chris Lattner <sabre@nondot.org> |
Detemplatize the PATypeHandle class, which was only really instantiated on 'Type'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6774 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
cb09cc268b510e99d40b3518c5a390369ae3ffd5 |
|
14-Jan-2003 |
Chris Lattner <sabre@nondot.org> |
Move annotation to support library git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5268 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
806fd40074b3a27234884e7f8fc096432ce25e30 |
|
09-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
- Detemplatize UseTy<> in Value.h, because it's only instantiated for one type! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4093 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
4e5e2edf6a786c094446eaae57ff4b9174baaf37 |
|
09-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
- Remove Value::use_push_back & Value::use_remove git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4089 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
fb8c89fbd30fad104fce1095ebb3391d5e5e3421 |
|
23-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
Group #includes better git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3887 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b163f1c3e551cb3e5abd9bead0eae7a753502540 |
|
10-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
Eliminate setType method Now the only way to set the type of a value is in the ctor for an object git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
26199059268a05739c84ebf465fcdbf7ded861df |
|
26-Aug-2002 |
Chris Lattner <sabre@nondot.org> |
Convert comments to Doxygen style git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e2c677fd9cf412e77783b1e4d7eee57508a3e6db |
|
24-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
Disable the operator= in Value Disable the copy ctor and operator= in Annotation.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0d1fa552005ebfcd19411ae18b8766b9240cfe1a |
|
25-Jun-2002 |
Chris Lattner <sabre@nondot.org> |
We must with with GCC 2.95 :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
4a9f9337511441af0624e754ad9b2b1262ee584d |
|
25-Jun-2002 |
Anand Shukla <ashukla@cs.uiuc.edu> |
changes to make it compatible with 64bit gcc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
18961504fc2b299578dba817900a0696cf3ccc4d |
|
25-Jun-2002 |
Chris Lattner <sabre@nondot.org> |
*** empty log message *** git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2777 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
356b79320b053b77562b47c076c753ab4c4d60d7 |
|
28-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Module's are no longer Value's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e06e9146eeb48e3ebf0f30bdaf7d86a6e03946ad |
|
09-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Move FunctionArgument out of iOther.h into Argument.h and rename class to be 'Argument' instead of FunctionArgument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
42a695c2f2627a04b1fc8e2160d608c39f1dd6ac |
|
08-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
* Move casting stuff out to Support/Casting.h * Add top level virtual print function, disallows instantiating Value's directly. * Provide operator<< for values here, instead of in Assembly/Writer.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2168 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
19b0411c95335018f0d1c6b6f029983fc2d79761 |
|
26-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
Transform uses of Method into uses of Function. Rename MethodArgument to FunctionArgument Fix some _really_ out of date comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e7506a366e8bd56c97d10beb68e4db953aebaeca |
|
23-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
Rename Method to Function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1957 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
697954c15da58bd8b186dbafdedd8b06db770201 |
|
20-Jan-2002 |
Chris Lattner <sabre@nondot.org> |
Changes to build successfully with GCC 3.02 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e9bb2df410f7a22decad9a883f7139d5857c1520 |
|
03-Dec-2001 |
Chris Lattner <sabre@nondot.org> |
Rename ConstPoolVal -> Constant Rename ConstPool* -> Constant* Rename ConstPoolVals.h -> ConstantVals.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
00de509022f3a3c72c128ace4ecb04e9acb0c6fd |
|
18-Oct-2001 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Remove extra assert in dyn_cast_or_null. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
3ef77fcd5545f24773797ecfa0dfa24802c239e6 |
|
15-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Add cast_or_null & dyn_cast_or_null git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@824 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
2a72820b43b94a4da0d51c1533b22ded37fc5c86 |
|
15-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Improve error messages on assertion failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@821 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
46c6371141c050e1599ba86d9d84447be3b4c786 |
|
15-Oct-2001 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Cast NULL when requested. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
004adcafec3caa84a29926b877309cc8fdf21f96 |
|
13-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Add use_back() methods git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@740 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
ef9c23f2812322ae5c5f3140bfbcf92629d7ff47 |
|
03-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
* Both Method & GlobalVariable now subclass GlobalValue * ConstPoolPointerReference now represents a pointer to a GlobalValue * Methods name references are now explicit pointers to methods * Rename Value::GlobalVal to Value::GlobalVariableVal to avoid confusion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
b00c582b6d40e6b9ff2d1ed4f5eaf7930e792ace |
|
02-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Commit more code over to new cast style git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
1d87bcf4909b06dcd86320722653341f08b8b396 |
|
01-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Convert more code to use new style casts Eliminate old style casts from value.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@696 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
cfe26c930ae691ff3012736555846c45087e1a9e |
|
01-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Add more support for new style casts Convert more code to use them git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9636a91649f168f41b477cba705287665e054f79 |
|
01-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Add support for new style casts git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
7295eb4ea3e3a81e697600cbca681674e4b35a20 |
|
01-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Add support for newer cleaner isa, cast, dyn_cast git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@693 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
27cd2caca5abf368ed56ee50804bcf09ef41b2b5 |
|
19-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
Remove debugging output stuff git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
20f8d5d093400bc7f33f25facd0b99b1e2d8c8c9 |
|
18-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
Remove operator << to Assembly/Writer.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@625 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
0b5787ace89a97c3584b3bdebd3d85f4060d5ec6 |
|
18-Sep-2001 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Added debugging support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
46cbff625eb9593cf9ddac415c39311a54aa27fa |
|
14-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
Chris seems fond of #include <vector>. Fix these. Also convert use list in Value to a vector instead of a list. Move SchedGraph.h & SchedPriorities.h into lib/CodeGen/InstrScheduling git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@572 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
70cc3397f84c2e1fd69c059a0ef89e398e847b00 |
|
10-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
Implement global variable support git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@530 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
9d3e9f93e567d6737551a7545370859fae2f8b94 |
|
07-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
* Values are AbstactTypeUsers to support abstract types * SetName now takes extra parameter to support naming types and constants without handles git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
cda67e50867c41c75e1d864e33044e08c1c7fea7 |
|
23-Aug-2001 |
Chris Lattner <sabre@nondot.org> |
Add annotation support to value git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
dc4c3f2f5fc6132885d590631b54de0be2c659be |
|
14-Jul-2001 |
Chris Lattner <sabre@nondot.org> |
Made the following changes: * ValueHolder became a 3 argument template. This allows for BasicBlock to use the value holder arg as a typesafe parent pointer. * SymTabValue no longer inherits from Value * Method does not inherit from only SymTabValue. Now it inherits from both STV & Value. * Module does not inherit from only SymTabValue. Now it inherits from both STV & Value. * Updated the SymTabValue.h file to reference SymTabValue instead of STDef in several places * Added isArraySelector & isStructSelector to GetElementPtr instruction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
e02cb164b186edacb700f4b67d8f9e713b63d8de |
|
28-Jun-2001 |
Chris Lattner <sabre@nondot.org> |
Add a new slew of functions to allow dynamic_cast<> like operation for upcasting Value's to their subclasses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
143da691f066e24a9e5272e1cabea4c446ee8cc1 |
|
11-Jun-2001 |
Chris Lattner <sabre@nondot.org> |
Updates to support * Changes in PHI node structure * Fix to Predecessor iterator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
bbcfc51f3b2c483a8212205dbfae3b59400b306d |
|
07-Jun-2001 |
Chris Lattner <sabre@nondot.org> |
Fixes for BB iterators, additional methods added for DCE pass git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|
009505452b713ed2e3a8e99c5545a6e721c65495 |
|
06-Jun-2001 |
Chris Lattner <sabre@nondot.org> |
Initial revision git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Value.h
|