History log of /external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cd81d94322a39503e4a3e87b6ee03d4fcb3465fb 21-Jul-2014 Stephen Hines <srhines@google.com> Update LLVM for rebase to r212749.

Includes a cherry-pick of:
r212948 - fixes a small issue with atomic calls

Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
9e639e8fd95488cb4c8ef2f7f3a41919acb29ac4 11-Jul-2013 Craig Topper <craig.topper@gmail.com> Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
105ea3d49d4a458af8779ae7f144f00d19c4168f 12-Feb-2013 Bill Wendling <isanbard@gmail.com> Use the AttributeSet as the 'key' to the map instead of the 'raw' pointer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
e9229a6a9614cbde1bff2bd6ffae3b7336db5702 11-Feb-2013 Bill Wendling <isanbard@gmail.com> Rename AttributeSets to AttributeGroups so that it's more meaningful.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174911 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
8c2e77f895301967bf37d04e905fb1f069ec91b2 11-Feb-2013 Bill Wendling <isanbard@gmail.com> Add support for attribute groups in the value enumerator.

Attribute groups are essentially all AttributeSets which are used by the
program. Enumerate them here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
034b94b17006f51722886b0f2283fb6fb19aca1f 19-Dec-2012 Bill Wendling <isanbard@gmail.com> Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
99faa3b4ec6d03ac7808fe4ff3fbf3d04e375502 08-Dec-2012 Bill Wendling <isanbard@gmail.com> s/AttrListPtr/AttributeSet/g to better label what this class is going to be in the near future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169651 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
170a15e98dc6900df1ae40d03c5f0622d792fb45 25-Nov-2012 Joe Abbey <jabbey@arxan.com> Code Custodian:
- Widespread trailing space removal
- A dash of OCD spacing to block align enums
- joined a line that probably needed 80 cols a while back



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
86a1c32e67b23c5e9e42dff9eb86e99ba15bb42f 15-Sep-2012 Craig Topper <craig.topper@gmail.com> Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163974 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
4e6c03fc3de8885b9a0a0b8069123b86d4834f08 07-Dec-2011 Chad Rosier <mcrosier@apple.com> ValueEnumerator - debug dump().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.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/lib/Bitcode/Writer/ValueEnumerator.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/lib/Bitcode/Writer/ValueEnumerator.h
6a0c04dff288b7eaa0459cc7419159765bb5a0b9 03-Jun-2011 Chad Rosier <mcrosier@apple.com> Revert name change from r132533. Lower case naming was intended per style guidelines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132555 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
3d26f2333b320e04d405a4418f640f8b7e358a99 03-Jun-2011 Chad Rosier <mcrosier@apple.com> Whitespace and other cleanup. Functionallity unchanged.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132533 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
f5a90561b033428bd2c5b365ca09ed9e688dce6e 06-Apr-2011 Rafael Espindola <rafael.espindola@gmail.com> Do a topological sort of the types before writing them out.

