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: