cc: Fix some alignment issues in PaintOpWriter

Debug builds of Android were crashing because of misaligned read/writes
of float variables in PaintOpWriter::WriteSimple and the accompanying
reader.

Fix this by rounding up all WriteSimples to align the size they write
to 4 bytes.  This is just a spot fix, but fixes most of the alignment
issues on a few checked pages.  If we wanted to move to DCHECKing
the alignment, this would probably need more work.

This continues to avoid calling AlignMemory in Write/ReadSimple, as that
appears to cause about 30% slowdown in serializing/deserializing speed
in the cc_perftests --gtest_filter=PaintOp* tests.

Bug: 905665
Change-Id: Ib6db27d7cafe22b40b96f841dc2df54c1b6a4f1c
Reviewed-on: https://chromium-review.googlesource.com/c/1343565
Commit-Queue: enne <enne@chromium.org>
Reviewed-by: Khushal <khushalsagar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#609968}
2 files changed