in Sources/SIL/BitcodeParser.swift [64:84]
func read(desc: OperandKind) throws -> BitcodeOperand {
switch (desc) {
case let .literal(v):
return .bits(v)
case let .fixed(w):
return try .bits(read(fixed: w))
case let .vbr(w):
return try .bits(read(vbr: w))
case let .array(elDesc):
let length = try read(vbr: 6).int
return try .array((0..<length).map { _ in try read(desc: elDesc) })
case .char6:
fatalError("Char6 not supported")
case .blob:
let length = try read(vbr: 6).int
stream.align(toMultipleOf: 32)
let result = try stream.next(bytes: length)
stream.align(toMultipleOf: 32)
return .blob(result)
}
}