Philipp Tomsich b4806d6f1f arm: provide a PCS-compliant setjmp implementation
The previous setjmp-implementation (as a static inline function that
contained an 'asm volatile' sequence) was extremely fragile: (some
versions of) GCC optimised the set of registers.  One critical example
was the removal of 'r9' from the clobber list, if -ffixed-reg9 was
supplied.

To increase robustness and ensure PCS-compliant behaviour, the setjmp
and longjmp implementation are now in assembly and closely match what
one would expect to find in a libc implementation.

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Andy Yan <andy.yan@rock-chips.com>
2017-11-21 23:57:22 +01:00
..
2017-08-16 08:30:24 -04:00
2017-11-17 07:44:13 -05:00
2016-11-14 23:24:04 +01:00
2014-10-26 22:23:40 +01:00
2016-11-14 23:24:04 +01:00
2015-10-15 14:47:03 +02:00
2016-11-14 23:24:04 +01:00
2017-10-09 08:48:45 -07:00
2016-07-22 09:53:00 -04:00