This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] alpha, ia64, m68k, mips, sh, sparc: *_gnu_pltenter shouldallow modification of struct La_*_regs.


On 8/15/2012 8:34 PM, Carlos O'Donell wrote:
> 
> The *_gnu_pltenter interface allows the modification of the incoming
> set of registers in struct La_*_regs, that is to say that the 5th
> argument of la_*_pltenter() is non-constant.
> 
> This was not always the case, but it is the case now and has been 
> since it was silently changed in commit 
> 2413fdba7a02ba8916f75d17199a6e9133a8f7b0.
> 
> Removing const from the 5th argument conforms with the Solaris interface:
> http://docs.oracle.com/cd/E19082-01/819-0690/chapter6-1242/index.html
> 
> Removing const for alpha, ia64, m68k, mips, sh, and sparc conforms
> with what the other machines in glibc are already doing.
> 
> I haven't tested this, but I don't think anything should go wrong
> given the wide usage of the non-const version right now. We could also
> do with a better test case that does something with the registers.
> For now I'm content to cleanup the definition in ldsodefs.h.
> 
> OK to commit?
> 
> ports/ChangeLog.alpha
> 
> 2012-08-15  Carlos O'Donell  <carlos_odonell@mentor.com>
> 
> 	* sysdeps/alpha/ldsodefs.h (ARCH_PLTENTER_MEMBERS):
> 	struct La_alpha_regs is not const.

Checked in.

> ports/ChangeLog.ia64
> 
> 2012-08-15  Carlos O'Donell  <carlos_odonell@mentor.com>
> 
> 	* sysdeps/ia64/ldsodefs.h (ARCH_PLTENTER_MEMBERS):
> 	struct La_ia64_regs is not constant.
> 

Checked in.

> ports/ChangeLog.m68k
> 
> 2012-08-15  Carlos O'Donell  <carlos_odonell@mentor.com>
> 
> 	* sysdeps/m68k/ldsodefs.h (ARCH_PLTENTER_MEMBERS):
> 	struct La_m68k_regs is not constant.
> 

Dropped. Andreas beat me to it.

> ports/ChangeLog.mips
> 
> 2012-08-15  Carlos O'Donell  <carlos_odonell@mentor.com>
> 
> 	* sysdeps/mips/ldsodefs.h (ARCH_PLTENTER_MEMBERS):
> 	struct La_mips_32_regs and struct La_mips_64_regs are
> 	not constant.

Checked in.

 
> ChangeLog
> 
> 2012-08-15  Carlos O'Donell  <carlos_odonell@mentor.com>
> 
> 	* sysdeps/sh/ldsodefs.h (ARCH_PLTENTER_MEMBERS):
> 	struct La_sh_regs is not constant.
> 	* sysdeps/sparc/ldsodefs.h (ARCH_PLTENTER_MEMBERS):
> 	struct La_sparc32_regs and struct La_sparc64_regs are
> 	not constant.

Checked in.

Cheers,
Carlos.
-- 
Carlos O'Donell
Mentor Graphics / CodeSourcery
carlos_odonell@mentor.com
carlos@codesourcery.com
+1 (613) 963 1026


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]