Version 1.2 now supports encoding strings as a special case, to avoid having

to emit all of those sbyte constants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10863 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2004-01-14 23:35:21 +00:00
parent dcea63026f
commit 9e893e8a3d
3 changed files with 47 additions and 2 deletions

View File

@ -552,8 +552,8 @@ void BytecodeParser::ParseVersionInfo(const unsigned char *&Buf,
switch (RevisionNum) {
case 2: // LLVM pre-1.0 release: will be deleted on the next rev
// Version #2 added information about all 4 linkage types instead of just
// having internal and external.
// Version #2 only supported 4 linkage types. It didn't support weak
// linkage.
hasExtendedLinkageSpecs = false;
hasOldStyleVarargs = true;
hasVarArgCallPadding = true;
@ -561,8 +561,11 @@ void BytecodeParser::ParseVersionInfo(const unsigned char *&Buf,
case 0: // LLVM 1.0, 1.1 release version
// Compared to rev #2, we added support for weak linkage, a more dense
// encoding, and better varargs support.
// Base LLVM 1.0 bytecode format.
break;
case 1: // LLVM 1.2 release version
// LLVM 1.2 added explicit support for emitting strings efficiently.
break;
default: