| To: | "linux-mips@oss.sgi.com" <linux-mips@oss.sgi.com> |
|---|---|
| Subject: | Error in set_cp0_ functions |
| From: | Dan Aizenstros <dan@vcubed.com> |
| Date: | Mon, 12 Mar 2001 12:51:53 -0500 |
| Sender: | owner-linux-mips@oss.sgi.com |
Hello All,
There appears to be an error in the new set_cp0_ functions in
the mipsregs.h file.
#define __BUILD_SET_CP0(name,register) \
extern __inline__ unsigned int \
set_cp0_##name(unsigned int set) \
{ \
unsigned int res; \
\
res = read_32bit_cp0_register(register); \
res |= ~set; \
write_32bit_cp0_register(register, res); \
\
return res; \
} \
The line
res |= ~set;
will set every bit except the bit you want to set.
It should be changed to
res |= set;
Also in the mipsregs.h file the line
#define ST0_UM <1 << 4)
should probably be
#define ST0_UM (1 << 4)
I hope this helps.
Dan Aizenstros
Software Engineer
V3 Semiconductor Corp.
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | glibc 2.2.2 on linux mips kernel 2.2 NOGO, Florian Lohoff |
|---|---|
| Next by Date: | Re: Error in set_cp0_ functions, Ralf Baechle |
| Previous by Thread: | glibc 2.2.2 on linux mips kernel 2.2 NOGO, Florian Lohoff |
| Next by Thread: | Re: Error in set_cp0_ functions, Ralf Baechle |
| Indexes: | [Date] [Thread] [Top] [All Lists] |