musl/arch/mips
Rich Felker 9f26ebded1 fix stack alignment code in mips crt_arch.h
the instruction used to align the stack, "and $sp, $sp, -8", does not
actually exist; it's expanded to 2 instructions using the 'at'
(assembler temporary) register, and thus cannot be used in a branch
delay slot. since alignment mod 16 commutes with subtracting 8, simply
swapping these two operations fixes the problem.

crt1.o was not affected because it's still being generated from a
dedicated asm source file. dlstart.lo was not affected because the
stack pointer it receives is already aligned by the kernel. but
Scrt1.o was affected in cases where the dynamic linker gave it a
misaligned stack pointer.
2015-05-24 23:03:47 -04:00
..
bits move O_PATH definition back to arch bits 2015-04-01 19:31:06 -04:00
atomic.h add explicit barrier operation to internal atomic.h API 2014-10-10 18:17:09 -04:00
crt_arch.h fix stack alignment code in mips crt_arch.h 2015-05-24 23:03:47 -04:00
ksigaction.h add some comments about the mips ksigaction structure weirdness 2013-06-29 12:24:06 -04:00
pthread_arch.h add support for TLS variant I, presently needed for arm and mips 2012-10-15 18:51:53 -04:00
reloc.h dynamic linker bootstrap overhaul 2015-04-13 03:04:42 -04:00
syscall_arch.h fix __syscall declaration with wrong visibility in syscall_arch.h 2015-04-30 16:22:57 -04:00