| //===- NaClBitcodeDefs.h ----------------------------------------*- C++ -*-===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // Defines some common types/constants used by bitcode readers and |
| // writers. It is intended to make clear assumptions made in |
| // representing bitcode files. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #ifndef LLVM_BITCODE_NACL_NACLBITCODEDEFS_H |
| #define LLVM_BITCODE_NACL_NACLBITCODEDEFS_H |
| |
| namespace llvm { |
| |
| namespace naclbitc { |
| |
| // Special record codes used to model codes for predefined records. |
| // They are very large so that they do not conflict with existing |
| // record codes for user-defined blocks. |
| enum SpecialBlockCodes { |
| BLK_CODE_ENTER = 65535, |
| BLK_CODE_EXIT = 65534, |
| BLK_CODE_DEFINE_ABBREV = 65533, |
| BLK_CODE_HEADER = 65532 |
| }; |
| |
| } // end of namespace naclbitc |
| |
| /// Defines type for value indicies in bitcode. Like a size_t, but |
| /// fixed across platforms. |
| typedef uint32_t NaClBcIndexSize_t; |
| |
| /// Signed version of NaClBcIndexSize_t. Used to define relative indices. |
| typedef int32_t NaClRelBcIndexSize_t; |
| |
| /// Defines maximum allowed bitcode index in bitcode files. |
| static const size_t NaClBcIndexSize_t_Max = |
| std::numeric_limits<NaClBcIndexSize_t>::max(); |
| |
| /// Defines the maximum number of initializers allowed, based on ILP32. |
| static const size_t MaxNaClGlobalVarInits = |
| std::numeric_limits<uint32_t>::max(); |
| |
| } // end of namespace llvm |
| |
| |
| #endif // LLVM_BITCODE_NACL_NACLBITCODEDEFS_H |