History log of /llvm-project/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp (Results 76 – 100 of 223)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# a5e25a55 24-Mar-2016 Duncan P. N. Exon Smith <dexonsmith@apple.com>

BitcodeWriter: Move abbreviation for GenericDINode; almost NFC

Simplify ValueEnumerator and WriteModuleMetadata by shifting the logic
for the METADATA_GENERIC_DEBUG abbreviation into WriteGenericDIN

BitcodeWriter: Move abbreviation for GenericDINode; almost NFC

Simplify ValueEnumerator and WriteModuleMetadata by shifting the logic
for the METADATA_GENERIC_DEBUG abbreviation into WriteGenericDINode.
(This is just like r264302, but for GenericDINode.)

The only change is that the abbreviation is emitted later in the
bitcode, just before the first `GenericDINode` record. This shouldn't
be observable though.

llvm-svn: 264303

show more ...


# 625fda27 24-Mar-2016 Duncan P. N. Exon Smith <dexonsmith@apple.com>

BitcodeWriter: Move abbreviation for DILocation; almost NFC

Simplify ValueEnumerator and WriteModuleMetadata by shifting the logic
for the METADATA_LOCATION abbreviation into WriteDILocation.

The o

BitcodeWriter: Move abbreviation for DILocation; almost NFC

Simplify ValueEnumerator and WriteModuleMetadata by shifting the logic
for the METADATA_LOCATION abbreviation into WriteDILocation.

The only change is that the abbreviation is emitted later in the
bitcode, just before the first `DILocation` record. This shouldn't be
observable though.

llvm-svn: 264302

show more ...


Revision tags: llvmorg-3.8.0, llvmorg-3.8.0-rc3, llvmorg-3.8.0-rc2
# eb2a2546 29-Jan-2016 Yaron Keren <yaron.keren@gmail.com>

Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment.
clang part in r259232, this is the LLVM part of the patch.

llvm-svn: 259240


Revision tags: llvmorg-3.8.0-rc1
# 61b406ec 29-Dec-2015 Teresa Johnson <tejohnson@google.com>

Rename MDValue* to Metadata* (NFC)

Renamed MDValue* to Metadata*, and MDValueToValIDMap to MetadataToIDs,
as per review for r255909.

llvm-svn: 256593


# 3a63fb31 19-Dec-2015 Vedant Kumar <vsk@apple.com>

Re-reapply "[IR] Move optional data in llvm::Function into a hungoff uselist"

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thr

Re-reapply "[IR] Move optional data in llvm::Function into a hungoff uselist"

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thread "[RFC] Clean up the way we store
optional Function data" on llvm-dev.

Thanks to sanjoyd, majnemer, rnk, loladiro, and dexonsmith for feedback!

Includes a fix to scrub value subclass data in dropAllReferences. Does not
use binary literals.

Differential Revision: http://reviews.llvm.org/D13829

llvm-svn: 256095

show more ...


# 44dd9871 19-Dec-2015 Vedant Kumar <vsk@apple.com>

Revert "Reapply "[IR] Move optional data in llvm::Function into a hungoff uselist""

This reverts commit r256093.

This broke lld-x86_64-win7 because of -Werror,-Wc++1y-extensions.

llvm-svn: 256094


# d481752e 19-Dec-2015 Vedant Kumar <vsk@apple.com>

Reapply "[IR] Move optional data in llvm::Function into a hungoff uselist"

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thread

Reapply "[IR] Move optional data in llvm::Function into a hungoff uselist"

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thread "[RFC] Clean up the way we store
optional Function data" on llvm-dev.

Thanks to sanjoyd, majnemer, rnk, loladiro, and dexonsmith for feedback!

Includes a fix to scrub value subclass data in dropAllReferences.

Differential Revision: http://reviews.llvm.org/D13829

llvm-svn: 256093

show more ...


# e069c4b6 19-Dec-2015 Vedant Kumar <vsk@apple.com>

Revert "[IR] Move optional data in llvm::Function into a hungoff uselist"

This reverts commit r256090.

This broke llvm-clang-lld-x86_64-debian-fast.

llvm-svn: 256091


# be7525d4 19-Dec-2015 Vedant Kumar <vsk@apple.com>

[IR] Move optional data in llvm::Function into a hungoff uselist

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thread "[RFC] Cl

[IR] Move optional data in llvm::Function into a hungoff uselist

Make personality functions, prefix data, and prologue data hungoff
operands of Function.

This is based on the email thread "[RFC] Clean up the way we store
optional Function data" on llvm-dev.

Thanks to sanjoyd, majnemer, rnk, loladiro, and dexonsmith for feedback!

Differential Revision: http://reviews.llvm.org/D13829

llvm-svn: 256090

show more ...


Revision tags: llvmorg-3.7.1, llvmorg-3.7.1-rc2, llvmorg-3.7.1-rc1
# 584af871 13-Oct-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

BitcodeWriter: Stop using implicit ilist iterator conversion, NFC

Now LLVMBitWriter compiles without implicit ilist iterator conversions.

In these cases, the cleanest thing was to switch to range-b

BitcodeWriter: Stop using implicit ilist iterator conversion, NFC

Now LLVMBitWriter compiles without implicit ilist iterator conversions.

In these cases, the cleanest thing was to switch to range-based for
loops. Since there wasn't much noise I converted sub-loops and parent
loops as a drive-by.

llvm-svn: 250144

show more ...


Revision tags: llvmorg-3.7.0, llvmorg-3.7.0-rc4, llvmorg-3.7.0-rc3, studio-1.4, llvmorg-3.7.0-rc2, llvmorg-3.7.0-rc1
# 125ad17f 25-Jun-2015 Pete Cooper <peter_cooper@apple.com>

Use foreach loop over constant operands. NFC.

A number of places had explicit loops over Constant::operands().
Just use foreach loops where possible.

llvm-svn: 240694


Revision tags: llvmorg-3.6.2, llvmorg-3.6.2-rc1
# f00654e3 23-Jun-2015 Alexander Kornienko <alexfh@google.com>

Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC)

Apparently, the style needs to be agreed upon first.

llvm-svn: 240390


# 70bc5f13 19-Jun-2015 Alexander Kornienko <alexfh@google.com>

Fixed/added namespace ending comments using clang-tidy. NFC

The patch is generated using this command:

tools/clang/tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \
-checks=-*,llvm-namespace-c

Fixed/added namespace ending comments using clang-tidy. NFC

The patch is generated using this command:

tools/clang/tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \
-checks=-*,llvm-namespace-comment -header-filter='llvm/.*|clang/.*' \
llvm/lib/


Thanks to Eugene Kosov for the original patch!

llvm-svn: 240137

show more ...


# 7fddeccb 17-Jun-2015 David Majnemer <david.majnemer@gmail.com>

Move the personality function from LandingPadInst to Function

The personality routine currently lives in the LandingPadInst.

This isn't desirable because:
- All LandingPadInsts in the same function

Move the personality function from LandingPadInst to Function

The personality routine currently lives in the LandingPadInst.

This isn't desirable because:
- All LandingPadInsts in the same function must have the same
personality routine. This means that each LandingPadInst beyond the
first has an operand which produces no additional information.

- There is ongoing work to introduce EH IR constructs other than
LandingPadInst. Moving the personality routine off of any one
particular Instruction and onto the parent function seems a lot better
than have N different places a personality function can sneak onto an
exceptional function.

Differential Revision: http://reviews.llvm.org/D10429

llvm-svn: 239940

show more ...


# 4c20debe 12-Jun-2015 Yaron Keren <yaron.keren@gmail.com>

Rangify several for loops in ValueEnumerator constructor.

llvm-svn: 239636


Revision tags: llvmorg-3.6.1, llvmorg-3.6.1-rc1
# a9308c49 29-Apr-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

IR: Give 'DI' prefix to debug info metadata

Finish off PR23080 by renaming the debug info IR constructs from `MD*`
to `DI*`. The last of the `DIDescriptor` classes were deleted in
r235356, and the

IR: Give 'DI' prefix to debug info metadata

Finish off PR23080 by renaming the debug info IR constructs from `MD*`
to `DI*`. The last of the `DIDescriptor` classes were deleted in
r235356, and the last of the related typedefs removed in r235413, so
this has all baked for about a week.

Note: If you have out-of-tree code (like a frontend), I recommend that
you get everything compiling and tests passing with the *previous*
commit before updating to this one. It'll be easier to keep track of
what code is using the `DIDescriptor` hierarchy and what you've already
updated, and I think you're extremely unlikely to insert bugs. YMMV of
course.

