diff options
author | Petr Pavlu <petr.pavlu@arm.com> | 2017-10-11 08:48:18 +0000 |
---|---|---|
committer | Petr Pavlu <petr.pavlu@arm.com> | 2017-10-11 08:48:18 +0000 |
commit | dbd7c338a01d51bb83ecc14edbe566cc868e8c2c (patch) | |
tree | 61a13155f11fe10090fee959dc0ba1db1a049a68 /llvm/lib/Target/AArch64 | |
parent | 782f28bf2fe97dafc2b2764b30ea4566554a1d51 (diff) | |
download | bcm5719-llvm-dbd7c338a01d51bb83ecc14edbe566cc868e8c2c.tar.gz bcm5719-llvm-dbd7c338a01d51bb83ecc14edbe566cc868e8c2c.zip |
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
Diffstat (limited to 'llvm/lib/Target/AArch64')
0 files changed, 0 insertions, 0 deletions