From: Jeremy S. <js...@mv...> - 2002-02-20 17:07:33
|
1. Not long ago I had a problem with optimization around save_flags(). Don't recall the exact details... I think it was a save/cli/restore sequence with a nested (in an inline function?) save/cli/restore after the first cli; the compiler assumed the initial SR value was usable for the second save as well, causing the first restore to re-enable interrupts too early. Making save_flags volatile (like cli and sti) fixed it. Also, some symbols are missing for certain modules (e.g. ext3). The attached patch addresses both items, let me know if there's any reason not to commit it. 2. I've noticed that when we build the new gcc (3.0.3) the resulting specs file no longer includes stuff to propogate endian and cpu arguments along -- e.g. to cpp. If it's built for sh3le, for example, I can pass -m4 or -mb and I still get __SH3__ rather than __SH4__ define, or __LITTLE_ENDIAN__ rather than __BIG_ENDIAN__; what am I missing? (As far as I know, our compiler includes all the latest patches referenced on this list, maybe it's specific to the config?) Thanks, --Jeremy Siegel |