This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
CPSR changes to ARM binutils in the mainline...
- To: Nick Clifton <nickc at cygnus dot com>
- Subject: CPSR changes to ARM binutils in the mainline...
- From: Scott Bambrough <scottb at netwinder dot org>
- Date: Fri, 26 May 2000 09:31:49 -0400
- CC: Phil Blundell <pb at futuretv dot com>, binutils mailing list <binutils at sourceware dot cygnus dot com>
- Organization: Rebel.com
Nick,
Hi Nick. I backported the changes you made to to support the new style MSR
field masks (cpsr_c et al) to the 2.10 branch. The first thing that happened is
the Linux kernel will not compile. It seems the kernel uses `msr CPSR_c, #I_BIT
| MODE_SVC` all over the place. The branch accepts this a legal instruction,
while the mainline generates an error.
The mainline is correct. The ARM Architecture Reference states in note 1 that
the immediate form can only be used to set the flag bits. The results are
unpredictable with the other fields, although it seems to work. However, I
think your patch should go into the branch for consistency. I don't think it is
a good idea for the branch and the mainline to have different behaviour here,
particularly when we are just about to release.
What do you think?
Scott
--
Scott Bambrough - Software Engineer
REBEL.COM http://www.rebel.com
NetWinder http://www.netwinder.org