This takes the linking of libxul on linux from 6m54.931s to 5m39.840s.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
309b3af547a60bedd74daa2a94ebd3d3ed5f06e9 24-Aug-2010 Dan Gohman <gohman@apple.com> Extend function-local metadata to be usable as attachments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111895 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.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/lib/Bitcode/Writer/ValueEnumerator.h
6209869f83979319e2e5791382f09b83e54191e0 03-Jun-2010 Devang Patel <dpatel@apple.com> Speedup bitcode writer. Do not walk all values for all functions to emit function local metadata. In one testcase, probably worst case scenario, the 70x speed up is seen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
bc5201f8371f9041e79efcca3b158335da5c2604 22-Jan-2010 Devang Patel <dpatel@apple.com> Remove MetadataBase class because it is not adding significant value.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94243 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
d7e6457c3faf6c5530a4c8224e2dfcf91b57093b 14-Jan-2010 Victor Hernandez <vhernandez@apple.com> Simplify code that chooses when to enumerate function-local metadata operands

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
3cd7c3db9926c1db3b55599c01c75e8ecc6bd096 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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
ab9cd107211604988c19d2d49eb4bfcd05df7995 13-Jan-2010 Victor Hernandez <vhernandez@apple.com> Enumerate function-local metadata (and its types and operands) only during function-incorporation, global metadata continues to be enumerated during creation of ValueEnumerator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
8fba578be72dc98497508dec053e966858571f6a 09-Jan-2010 Devang Patel <dpatel@apple.com> Derive NamedMDNode from Value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
0386f01e061513094504bc11f8352a40173cada7 07-Jan-2010 Devang Patel <dpatel@apple.com> Use separate namespace for named metadata.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
837e04a8bf13712a4a8ae279daab65a048b21f7d 28-Oct-2009 Chris Lattner <sabre@nondot.org> bitcode writer support for blockaddress.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85376 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
e8e0213cc3daa2d0457c22e4c12e6973f21fc942 18-Sep-2009 Devang Patel <dpatel@apple.com> Write and read metadata attachments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
d5ac40457b62f37f0abfb1d61064f7c7300e91ee 04-Aug-2009 Devang Patel <dpatel@apple.com> Use separate ValueList for metadata.
This fixes PR4666.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
f7e498138f2f15b9391274d0c062fa62ab2e86fc 12-Jun-2009 Nick Lewycky <nicholas@mxc.ca> Don't remove aggregate-typed module level constants before encoding functions
since functions may contain aggregate constants too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73220 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
0598866c052147c31b808391f58434ce3dbfb838 25-Sep-2008 Devang Patel <dpatel@apple.com> Large mechanical patch.

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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
eaf42abab6d465c38891345d999255871cf03943 24-Sep-2008 Devang Patel <dpatel@apple.com> s/ParameterAttributes/Attributes/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
58d74910c6b82e622ecbb57d6644d48fec5a5c0f 12-Mar-2008 Chris Lattner <sabre@nondot.org> Reimplement the parameter attributes support, phase #1. hilights:

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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
4ee451de366474b9c228b4e5fa573795a715216d 29-Dec-2007 Chris Lattner <sabre@nondot.org> Remove attribution from file headers, per discussion on llvmdev.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
33f1d5b328813c986b8d083006a024e1a0c7d982 06-May-2007 Chris Lattner <sabre@nondot.org> Fix a nasty problem where we would miss enumeration of some types. This fixes
issues with CE_CAST etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
6da91d3c2c138eb1d9739701a1314ba3580df897 04-May-2007 Chris Lattner <sabre@nondot.org> optimize constant layout. This fixes encoding of 181.mcf (by ensuring
integer structure idx's are emitted before constant expr geps) and shrinks
files slightly. For example kc++ shrinks from 4326188 to 4240128 bytes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
2020ca2414df4e7f0737354c320e49e4b6e1cb8c 04-May-2007 Chris Lattner <sabre@nondot.org> pass by reference, not by value


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36721 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
50954f5cba406a88011cc8ade3ceb4235830f907 04-May-2007 Chris Lattner <sabre@nondot.org> enumerate parameter attr lists.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
b9d0c2a6a0ef5e19b2d30180ce7d6a10ffa1f5c5 26-Apr-2007 Chris Lattner <sabre@nondot.org> start code for writing out instructions. Separate BB#s from normal value
#'s.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36472 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
c59c0afd7d24480f5a23d8fd6764ecfd6d4424cc 26-Apr-2007 Chris Lattner <sabre@nondot.org> enumerate BB's separately from other function values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36467 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
8d35c79f273b74df1e95b4472620e31e81342037 26-Apr-2007 Chris Lattner <sabre@nondot.org> add support for incorporating and purging functions to the value enumerator


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
198f34ac359c48018c6e1f784cf3770ead63b253 26-Apr-2007 Chris Lattner <sabre@nondot.org> move some code around, fix a bug in the reader reading globalinits (which
I just introduced), stub out function reading, purge aggregate values from
the value table before reading functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36463 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
2edd22b959f0d8f897cce397730a881c708e474a 24-Apr-2007 Chris Lattner <sabre@nondot.org> Emit module-level constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36384 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
8c99a8e7684723f7cc45831bb0d93ff96a1306b0 23-Apr-2007 Chris Lattner <sabre@nondot.org> fix off-by one


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36377 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h
fd57cecd2cb3ac726942e0101de6a82dc5a958a6 22-Apr-2007 Chris Lattner <sabre@nondot.org> Initial support for writing bitcode files. This currently only writes types,
the type symtab, and global/function protos, and is missing the important
size optimization, but it is a place to start.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36331 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Bitcode/Writer/ValueEnumerator.h