diff options
| author | Alexandre Ganea <alexandre.ganea@ubisoft.com> | 2020-03-13 12:22:09 -0400 |
|---|---|---|
| committer | Tom Stellard <tstellar@redhat.com> | 2020-04-16 12:05:11 -0700 |
| commit | 6196695ec5819c0df7efe3fecca5c4ef9ea80b1c (patch) | |
| tree | e1d5605bb16ca9b7ef3886e07ee1dbf80f7d0869 /llvm/lib/Target/PowerPC | |
| parent | cc6e51a1414989ff1c2dcab30c00ac10ea19afa1 (diff) | |
| download | bcm5719-llvm-6196695ec5819c0df7efe3fecca5c4ef9ea80b1c.tar.gz bcm5719-llvm-6196695ec5819c0df7efe3fecca5c4ef9ea80b1c.zip | |
[CodeView] Align type records on 4-bytes when emitting PDBs
When emitting PDBs, the TypeStreamMerger class is used to merge .debug$T records from the input .OBJ files into the output .PDB stream.
Records in .OBJs are not required to be aligned on 4-bytes, and "The Netwide Assembler 2.14" generates non-aligned records.
When compiling with -DLLVM_ENABLE_ASSERTIONS=ON, an assert was triggered in MergingTypeTableBuilder when non-ghash merging was used.
With ghash merging there was no assert.
As a result, LLD could potentially generate a non-aligned TPI stream.
We now align records on 4-bytes when record indices are remapped, in TypeStreamMerger::remapIndices().
Differential Revision: https://reviews.llvm.org/D75081
(cherry picked from commit a7325298e1f311b383b8ce5ba8e2d3698fef472a)
Diffstat (limited to 'llvm/lib/Target/PowerPC')
0 files changed, 0 insertions, 0 deletions

