[PATCH] D22464: [libunwind][ARM] Fix VFP build attribute for context save/restore code

Oliver Stannard via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 18 07:54:05 PDT 2016


olista01 created this revision.
olista01 added a reviewer: weimingz.
olista01 added a subscriber: llvm-commits.
Herald added subscribers: rengolin, aemerson.

These files use VSTM and VLDM instructions to save and restore the
floating-point registers, so the assembler emits the Tag_FP_arch build
attribute, so the resulting object can not be linked for a CPU which
does not have a floating-point unit. This would actually be safe,
because these functions will only be called if the FP registers are
listed in the unwind tables, which can only happen if some other
floating-point code is linked in.

Instead, we need to directly use the encodings of the instructions with
the .inst (or .inst.w) directive.

https://reviews.llvm.org/D22464

Files:
  src/UnwindRegistersRestore.S
  src/UnwindRegistersSave.S

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22464.64319.patch
Type: text/x-patch
Size: 4490 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160718/ac3fba7b/attachment.bin>


More information about the llvm-commits mailing list