diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/utils/TableGen/FixedLenDecoderEmitter.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp b/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp index 8091003..b87634b 100644 --- a/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp +++ b/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp @@ -1295,6 +1295,11 @@ static bool populateInstruction(const CodeGenInstruction &CGI, Base = bi; Width = 1; Offset = BI->getBitNum(); + } else if (BI->getBitNum() != Offset + Width) { + OpInfo.addField(Base, Width, Offset); + Base = bi; + Width = 1; + Offset = BI->getBitNum(); } else { ++Width; } |
