aboutsummaryrefslogtreecommitdiff
path: root/gcc/frame.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>2000-08-08 02:08:55 -0700
committerRichard Henderson <rth@gcc.gnu.org>2000-08-08 02:08:55 -0700
commitdb2e2f480c906879dad6930e4fe0784a52814426 (patch)
treea56e49b5ea637aa6a95652c40bb2747a9110ca5d /gcc/frame.h
parent2a3e384f15e6f10fc62b27c6671d899b083fed97 (diff)
downloadgcc-db2e2f480c906879dad6930e4fe0784a52814426.zip
gcc-db2e2f480c906879dad6930e4fe0784a52814426.tar.gz
gcc-db2e2f480c906879dad6930e4fe0784a52814426.tar.bz2
frame.h (ia64_frame_state): Add my_psp.
* frame.h (ia64_frame_state): Add my_psp. * libgcc2.c (ia64_throw_helper): Add throw_sp argument. (__throw): Pass it in. Don't clobber r7. * config/ia64/frame-ia64.c (init_ia64_reg_loc): Mark inline. (execute_one_ia64_descriptor) [mem_stack_v]: Sets psp.when and nothing to do with sp. (normalize_reg_loc): Use frame->my_psp. (frame_translate): Handle frame-pointer-less functions. Set spill_base correctly, in absence of being told. (__build_ia64_frame_state): New sp argument. Fill in frame->my_sp. (__ia64_backtrace_helper): New sp argument. Use builtin_return_address instead of label addresses. (print_record) [mem_stack_v]: No size member. From-SVN: r35565
Diffstat (limited to 'gcc/frame.h')
-rw-r--r--gcc/frame.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/frame.h b/gcc/frame.h
index dc44561..472d358 100644
--- a/gcc/frame.h
+++ b/gcc/frame.h
@@ -248,6 +248,7 @@ typedef struct ia64_frame_state
ia64_reg_loc sp;
ia64_reg_loc psp;
ia64_reg_loc spill_base;
+ void *my_psp;
void *my_sp;
void *my_bsp;
} ia64_frame_state;
@@ -267,7 +268,8 @@ typedef struct unwind_info_ptr
#define IA64_UNW_HDR_VERSION(x) (((x) >> 48) & 0xffffUL)
extern unwind_info_ptr *__build_ia64_frame_state (unsigned char *,
- ia64_frame_state *, void *,
+ ia64_frame_state *,
+ void *, void *,
void **);
extern void *__get_real_reg_value (ia64_reg_loc *);
extern void *__get_personality (unwind_info_ptr *);