| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
methods to try to have the type predicates be more logically positioned.
llvm-svn: 96349
|
| |
|
|
|
|
|
| |
and T->isPointerTy(). Convert most instances of the first form to the second form.
Requested by Chris.
llvm-svn: 96344
|
| |
|
|
|
|
| |
isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris!
llvm-svn: 96223
|
| |
|
|
| |
llvm-svn: 96011
|
| |
|
|
| |
llvm-svn: 95801
|
| |
|
|
|
|
| |
to be printed, in place of the familiar "uses=" comments.
llvm-svn: 95798
|
| |
|
|
|
|
| |
them from values that are not actually defined in the module.
llvm-svn: 94854
|
| |
|
|
| |
llvm-svn: 94808
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.
Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods. The bindings to
other languages still use the ModuleProvider concept. It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.
Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.
llvm-svn: 94686
|
| |
|
|
|
|
| |
into getFunctionForValue()
llvm-svn: 93977
|
| |
|
|
|
|
| |
the normal situation for non function-local metadata)
llvm-svn: 93748
|
| |
|
|
| |
llvm-svn: 93402
|
| |
|
|
|
|
|
| |
dumper doesn't really do what I want yet, but
at least it doesn't crash now.
llvm-svn: 93272
|
| |
|
|
| |
llvm-svn: 92783
|
| |
|
|
| |
llvm-svn: 92760
|
| |
|
|
| |
llvm-svn: 92652
|
| |
|
|
| |
llvm-svn: 92349
|
| |
|
|
| |
llvm-svn: 92335
|
| |
|
|
|
|
| |
one that remains.
llvm-svn: 92334
|
| |
|
|
| |
llvm-svn: 92333
|
| |
|
|
| |
llvm-svn: 92332
|
| |
|
|
| |
llvm-svn: 92331
|
| |
|
|
| |
llvm-svn: 92330
|
| |
|
|
|
|
| |
dumps one node instead of all of them.
llvm-svn: 92329
|
| |
|
|
| |
llvm-svn: 92327
|
| |
|
|
|
|
| |
mdnode, not just operand 0 over and over.
llvm-svn: 92326
|
| |
|
|
| |
llvm-svn: 92325
|
| |
|
|
| |
llvm-svn: 92324
|
| |
|
|
|
|
|
| |
things that occur in types. "operands" are things that occur
in values.
llvm-svn: 92322
|
| |
|
|
| |
llvm-svn: 92268
|
| |
|
|
|
|
|
|
| |
getMDKindID/getMDKindNames methods to LLVMContext (and add
convenience methods to Module), eliminating MetadataContext.
Move the state that it maintains out to LLVMContext.
llvm-svn: 92259
|
| |
|
|
| |
llvm-svn: 92249
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
and simplify all the clients that use it.
llvm-svn: 92224
|
| |
|
|
|
|
| |
irrelevant internal implementation details to clients.
llvm-svn: 92210
|
| |
|
|
|
|
|
|
|
|
|
| |
- an MDNode is designated as function-local when created, and continues to be even if its operands are modified not to refer to function-local IR
- function-localness is designated via lowest bit in SubclassData
- getLocalFunction() descends MDNode tree to see if it is consistently function-local
Add verification of MDNodes to checks that MDNodes are consistently function-local.
Update AsmWriter to use isFunctionLocal().
llvm-svn: 91708
|
| |
|
|
| |
llvm-svn: 90738
|
| |
|
|
| |
llvm-svn: 90581
|
| |
|
|
| |
llvm-svn: 90572
|
| |
|
|
|
|
| |
that contains an instruction
llvm-svn: 90512
|
| |
|
|
|
|
| |
differentiate PseudoSourceValueVal from FixedStackPseudoSourceValueVal at this level?
llvm-svn: 88902
|
| |
|
|
| |
llvm-svn: 88716
|
| |
|
|
|
|
| |
got ghost linkage. It's better than aborting.
llvm-svn: 88715
|
| |
|
|
|
|
|
| |
indirectbr, thus we don't need "blockaddr(@func, null)". Eliminate it
for simplicity.
llvm-svn: 85699
|
| |
|
|
|
|
|
|
|
|
|
|
| |
block with a blockaddress still referring to it' replace the invalid
blockaddress with a new blockaddress(@func, null) instead of a
inttoptr(1).
This changes the bitcode encoding format, and still needs codegen
support (this should produce a non-zero value, referring to the entry
block of the function would also be quite reasonable).
llvm-svn: 85678
|
| |
|
|
| |
llvm-svn: 85568
|
| |
|
|
| |
llvm-svn: 85367
|
| |
|
|
| |
llvm-svn: 85351
|
| |
|
|
|
|
|
| |
(assembler,asmprinter, bc reader+writer) and document it. Codegen
currently aborts on it.
llvm-svn: 85274
|
| |
|
|
| |
llvm-svn: 85254
|