code that does the save/restore is generated by the linker, so
we have no good way to determine at compile time what to do. */
+#define R_LR 65
+
#ifdef __64BIT__
#define MD_FROB_UPDATE_CONTEXT(CTX, FS) \
do { \
{ \
unsigned int *insn \
= (unsigned int *) \
- _Unwind_GetGR ((CTX), LINK_REGISTER_REGNUM); \
+ _Unwind_GetGR ((CTX), R_LR); \
if (*insn == 0xE8410028) \
_Unwind_SetGRPtr ((CTX), 2, (CTX)->cfa + 40); \
} \
{ \
unsigned int *insn \
= (unsigned int *) \
- _Unwind_GetGR ((CTX), LINK_REGISTER_REGNUM); \
+ _Unwind_GetGR ((CTX), R_LR); \
if (*insn == 0x80410014) \
_Unwind_SetGRPtr ((CTX), 2, (CTX)->cfa + 20); \
} \