]> granicus.if.org Git - clang/commitdiff
Remove reliance on toCharUnitsFromBits rounding down.
authorRichard Smith <richard-llvm@metafoo.co.uk>
Sat, 22 Jun 2019 20:41:57 +0000 (20:41 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Sat, 22 Jun 2019 20:41:57 +0000 (20:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@364139 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGExprConstant.cpp

index 16ccd052255cd38329aec42f1765ea3647cc6a29..4a0494295d2a8b8419d75014e04b707559e30680 100644 (file)
@@ -187,7 +187,8 @@ bool ConstantAggregateBuilder::addBits(llvm::APInt Bits, uint64_t OffsetInBits,
 
   // We split bit-fields up into individual bytes. Walk over the bytes and
   // update them.
-  for (CharUnits OffsetInChars = Context.toCharUnitsFromBits(OffsetInBits);
+  for (CharUnits OffsetInChars =
+           Context.toCharUnitsFromBits(OffsetInBits - OffsetWithinChar);
        /**/; ++OffsetInChars) {
     // Number of bits we want to fill in this char.
     unsigned WantedBits =