When build file gcc/libstdc++-v3/libsupc++/eh_arm.cc for Thumb-1 target, run into below error: /tmp/ccJ7atpP.s: Assembler messages: /tmp/ccJ7atpP.s:26: Error: invalid register list to push/pop instruction -- `pop {r1,r2,r3,lr}' According to ARM arch manual, only PC and low registers are allowed in POP instruction. This failure happens with commit: commit 13795f627c41a40f028d98e75f19774bc3a795b1 Author: merzlyakovao <merzlyakovao@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri May 16 13:16:33 2014 +0000 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> PR libstdc++/60758 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore and add unwind directives. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210515 138bc75d-0d04-0410-961f-82ee72b054a4
This is a target-specific bug, please set the Target field appropriately.
Author: ygribov Date: Tue May 20 17:25:26 2014 New Revision: 210650 URL: http://gcc.gnu.org/viewcvs?rev=210650&root=gcc&view=rev Log: 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> PR libstdc++/61223 Revert: 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> PR libstdc++/60758 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore and add unwind directives. Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/libsupc++/eh_arm.cc
Fixed.