[PATCH] D36675: [ARM][Compiler-rt] Fix AEABI builtins to correctly pass arguments to non-AEABI functions on HF targets

Anton Korobeynikov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 14 14:05:34 PDT 2017


asl added a comment.

In https://reviews.llvm.org/D36675#840918, @compnerd wrote:

> Um, when LLVM makes the invocation, it will assume that s0/s1 are not clobbered, even though it is a function call.  Shouldn't we be explicitly saving and restoring s0/s1 in the ARM HF cases?


Not quite. Here is the full list of callee-saved registers:

  def CSR_AAPCS : CalleeSavedRegs<(add LR, R11, R10, R9, R8, R7, R6, R5, R4,
                                       (sequence "D%u", 15, 8))>;

Everything else is callee clobbered and therefore should be saved by a caller.


Repository:
  rL LLVM

https://reviews.llvm.org/D36675





More information about the llvm-commits mailing list