Subject: Re: CVS commit: src/sys/lib/libsa
To: Cherry G. Mathew <cherry.g.mathew@gmail.com>
From: Christos Zoulas <christos@zoulas.com>
List: source-changes
Date: 04/03/2006 11:37:25
On Apr 3,  8:55pm, cherry.g.mathew@gmail.com ("Cherry G. Mathew") wrote:
-- Subject: Re: CVS commit: src/sys/lib/libsa

| Sorry about this. I didn't follow your comment properly. Is the
| following ok to commit ? It works on ia64 with:
| 
| #define MD_LOADSEG(phdr) (phdr.p_type == PT_IA_64_UNWIND ?
| ia64_unwindtab = phdr.p_vaddr, ia64_unwindtablen = phdr.p_filesz, 1 :
| 0)

Well this is a bit sneaky to stick in the assignments there, but ok.

| ------------------------------------------------------------------------
| +#ifndef MD_LOADSEG /* Allow processor ABI specific segment loads */
| +#define MD_LOADSEG(a) /*CONSTCOND*/0
| +#endif
| +               if (MD_LOADSEG(phdr[i]))
| +                       goto loadseg;
| +
| +
|                 if (phdr[i].p_type != PT_LOAD ||
|                     (phdr[i].p_flags & (PF_W|PF_X)) == 0)
|                         continue;
| @@ -309,6 +317,7 @@
|                 if ((IS_TEXT(phdr[i]) && (flags & LOAD_TEXT)) ||
|                     (IS_DATA(phdr[i]) && (flags & LOAD_DATA))) {
| 
| +               loadseg:
|                         /* Read in segment. */
|                         PROGRESS(("%s%lu", first ? "" : "+",
|                             (u_long)phdr[i].p_filesz));
| -----------------------------------------------------------------------
| 

Yes, this is ok.

christos