Fix invalid opcode encoding in BitWriter_2_9.

Bug: 23445219

We were mistakenly just using an invalid Code for structures, and
relying on the abbreviated opcode to do the right thing (which it does,
thankfully). This fixes one assertion that actually checks that the
Opcode and the abbreviated opcode match in value.

llvm-rs-cc: frameworks/compile/slang/BitWriter_2_9/../../../../external/llvm/include/llvm/Bitcode/BitstreamWriter.h:264: void llvm::BitstreamWriter::EmitAbbreviatedLiteral(const llvm::BitCodeAbbrevOp &, uintty) [uintty = unsigned long]: Assertion `V == Op.getLiteralValue() && "Invalid abbrev for record!"' failed.

Change-Id: Ic80dd55553d6a7802a6d2da137579c73f261ae67
diff --git a/BitWriter_2_9/BitcodeWriter.cpp b/BitWriter_2_9/BitcodeWriter.cpp
index c1b4ca8..e63959e 100644
--- a/BitWriter_2_9/BitcodeWriter.cpp
+++ b/BitWriter_2_9/BitcodeWriter.cpp
@@ -308,6 +308,7 @@
       for (StructType::element_iterator I = ST->element_begin(),
            E = ST->element_end(); I != E; ++I)
         TypeVals.push_back(VE.getTypeID(*I));
+      Code = TYPE_CODE_STRUCT_OLD_3_0;
       AbbrevToUse = StructAbbrev;
       break;
     }