aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiuliano Procida <gprocida@google.com>2022-11-21 16:38:59 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-11-21 16:38:59 +0000
commit8133f2cc6d0dfb7f3fa2b5480725fd98ecf6594e (patch)
treebb1ef4691ebf637640c11534936f7c5ae9ec1e2d
parent952e6c1b463c497a61b743c0f5a95d68d07da4c0 (diff)
parent5810e65154ed982985d91c5e993db07047645312 (diff)
downloadlibabigail-8133f2cc6d0dfb7f3fa2b5480725fd98ecf6594e.tar.gz
Narrow Linux symbol CRCs to 32 bits am: 9fc8ac965a am: 10bad540b8 am: 5810e65154
Original change: https://android-review.googlesource.com/c/platform/external/libabigail/+/2300220 Change-Id: I9e0262d07a45daaf0b0213cada9b7a5d7514ef97 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--include/abg-ir.h8
-rw-r--r--src/abg-ir.cc12
-rw-r--r--src/abg-reporter-priv.cc4
-rw-r--r--src/abg-symtab-reader.cc2
4 files changed, 13 insertions, 13 deletions
diff --git a/include/abg-ir.h b/include/abg-ir.h
index 7c558828..8d1d2922 100644
--- a/include/abg-ir.h
+++ b/include/abg-ir.h
@@ -921,7 +921,7 @@ private:
const version& ve,
visibility vi,
bool is_in_ksymtab = false,
- const abg_compat::optional<uint64_t>& crc = {},
+ const abg_compat::optional<uint32_t>& crc = {},
const abg_compat::optional<std::string>& ns = {},
bool is_suppressed = false);
@@ -947,7 +947,7 @@ public:
const version& ve,
visibility vi,
bool is_in_ksymtab = false,
- const abg_compat::optional<uint64_t>& crc = {},
+ const abg_compat::optional<uint32_t>& crc = {},
const abg_compat::optional<std::string>& ns = {},
bool is_suppressed = false);
@@ -1020,11 +1020,11 @@ public:
void
set_is_in_ksymtab(bool is_in_ksymtab);
- const abg_compat::optional<uint64_t>&
+ const abg_compat::optional<uint32_t>&
get_crc() const;
void
- set_crc(const abg_compat::optional<uint64_t>& crc);
+ set_crc(const abg_compat::optional<uint32_t>& crc);
const abg_compat::optional<std::string>&
get_namespace() const;
diff --git a/src/abg-ir.cc b/src/abg-ir.cc
index 99c66b49..3f76d9c3 100644
--- a/src/abg-ir.cc
+++ b/src/abg-ir.cc
@@ -1729,7 +1729,7 @@ struct elf_symbol::priv
// STT_COMMON definition of that name that has the largest size.
bool is_common_;
bool is_in_ksymtab_;
- abg_compat::optional<uint64_t> crc_;
+ abg_compat::optional<uint32_t> crc_;
abg_compat::optional<std::string> namespace_;
bool is_suppressed_;
elf_symbol_wptr main_symbol_;
@@ -1763,7 +1763,7 @@ struct elf_symbol::priv
const elf_symbol::version& ve,
elf_symbol::visibility vi,
bool is_in_ksymtab,
- const abg_compat::optional<uint64_t>& crc,
+ const abg_compat::optional<uint32_t>& crc,
const abg_compat::optional<std::string>& ns,
bool is_suppressed)
: env_(e),
@@ -1837,7 +1837,7 @@ elf_symbol::elf_symbol(const environment* e,
const version& ve,
visibility vi,
bool is_in_ksymtab,
- const abg_compat::optional<uint64_t>& crc,
+ const abg_compat::optional<uint32_t>& crc,
const abg_compat::optional<std::string>& ns,
bool is_suppressed)
: priv_(new priv(e,
@@ -1912,7 +1912,7 @@ elf_symbol::create(const environment* e,
const version& ve,
visibility vi,
bool is_in_ksymtab,
- const abg_compat::optional<uint64_t>& crc,
+ const abg_compat::optional<uint32_t>& crc,
const abg_compat::optional<std::string>& ns,
bool is_suppressed)
{
@@ -2149,7 +2149,7 @@ elf_symbol::set_is_in_ksymtab(bool is_in_ksymtab)
/// Getter of the 'crc' property.
///
/// @return the CRC (modversions) value for Linux Kernel symbols, if any
-const abg_compat::optional<uint64_t>&
+const abg_compat::optional<uint32_t>&
elf_symbol::get_crc() const
{return priv_->crc_;}
@@ -2157,7 +2157,7 @@ elf_symbol::get_crc() const
///
/// @param crc the new CRC (modversions) value for Linux Kernel symbols
void
-elf_symbol::set_crc(const abg_compat::optional<uint64_t>& crc)
+elf_symbol::set_crc(const abg_compat::optional<uint32_t>& crc)
{priv_->crc_ = crc;}
/// Getter of the 'namespace' property.
diff --git a/src/abg-reporter-priv.cc b/src/abg-reporter-priv.cc
index fcfc9dce..e2d4e1ae 100644
--- a/src/abg-reporter-priv.cc
+++ b/src/abg-reporter-priv.cc
@@ -1149,8 +1149,8 @@ maybe_report_diff_for_symbol(const elf_symbol_sptr& symbol1,
<< "\n";
}
- const abg_compat::optional<uint64_t>& crc1 = symbol1->get_crc();
- const abg_compat::optional<uint64_t>& crc2 = symbol2->get_crc();
+ const abg_compat::optional<uint32_t>& crc1 = symbol1->get_crc();
+ const abg_compat::optional<uint32_t>& crc2 = symbol2->get_crc();
if (crc1 != crc2)
{
const std::string none = "(none)";
diff --git a/src/abg-symtab-reader.cc b/src/abg-symtab-reader.cc
index e20ee2a7..60ed4a42 100644
--- a/src/abg-symtab-reader.cc
+++ b/src/abg-symtab-reader.cc
@@ -265,7 +265,7 @@ symtab::load_(Elf* elf_handle,
const bool is_kernel = elf_helpers::is_linux_kernel(elf_handle);
std::unordered_set<std::string> exported_kernel_symbols;
- std::unordered_map<std::string, uint64_t> crc_values;
+ std::unordered_map<std::string, uint32_t> crc_values;
std::unordered_map<std::string, std::string> namespaces;
for (size_t i = 0; i < number_syms; ++i)