diff options
| author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2015-09-24 23:34:52 +0000 |
|---|---|---|
| committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2015-09-24 23:34:52 +0000 |
| commit | b513a9fa4f1b68d10f658848e5bff39dab4bb8bd (patch) | |
| tree | 3433cf0682329f82b9839ceeff71586505b63ab8 /llvm/include | |
| parent | f021808d606eb35434fe54ae3ad2e1992af527b3 (diff) | |
| download | bcm5719-llvm-b513a9fa4f1b68d10f658848e5bff39dab4bb8bd.tar.gz bcm5719-llvm-b513a9fa4f1b68d10f658848e5bff39dab4bb8bd.zip | |
[Bitcode][Asm] Teach LLVM to read and write operand bundles.
Summary:
This also adds the first set of tests for operand bundles.
The optimizer has not been audited to ensure that it does the right
thing with operand bundles.
Depends on D12456.
Reviewers: reames, chandlerc, majnemer, dexonsmith, kmod, JosephTremoulet, rnk, bogner
Subscribers: maksfb, llvm-commits
Differential Revision: http://reviews.llvm.org/D12457
llvm-svn: 248551
Diffstat (limited to 'llvm/include')
| -rw-r--r-- | llvm/include/llvm/Bitcode/LLVMBitCodes.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/include/llvm/Bitcode/LLVMBitCodes.h b/llvm/include/llvm/Bitcode/LLVMBitCodes.h index 4b2ee513e50..9da5be6e969 100644 --- a/llvm/include/llvm/Bitcode/LLVMBitCodes.h +++ b/llvm/include/llvm/Bitcode/LLVMBitCodes.h @@ -43,6 +43,11 @@ namespace bitc { TYPE_BLOCK_ID_NEW, USELIST_BLOCK_ID, + + MODULE_STRTAB_BLOCK_ID, + FUNCTION_SUMMARY_BLOCK_ID, + + OPERAND_BUNDLE_TAGS_BLOCK_ID }; @@ -131,6 +136,10 @@ namespace bitc { TYPE_CODE_TOKEN = 22 // TOKEN }; + enum OperandBundleTagCode { + OPERAND_BUNDLE_TAG = 1, // TAG: [strchr x N] + }; + // The type symbol table only has one code (TST_ENTRY_CODE). enum TypeSymtabCodes { TST_CODE_ENTRY = 1 // TST_ENTRY: [typeid, namechar x N] @@ -369,6 +378,8 @@ namespace bitc { FUNC_CODE_INST_CLEANUPPAD = 52, // CLEANUPPAD: [num,args...] FUNC_CODE_INST_CATCHENDPAD = 53, // CATCHENDPAD: [] or [bb#] FUNC_CODE_INST_CLEANUPENDPAD = 54, // CLEANUPENDPAD: [val] or [val,bb#] + + FUNC_CODE_OPERAND_BUNDLE = 55, // OPERAND_BUNDLE: [tag#, value...] }; enum UseListCodes { |

