From owner-p4-projects Sun May 5 13:55:26 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADAD337B400; Sun, 5 May 2002 13:55:12 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 1175237B41F for ; Sun, 5 May 2002 13:55:10 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g45Kt9S01170 for perforce@freebsd.org; Sun, 5 May 2002 13:55:09 -0700 (PDT) (envelope-from marcel@freebsd.org) Date: Sun, 5 May 2002 13:55:09 -0700 (PDT) Message-Id: <200205052055.g45Kt9S01170@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar Subject: PERFORCE change 10841 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=10841 Change 10841 by marcel@marcel_vaio on 2002/05/05 13:54:28 Prune the branch: We don't need a dummy __cxa_finalize anymore. We now handle weak references to undefined symbols correctly. Affected files ... ... //depot/projects/ia64/lib/libc/ia64/gen/Makefile.inc#8 edit ... //depot/projects/ia64/lib/libc/ia64/gen/cxa.c#4 delete ... //depot/projects/ia64/sys/ia64/ia64/exception.s#13 edit ... //depot/projects/ia64/sys/ia64/ia64/genassym.c#6 edit ... //depot/projects/ia64/sys/ia64/ia64/machdep.c#36 edit ... //depot/projects/ia64/sys/ia64/include/frame.h#3 edit ... //depot/projects/ia64/sys/ia64/include/reg.h#3 edit Differences ... ==== //depot/projects/ia64/lib/libc/ia64/gen/Makefile.inc#8 (text+ko) ==== @@ -9,6 +9,3 @@ # The following may go away if function _Unwind_FindTableEntry() # will be part of GCC. SRCS+= unwind.c - -# The following will go away if gcc ever fixes their crtbegin.asm bug -SRCS+= cxa.c ==== //depot/projects/ia64/sys/ia64/ia64/exception.s#13 (text+ko) ==== ==== //depot/projects/ia64/sys/ia64/ia64/genassym.c#6 (text+ko) ==== @@ -92,7 +92,7 @@ ASSYM(TF_CR_IPSR, offsetof(struct trapframe, tf_cr_ipsr)); ASSYM(TF_CR_IFS, offsetof(struct trapframe, tf_cr_ifs)); ASSYM(TF_NDIRTY, offsetof(struct trapframe, tf_ndirty)); -ASSYM(TF_AR_FPSR, offsetof(struct trapframe, tf_ar_fpsr)); +ASSYM(TF_AR_EC, offsetof(struct trapframe, tf_ar_ec)); ASSYM(TF_B, offsetof(struct trapframe, tf_b)); ASSYM(TF_R, offsetof(struct trapframe, tf_r)); ASSYM(TF_R_R1, offsetof(struct trapframe, tf_r[FRAME_R1])); ==== //depot/projects/ia64/sys/ia64/ia64/machdep.c#36 (text+ko) ==== @@ -1171,7 +1171,9 @@ struct thread *td; struct reg *regs; { - /* TODO copy trapframe to regs */ + bcopy(td->td_frame->tf_b, regs->r_br, sizeof(regs->r_br)); + bcopy(td->td_frame->tf_r, regs->r_gr+1, + sizeof(regs->r_gr) - sizeof(uint64_t)); return (0); } @@ -1180,7 +1182,8 @@ struct thread *td; struct reg *regs; { - /* TODO copy regs to trapframe */ + bcopy(regs->r_br, td->td_frame->tf_b, sizeof(td->td_frame->tf_b)); + bcopy(regs->r_gr+1, td->td_frame->tf_r, sizeof(td->td_frame->tf_r)); return (0); } ==== //depot/projects/ia64/sys/ia64/include/frame.h#3 (text+ko) ==== ==== //depot/projects/ia64/sys/ia64/include/reg.h#3 (text+ko) ==== @@ -32,7 +32,7 @@ #ifndef _IA64_FPREG_DEFINED struct ia64_fpreg { - u_int64_t fpr_bits[2]; + uint64_t fpr_bits[2]; } __attribute__ ((aligned (16))); #define _IA64_FPREG_DEFINED @@ -40,7 +40,21 @@ #endif struct reg { - u_int64_t r_regs[128]; + uint64_t r_gr[32]; /* No rotating registers */ + uint64_t r_br[8]; + uint64_t r_cfm; + uint64_t r_ip; /* Bits 0-3 encode the slot number */ + uint64_t r_pr; + uint64_t r_psr; /* User mask */ + uint64_t r_ar_rsc; + uint64_t r_ar_bspstore; + uint64_t r_ar_rnat; + uint64_t r_ar_ccv; + uint64_t r_ar_unat; + uint64_t r_ar_fpsr; + uint64_t r_ar_pfs; + uint64_t r_ar_lc; + uint64_t r_ar_ec; }; struct fpreg { @@ -48,8 +62,8 @@ }; struct dbreg { - u_int64_t dbr_data[8]; - u_int64_t dbr_inst[8]; + uint64_t dbr_data[8]; + uint64_t dbr_inst[8]; }; #ifdef _KERNEL To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message