Tue Sep 17 16:38:58 2002 Andrew Cagney * blockframe.c (generic_find_dummy_frame): Only compare against the dummy frame top when that was saved. Index: blockframe.c =================================================================== RCS file: /cvs/src/src/gdb/blockframe.c,v retrieving revision 1.40 diff -u -r1.40 blockframe.c --- blockframe.c 17 Sep 2002 20:42:01 -0000 1.40 +++ blockframe.c 17 Sep 2002 23:35:15 -0000 @@ -1164,9 +1164,9 @@ for (dummyframe = dummy_frame_stack; dummyframe != NULL; dummyframe = dummyframe->next) if ((pc >= dummyframe->call_lo && pc < dummyframe->call_hi) - && (fp == dummyframe->fp - || fp == dummyframe->sp - || fp == dummyframe->top)) + && ((SAVE_DUMMY_FRAME_TOS_P () && fp == dummyframe->top) + || (!SAVE_DUMMY_FRAME_TOS_P () && (fp == dummyframe->fp + || fp == dummyframe->sp)))) /* The frame in question lies between the saved fp and sp, inclusive */ return dummyframe->regcache;