Subject: port-arm/21036: libpthread/arch/arm/pthread_md.h misuses __APCS_26__
To: None <gnats-bugs@gnats.netbsd.org>
From: Ben Harris <bjh21@netbsd.org>
List: netbsd-bugs
Date: 04/06/2003 00:22:30
>Number:         21036
>Category:       port-arm
>Synopsis:       libpthread/arch/arm/pthread_md.h misuses __APCS_26__
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    port-arm-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Apr 05 15:23:00 PST 2003
>Closed-Date:
>Last-Modified:
>Originator:     Ben Harris
>Release:        2003-06-04
>Organization:
>Environment:
N/A
>Description:
src/lib/libpthread/arch/arm/pthread_md.h seems to use the __APCS_26__
preprocessor symbol to decide what mode to set in the CPSR of new
ucontexts.  This is wrong for NetBSD, since we run APCS-32 code on both
26-bit and 32-bit CPUs, so the determination of what to put in the CPSR
has to be made at run-time somehow.

>How-To-Repeat:
Grep pthread_md.h for __APCS_26__.  If it's using it, it's broken.

>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted: