[IR] Add operand bundles to CallInst and InvokeInst.

Description

[IR] Add operand bundles to CallInst and InvokeInst.

Summary:
This change teaches CallInsts and InvokeInsts to maintain a set of
operand bundles as part of its operands. CallInsts and InvokeInsts
with operand bundles co-allocate some space before their Use array to
hold meta information about which of its operands are part of an operand
bundle.

The strings corresponding to the bundle tags are interned into
LLVMContextImpl::BundleTagCache

This change does not include any parsing / bitcode support. That's the
next change.

Depends on D12455.

Reviewers: reames, chandlerc, majnemer, dexonsmith, kmod, JosephTremoulet, rnk, bogner

Subscribers: MatzeB, sanjoy, llvm-commits

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

Details

Committed
sanjoySep 24 2015, 12:14 PM
Differential Revision
D12456: [IR] Add operand bundles to CallInst and InvokeInst.
Parents
rL248526: COFF: Remove duplicate parameter from hash value calculation.
Branches
Unknown
Tags
Unknown