[BOLT][NFCI] Fix return type of BC::getSignedValueAtAddress (#91664)
This commit is contained in:
@@ -1224,8 +1224,7 @@ public:
|
||||
|
||||
/// Return a signed value of \p Size stored at \p Address. The address has
|
||||
/// to be a valid statically allocated address for the binary.
|
||||
ErrorOr<uint64_t> getSignedValueAtAddress(uint64_t Address,
|
||||
size_t Size) const;
|
||||
ErrorOr<int64_t> getSignedValueAtAddress(uint64_t Address, size_t Size) const;
|
||||
|
||||
/// Special case of getUnsignedValueAtAddress() that uses a pointer size.
|
||||
ErrorOr<uint64_t> getPointerAtAddress(uint64_t Address) const {
|
||||
|
||||
@@ -2217,8 +2217,8 @@ ErrorOr<uint64_t> BinaryContext::getUnsignedValueAtAddress(uint64_t Address,
|
||||
return DE.getUnsigned(&ValueOffset, Size);
|
||||
}
|
||||
|
||||
ErrorOr<uint64_t> BinaryContext::getSignedValueAtAddress(uint64_t Address,
|
||||
size_t Size) const {
|
||||
ErrorOr<int64_t> BinaryContext::getSignedValueAtAddress(uint64_t Address,
|
||||
size_t Size) const {
|
||||
const ErrorOr<const BinarySection &> Section = getSectionForAddress(Address);
|
||||
if (!Section)
|
||||
return std::make_error_code(std::errc::bad_address);
|
||||
|
||||
@@ -393,7 +393,7 @@ void LinuxKernelRewriter::processLKKSymtab(bool IsGPL) {
|
||||
|
||||
for (uint64_t I = 0; I < SectionSize; I += 4) {
|
||||
const uint64_t EntryAddress = SectionAddress + I;
|
||||
ErrorOr<uint64_t> Offset = BC.getSignedValueAtAddress(EntryAddress, 4);
|
||||
ErrorOr<int64_t> Offset = BC.getSignedValueAtAddress(EntryAddress, 4);
|
||||
assert(Offset && "Reading valid PC-relative offset for a ksymtab entry");
|
||||
const int32_t SignedOffset = *Offset;
|
||||
const uint64_t RefAddress = EntryAddress + SignedOffset;
|
||||
|
||||
Reference in New Issue
Block a user