HomePhabricator

Fix dumping of characters with non-standard sizes

Authored by petpav01 on Oct 11 2017, 1:48 AM.

Description

Fix dumping of characters with non-standard sizes

  • Prevent dumping of characters in DumpDataExtractor() with item_byte_size bigger than 8 bytes. This case is not supported by the code and results in a crash because the code calls DataExtractor::GetMaxU64Bitfield() -> GetMaxU64() that asserts for byte size > 8 bytes.
  • Teach DataExtractor::GetMaxU64(), GetMaxU32(), GetMaxS64() and GetMaxU64_unchecked() how to handle byte sizes that are not a multiple of 2. This allows DumpDataExtractor() to dump characters and booleans with item_byte_size in the interval of [1, 8] bytes. Values that are not a multiple of 2 would previously result in a crash because they were not handled by GetMaxU64().

llvm-svn: 315444

Details

Committed
petpav01Oct 11 2017, 1:48 AM
Parents
rG782f28bf2fe9: [X86] Added tests for TESTM and TESTNM (NFC)
Branches
Unknown
Tags
Unknown