History log of /llvm-project/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp (Results 826 – 850 of 1013)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 9aa30fbe 12-Feb-2010 Evan Cheng <evan.cheng@apple.com>

Add ARM bitcode file magic.

llvm-svn: 96006


# 6b7f4216 29-Jan-2010 Victor Hernandez <vhernandez@apple.com>

We were not writing bitcode for function-local metadata whose operands have been erased (making it not have any more function-local operands)

llvm-svn: 94842


# 091217be 27-Jan-2010 Jeffrey Yasskin <jyasskin@google.com>

Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules

Kill ModuleProvider and ghost linkage by inverting the relationship between
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

show more ...


# 36aee30d 14-Jan-2010 Victor Hernandez <vhernandez@apple.com>

Avoid modifying ValueEnumerator's MD ValueList by choosing which function-local MD to write based on the function currently being written

llvm-svn: 93441


# 6c730dea 14-Jan-2010 Victor Hernandez <vhernandez@apple.com>

In WriteFunction(), write function-local metadata before we write the instructions, so instruction's references to metadata are fully resolved by the time they get written.

llvm-svn: 93403


# 9c203e36 13-Jan-2010 Victor Hernandez <vhernandez@apple.com>

Fix comment typo

llvm-svn: 93355


# b00a6bee 13-Jan-2010 Victor Hernandez <vhernandez@apple.com>

Write function-local metadata as a metadata subblock of a funciton block

llvm-svn: 93339


# 013a91dd 13-Jan-2010 Victor Hernandez <vhernandez@apple.com>

Revert 93270 pending investigation of how stray non-constant values end up in ValueEnumerator's ValueList during WriteConstants()

llvm-svn: 93289


# fc4aefb1 12-Jan-2010 Victor Hernandez <vhernandez@apple.com>

Make WriteConstants() more robust against stray values in ValueEnumerator's ValueList

llvm-svn: 93270


# b8fd152d 10-Jan-2010 Victor Hernandez <vhernandez@apple.com>

Compute isFunctionLocal in MDNode ctor or via argument in new function getWhenValsUnresolved().
Document PFS argument to ParseValID() and ConvertGlobalOrMetadataValIDToValue().

llvm-svn: 93108


# fcfee0ff 07-Jan-2010 Devang Patel <dpatel@apple.com>

Use separate namespace for named metadata.

llvm-svn: 92931


# 6edcd399 05-Jan-2010 Devang Patel <dpatel@apple.com>

Allow null to be an element of NamedMDNode. e.g. !llvm.stuff = !{!0, !1, null}

llvm-svn: 92783


# 9b493028 31-Dec-2009 Chris Lattner <sabre@nondot.org>

rename "elements" of metadata to "operands". "Elements" are
things that occur in types. "operands" are things that occur
in values.

llvm-svn: 92322


# a0566979 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

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.

llvm-svn: 92259

show more ...


# 2f2aa2b0 28-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(), ju

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.

llvm-svn: 92235

show more ...


# c9558df1 28-Dec-2009 Chris Lattner <sabre@nondot.org>

rename getHandlerNames to getMDKindNames, simplify its interface
and simplify all the clients that use it.

llvm-svn: 92224


# 53bb5e4a 28-Dec-2009 Chris Lattner <sabre@nondot.org>

change the strange MetadataContext::getMDs function to expose less
irrelevant internal implementation details to clients.

llvm-svn: 92210


# aa99c94e 01-Nov-2009 Chris Lattner <sabre@nondot.org>

Revert 85678/85680. The decision is to stay with the current form of
indirectbr, thus we don't need "blockaddr(@func, null)". Eliminate it
for simplicity.

llvm-svn: 85699


# b2c0e243 31-Oct-2009 Chris Lattner <sabre@nondot.org>

Make blockaddress(@func, null) be valid, and make 'deleting a basic
block with a blockaddress still referring to it' replace the invalid
blockaddress with a new blockaddress(@func, null) instead of

Make blockaddress(@func, null) be valid, and make 'deleting a basic
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

show more ...


# f540d74b 28-Oct-2009 Chris Lattner <sabre@nondot.org>

bitcode writer support for blockaddress.

llvm-svn: 85376


# a91a5635 28-Oct-2009 Chris Lattner <sabre@nondot.org>

Previously, all operands to Constant were themselves constant.
In the new world order, BlockAddress can have a BasicBlock operand.
This doesn't permute much, because if you have a ConstantExpr (or
an

Previously, all operands to Constant were themselves constant.
In the new world order, BlockAddress can have a BasicBlock operand.
This doesn't permute much, because if you have a ConstantExpr (or
anything more specific than Constant) we still know the operand has
to be a Constant.

llvm-svn: 85375

show more ...


# d04cb6d0 28-Oct-2009 Chris Lattner <sabre@nondot.org>

rename indbr -> indirectbr to appease the residents of #llvm.

llvm-svn: 85351


# 3ed871fe 27-Oct-2009 Chris Lattner <sabre@nondot.org>

add enough support for indirect branch for the feature test to pass
(assembler,asmprinter, bc reader+writer) and document it. Codegen
currently aborts on it.

llvm-svn: 85274


# 26a7ae4f 27-Oct-2009 Chris Lattner <sabre@nondot.org>

Type.h doesn't need to #include LLVMContext.h

llvm-svn: 85254


# de5ad42a 26-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Remove FreeInst.
Remove LowerAllocations pass.
Update some more passes to treate free calls just like they were treating FreeInst.

llvm-svn: 85176


1...<<3132333435363738394041