https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61223
Bug ID: 61223 Summary: libstdc++ build fail due to pop lr register Product: gcc Version: unknown Status: UNCONFIRMED Severity: blocker Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: terry.guo at arm dot com 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.merzlya...@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