The write buffer contains signed chars, which means the shift operations caused values such as the arc tag value (0x01a10000) to be read incorrectly (0xffa10000).
This fixes a regression from https://reviews.llvm.org/D49132.
Differential D49161
Fix reading 32 bit gcov tag values on little-endian machines marco-c on Jul 10 2018, 4:34 PM. Authored by
Details The write buffer contains signed chars, which means the shift operations caused values such as the arc tag value (0x01a10000) to be read incorrectly (0xffa10000). This fixes a regression from https://reviews.llvm.org/D49132.
Diff Detail Event TimelineComment Actions Ah, I missed that, probably because on SystemZ char is unsigned by default ... Sorry about that. The patch LGTM. |