Back to *this* commit: I did this using the rename-md-di-nodes.sh
upgrade script I've attached to PR23080 (both code and testcases) and
filtered through clang-format-diff.py. I edited the tests for
test/Assembler/invalid-generic-debug-node-*.ll by hand since the columns
were off-by-three. It should work on your out-of-tree testcases (and
code, if you've followed the advice in the previous paragraph).

Some of the tests are in badly named files now (e.g.,
test/Assembler/invalid-mdcompositetype-missing-tag.ll should be
'dicompositetype'); I'll come back and move the files in a follow-up
commit.

llvm-svn: 236120

show more ...


# 3d4cd756 24-Apr-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

IR: Add assembly/bitcode support for function metadata attachments

Add serialization support for function metadata attachments (added in
r235783). The syntax is:

define @foo() !attach !0 {

Me

IR: Add assembly/bitcode support for function metadata attachments

Add serialization support for function metadata attachments (added in
r235783). The syntax is:

define @foo() !attach !0 {

Metadata attachments are only allowed on functions with bodies. Since
they come before the `{`, they're not really part of the body; since
they require a body, they're not really part of the header. In
`LLParser` I gave them a separate function called from `ParseDefine()`,
`ParseOptionalFunctionMetadata()`.

In bitcode, I'm using the same `METADATA_ATTACHMENT` record used by
instructions. Instruction metadata attachments are included in a
special "attachment" block at the end of a `Function`. The attachment
records are laid out like this:

InstID (KindID MetadataID)+

Note that these records always have an odd number of fields. The new
code takes advantage of this to recognize function attachments (which
don't need an instruction ID):

(KindID MetadataID)+

This means we can use the same attachment block already used for
instructions.

This is part of PR23340.

llvm-svn: 235785

show more ...


# 458593a4 14-Apr-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

uselistorder: Thread bit through ValueEnumerator

Canonicalize access to whether to preserve use-list order in bitcode on
a `bool` stored in `ValueEnumerator`. Next step, expose this as a
`bool` thr

uselistorder: Thread bit through ValueEnumerator

Canonicalize access to whether to preserve use-list order in bitcode on
a `bool` stored in `ValueEnumerator`. Next step, expose this as a
`bool` through `WriteBitcodeToFile()`.

llvm-svn: 234956

show more ...


# ab659fb3 30-Mar-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

IR: Use the new DebugLoc API, NFC

Update lib/IR and lib/Bitcode to use the new `DebugLoc` API. Added an
explicit conversion to `bool` (avoiding a conversion to `MDLocation`),
since a couple of thes

IR: Use the new DebugLoc API, NFC

Update lib/IR and lib/Bitcode to use the new `DebugLoc` API. Added an
explicit conversion to `bool` (avoiding a conversion to `MDLocation`),
since a couple of these use cases need to handle broken code.

llvm-svn: 233585

show more ...


Revision tags: llvmorg-3.5.2, llvmorg-3.5.2-rc1, llvmorg-3.6.0
# 7b028108 25-Feb-2015 David Blaikie <dblaikie@gmail.com>

BitcodeWriter: Refactor common computation of bits required for a type index.

Suggested by Duncan. Happy to bikeshed the name, cache the result, etc.

llvm-svn: 230410


Revision tags: llvmorg-3.6.0-rc4, llvmorg-3.6.0-rc3
# 4e4aa705 03-Feb-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

IR: Assembly and bitcode for GenericDebugNode

llvm-svn: 228041


# d9901ff5 02-Feb-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

IR: Split out DebugInfoMetadata.h, NFC

Move debug-info-centred `Metadata` subclasses into their own
header/source file. A couple of private template functions are needed
from both `Metadata.cpp` an

IR: Split out DebugInfoMetadata.h, NFC

Move debug-info-centred `Metadata` subclasses into their own
header/source file. A couple of private template functions are needed
from both `Metadata.cpp` and `DebugInfoMetadata.cpp`, so I've moved them
to `lib/IR/MetadataImpl.h`.

llvm-svn: 227835

show more ...


Revision tags: llvmorg-3.6.0-rc2
# 9a6f64e7 20-Jan-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

Bitcode: Add ValueEnumerator::getMetadataOrNullID(), NFC

llvm-svn: 226533


Revision tags: llvmorg-3.6.0-rc1
# 6a484832 13-Jan-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

AsmParser/Bitcode: Add support for MDLocation

This adds assembly and bitcode support for `MDLocation`. The assembly
side is rather big, since this is the first `MDNode` subclass (that
isn't `MDTupl

AsmParser/Bitcode: Add support for MDLocation

This adds assembly and bitcode support for `MDLocation`. The assembly
side is rather big, since this is the first `MDNode` subclass (that
isn't `MDTuple`). Part of PR21433.

(If you're wondering where the mountains of testcase updates are, we
don't need them until I update `DILocation` and `DebugLoc` to actually
use this class.)

llvm-svn: 225830

show more ...


# 2fcf60e7 12-Jan-2015 Duncan P. N. Exon Smith <dexonsmith@apple.com>

Bitcode: Simplify emission of METADATA_BLOCK

Refactor logic so that we know up-front whether to open a block and
whether we need an MDString abbreviation.

This is almost NFC, but will start emittin

Bitcode: Simplify emission of METADATA_BLOCK

Refactor logic so that we know up-front whether to open a block and
whether we need an MDString abbreviation.

This is almost NFC, but will start emitting `MDString` abbreviations
when the first record is not an `MDString`.

llvm-svn: 225712

show more ...


123456789