| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
keep track of instructions that return void) per-function. This fixes PR5278.
This breaks backwards compatibility with the metadata format. That's okay
because we haven't released the metadata bitcode yet.
llvm-svn: 97132
|
|
|
|
|
|
|
| |
and T->isPointerTy(). Convert most instances of the first form to the second form.
Requested by Chris.
llvm-svn: 96344
|
|
|
|
|
|
| |
to function-local IR were not getting written by BitcodeWriter; solution is for these metadata to be enumerated just like global metadata.
llvm-svn: 95467
|
|
|
|
|
|
| |
that it refers to; fix is to not enumerate operands of function-local metadata until after all instructions have been enumerated
llvm-svn: 95269
|
|
|
|
| |
llvm-svn: 94304
|
|
|
|
| |
llvm-svn: 94243
|
|
|
|
| |
llvm-svn: 93446
|
|
|
|
| |
llvm-svn: 93401
|
|
|
|
|
|
| |
function-incorporation, global metadata continues to be enumerated during creation of ValueEnumerator
llvm-svn: 93338
|
|
|
|
| |
llvm-svn: 93039
|
|
|
|
| |
llvm-svn: 93032
|
|
|
|
| |
llvm-svn: 92931
|
|
|
|
| |
llvm-svn: 92783
|
|
|
|
|
|
| |
dereference the type pointer.
llvm-svn: 92726
|
|
|
|
|
|
|
| |
things that occur in types. "operands" are things that occur
in values.
llvm-svn: 92322
|
|
|
|
| |
llvm-svn: 92320
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
irrelevant internal implementation details to clients.
llvm-svn: 92210
|
|
|
|
| |
llvm-svn: 92208
|
|
|
|
|
|
|
| |
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: 85376
|
|
|
|
| |
llvm-svn: 85254
|
|
|
|
| |
llvm-svn: 84885
|
|
|
|
| |
llvm-svn: 84884
|
|
|
|
| |
llvm-svn: 84784
|
|
|
|
| |
llvm-svn: 83019
|
|
|
|
| |
llvm-svn: 82355
|
|
|
|
| |
llvm-svn: 82259
|
|
|
|
| |
llvm-svn: 78948
|
|
|
|
|
|
| |
This fixes PR4666.
llvm-svn: 78056
|
|
|
|
| |
llvm-svn: 77675
|
|
|
|
| |
llvm-svn: 77636
|
|
|
|
| |
llvm-svn: 77517
|
|
|
|
|
|
| |
New name is Metadata.h.
llvm-svn: 77370
|
|
|
|
|
|
| |
METADATA_BLOCK in bitcode file.
llvm-svn: 76834
|
|
|
|
| |
llvm-svn: 76767
|
|
|
|
| |
llvm-svn: 76761
|
|
|
|
|
|
|
| |
Derive MDString directly from MetadataBase.
Introduce new bitcode block to hold metadata.
llvm-svn: 76759
|
|
|
|
|
|
| |
since functions may contain aggregate constants too.
llvm-svn: 73220
|
|
|
|
|
|
|
| |
Constant* in preperation of a future change to support holding non-Constants
in an MDNode.
llvm-svn: 71407
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g
This sets the stage
- to implement function notes as function attributes and
- to distinguish between function attributes and return value attributes.
This requires corresponding changes in llvm-gcc and clang.
llvm-svn: 56622
|
|
|
|
|
|
|
|
|
| |
and bitcode support for the extractvalue and insertvalue
instructions and constant expressions.
Note that this does not yet include CodeGen support.
llvm-svn: 51468
|
|
|
|
|
|
|
| |
several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. There is now a "PAListPtr" class, which is a smart pointer around
the underlying uniqued parameter attribute list object, and manages
its refcount. It is now impossible to mess up the refcount.
2. PAListPtr is now the main interface to the underlying object, and
the underlying object is now completely opaque.
3. Implementation details like SmallVector and FoldingSet are now no
longer part of the interface.
4. You can create a PAListPtr with an arbitrary sequence of
ParamAttrsWithIndex's, no need to make a SmallVector of a specific
size (you can just use an array or scalar or vector if you wish).
5. All the client code that had to check for a null pointer before
dereferencing the pointer is simplified to just access the
PAListPtr directly.
6. The interfaces for adding attrs to a list and removing them is a
bit simpler.
Phase #2 will rename some stuff (e.g. PAListPtr) and do other less
invasive changes.
llvm-svn: 48289
|
|
|
|
| |
llvm-svn: 45418
|
|
|
|
|
|
|
|
|
|
|
|
| |
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.
llvm-svn: 44359
|
|
|
|
|
|
| |
issues with CE_CAST etc.
llvm-svn: 36864
|
|
|
|
|
|
| |
This avoids fwd references in the reader.
llvm-svn: 36822
|
|
|
|
|
|
| |
2878544 to 2815788
llvm-svn: 36818
|