Author: Daniel Kiss Date: 2021-10-01T16:51:51+02:00 New Revision: 532783f9e1e65c7bd48b1592d2376e9dd47c5a73
URL: https://github.com/llvm/llvm-project/commit/532783f9e1e65c7bd48b1592d2376e9dd47c5a73 DIFF: https://github.com/llvm/llvm-project/commit/532783f9e1e65c7bd48b1592d2376e9dd47c5a73.diff LOG: [libunwind] Fix cfi_register for float registers. Fixes D110144. registers.getFloatRegister is not const in ARM therefor can't be called here. Reviewed By: mstorsjo, #libunwind Differential Revision: https://reviews.llvm.org/D110731 Added: Modified: libunwind/src/DwarfInstructions.hpp Removed: ################################################################################ diff --git a/libunwind/src/DwarfInstructions.hpp b/libunwind/src/DwarfInstructions.hpp index 53baf6a148f33..b58c51bb7a604 100644 --- a/libunwind/src/DwarfInstructions.hpp +++ b/libunwind/src/DwarfInstructions.hpp @@ -115,10 +115,12 @@ double DwarfInstructions<A, R>::getSavedFloatRegister( return addressSpace.getDouble( evaluateExpression((pint_t)savedReg.value, addressSpace, registers, cfa)); - case CFI_Parser<A>::kRegisterInRegister: - return registers.getFloatRegister((int)savedReg.value); case CFI_Parser<A>::kRegisterUndefined: return 0.0; + case CFI_Parser<A>::kRegisterInRegister: +#ifndef _LIBUNWIND_TARGET_ARM + return registers.getFloatRegister((int)savedReg.value); +#endif case CFI_Parser<A>::kRegisterIsExpression: case CFI_Parser<A>::kRegisterUnused: case CFI_Parser<A>::kRegisterOffsetFromCFA: _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits