Author: Jessica Clarke Date: 2025-08-05T10:56:10+02:00 New Revision: f5ad8dc6876ab667d07fe6c3bd2ac2bad434f6fb
URL: https://github.com/llvm/llvm-project/commit/f5ad8dc6876ab667d07fe6c3bd2ac2bad434f6fb DIFF: https://github.com/llvm/llvm-project/commit/f5ad8dc6876ab667d07fe6c3bd2ac2bad434f6fb.diff LOG: [ELF][Hexagon] Fix host endianness assumption Fixes: b42f96bc057f ("[lld] Add thunks for hexagon (#111217)") (cherry picked from commit 723b40a8d92f76fc913ef21061fc3d74e8c47441) Added: Modified: lld/ELF/Relocations.cpp Removed: ################################################################################ diff --git a/lld/ELF/Relocations.cpp b/lld/ELF/Relocations.cpp index 9549cc6f56326..608cdd0d26660 100644 --- a/lld/ELF/Relocations.cpp +++ b/lld/ELF/Relocations.cpp @@ -2153,9 +2153,8 @@ static int getHexagonPacketOffset(const InputSection &isec, for (unsigned i = 0;; i++) { if (i == 3 || rel.offset < (i + 1) * 4) return i * 4; - uint32_t instWord = 0; - memcpy(&instWord, data.data() + (rel.offset - (i + 1) * 4), - sizeof(instWord)); + uint32_t instWord = + read32(isec.getCtx(), data.data() + (rel.offset - (i + 1) * 4)); if (((instWord & HEXAGON_MASK_END_PACKET) == HEXAGON_END_OF_PACKET) || ((instWord & HEXAGON_MASK_END_PACKET) == HEXAGON_END_OF_DUPLEX)) return i * 4; _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits