Hi, On 2021/06/30 16:39, Nick Hudson wrote:
On 30/06/2021 07:22, Nick Hudson wrote:Great work! On 29/06/2021 08:13, Rin Okuyama wrote:I've examined assembler codes for userland libraries for arm: common/lib/libc, csu, libc, compiler_rt, and libm, and found that some routines in compiler_rt do not align sp correctly: http://www.netbsd.org/~rin/arm_stack_align_compiler_rt.patch Also, some routines in libc do not also in Thumb-mode userland: http://www.netbsd.org/~rin/arm_stack_align_libc_thumb.patchI think it's better / less ugly to push even numbers of registers rather than adjusting sp (especially for thumb)How about this diff? (untested) I've dropped callee saved registers from the compiler_rt code as (I think) they're unused.
Thank you very much for the patch. Much cleaner than before! As you pointed out, r7 is unused for compiler_rt codes at the moment. The reason why I hesitated to drop r7 is: the codes will be strangely broken when the upstream changes their mind to use r7 again. But your version seems much nicer. I will submit the patch to the upstream immediately after you commit it to our tree. I will carry out ATF with your patch for some architectures. Thanks, rin