Change `BitTableBase<>::num_rows_` to `uint32_t`.
For 64-bit targets, changing the member from `size_t` to
`uint32_t` reduces `sizeof(CodeInfo)` from 376 to 336 and
keeps the `Thread::CreateInternalStackTrace()` from reaching
the `-Wframe-larger-than=` limit enforced with `-Werror`.
Test: m
Change-Id: Ic42192355d224ca6afc3927506606a00ee084e19
diff --git a/libartbase/base/bit_table.h b/libartbase/base/bit_table.h
index 0993648..07e6b27 100644
--- a/libartbase/base/bit_table.h
+++ b/libartbase/base/bit_table.h
@@ -77,11 +77,11 @@
return table_data_.Subregion(offset, NumColumnBits(column));
}
- size_t NumRows() const { return num_rows_; }
+ uint32_t NumRows() const { return num_rows_; }
uint32_t NumRowBits() const { return column_offset_[kNumColumns]; }
- constexpr size_t NumColumns() const { return kNumColumns; }
+ constexpr uint32_t NumColumns() const { return kNumColumns; }
uint32_t NumColumnBits(uint32_t column) const {
return column_offset_[column + 1] - column_offset_[column];
@@ -97,7 +97,7 @@
protected:
BitMemoryRegion table_data_;
- size_t num_rows_ = 0;
+ uint32_t num_rows_ = 0;
uint16_t column_offset_[kNumColumns + 1] = {};
};