Chromium Code Reviews| Index: lib/Bitcode/NaCl/Writer/NaClBitcodeWriter.cpp |
| diff --git a/lib/Bitcode/NaCl/Writer/NaClBitcodeWriter.cpp b/lib/Bitcode/NaCl/Writer/NaClBitcodeWriter.cpp |
| index fd9de4fa0e181fc732d5a8b2040abe1de9778cee..432e420ce584e5997f595fa373cbb17e82c288ef 100644 |
| --- a/lib/Bitcode/NaCl/Writer/NaClBitcodeWriter.cpp |
| +++ b/lib/Bitcode/NaCl/Writer/NaClBitcodeWriter.cpp |
| @@ -40,6 +40,11 @@ PNaClVersion("pnacl-version", |
| cl::desc("Specify PNaCl bitcode version to write"), |
| cl::init(2)); |
| +static cl::opt<bool> |
| +AlignBitcodeRecords("align-bitcode-records", |
| + cl::desc("Align bitcode records in PNaCl bitcode files (experimental)"), |
| + cl::init(false)); |
| + |
| /// These are manifest constants used by the bitcode writer. They do |
| /// not need to be kept in sync with the reader, but need to be |
| /// consistent within this file. |
| @@ -1174,6 +1179,9 @@ void llvm::NaClWriteHeader(NaClBitstreamWriter &Stream, |
| Header.push_back( |
| new NaClBitcodeHeaderField(NaClBitcodeHeaderField::kPNaClVersion, |
| PNaClVersion)); |
| + if (AlignBitcodeRecords) |
| + Header.push_back(new NaClBitcodeHeaderField(NaClBitcodeHeaderField::kAlignBitcodeRecords)); |
|
jvoung (off chromium)
2015/05/07 18:11:17
80 col
Karl
2015/05/07 22:18:55
Done.
|
| + |
| Header.InstallFields(); |
| if (!(Header.IsSupported() || |
| (!AcceptSupportedOnly && Header.IsReadable()))) { |
| @@ -1185,6 +1193,8 @@ void llvm::NaClWriteHeader(NaClBitstreamWriter &Stream, |
| // Write out the given Header to the bitstream. |
| void llvm::NaClWriteHeader(const NaClBitcodeHeader &Header, |
| NaClBitstreamWriter &Stream) { |
| + Stream.initFromHeader(Header); |
| + |
| // Emit the file magic number; |
| Stream.Emit((unsigned)'P', 8); |
| Stream.Emit((unsigned)'E', 8); |