xtensa: reimplement register spilling
authorMax Filippov <jcmvbkbc@gmail.com>
Tue, 18 Aug 2015 01:05:44 +0000 (01:05 +0000)
committerMax Filippov <jcmvbkbc@gcc.gnu.org>
Tue, 18 Aug 2015 01:05:44 +0000 (01:05 +0000)
commitb6ac5f6231ea0730ff3d4e6e713f4cb6ac313ff8
tree845563e546aa52686bd12c1ff095df50de0a9c06
parent3b6e0401222d00e4dbeca4388d9d39ebae6a51f4
xtensa: reimplement register spilling

Spilling windowed registers in userspace is much easier, more portable,
less error-prone and equally effective as in kernel. Now that register
spilling syscall is considered obsolete in the xtensa linux kernel
replace it with CALL12 followed by series of ENTRY in libgcc.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use
CALL12 followed by series of ENTRY to spill windowed registers.
(__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill
instead of making linux spill syscall.

From-SVN: r226962
libgcc/ChangeLog
libgcc/config/xtensa/lib2funcs.S