From 8d1433c6fca9b8f2d1429a0abcf4bfba1b3423ee Mon Sep 17 00:00:00 2001 From: Dale Johannesen Date: Wed, 20 Feb 2008 21:15:19 +0000 Subject: [PATCH] Support alignment within ParamAttrs in the I/O handling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47401 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/AsmParser/llvmAsmParser.y | 1 + lib/Bitcode/Writer/BitcodeWriter.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index effe097258e..b2667a34e98 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -1233,6 +1233,7 @@ ParamAttr : ZEROEXT { $$ = ParamAttr::ZExt; } | NOALIAS { $$ = ParamAttr::NoAlias; } | BYVAL { $$ = ParamAttr::ByVal; } | NEST { $$ = ParamAttr::Nest; } + | ALIGN EUINT64VAL { $$ = $2 << 16; } ; OptParamAttrs : /* empty */ { $$ = ParamAttr::None; } diff --git a/lib/Bitcode/Writer/BitcodeWriter.cpp b/lib/Bitcode/Writer/BitcodeWriter.cpp index 3f7cfcc2095..fe013e81569 100644 --- a/lib/Bitcode/Writer/BitcodeWriter.cpp +++ b/lib/Bitcode/Writer/BitcodeWriter.cpp @@ -119,7 +119,7 @@ static void WriteParamAttrTable(const ValueEnumerator &VE, const ParamAttrsList *A = Attrs[i]; for (unsigned op = 0, e = A->size(); op != e; ++op) { Record.push_back(A->getParamIndex(op)); - Record.push_back((uint16_t)A->getParamAttrsAtIndex(op)); + Record.push_back(A->getParamAttrsAtIndex(op)); } Stream.EmitRecord(bitc::PARAMATTR_CODE_ENTRY, Record);