PPC 601 and mftb/mftbu

Cameron Kaiser spectre at floodgap.com
Sun Apr 25 22:19:25 CDT 2010

Okay, old PPC hands, here's today's challenge.

I finished porting SpiderMonkey (the pure C JavaScript reference
implementation) to Classilla, which is the web browser I maintain for
classic Power Macintoshes in OS 8.6 and 9, and it works great. So, for an
encore, I decided to see how feasible porting TraceMonkey would be, which
precompiles selected portions into assembly using a "nanojit."

I started working on translating the inline assembly into CodeWarrior,
but CodeWarrior did not like my conversion of their "rdtsc" function,
which uses the mftb/mftbu instructions. The reason is that I'm compiling
for 601, and CodeWarrior will only assemble those instructions for 603 and

Anyone know of an equivalent for 601 that will still work on 603+? Or am
I as dead in the water as I suspect?

Mind you, I don't even know if the rest of this will work on 603s or 604s,
so this might just be the first of a whole mess of problems. I wasn't sure
if it would work in the first place, and SpiderMonkey already cut Classilla's
JavaScript execution time in half, so it's not like this is a catastrophe.
Still, I'd love to get JIT compilation working if I can.

------------------------------------ personal: http://www.cameronkaiser.com/ --
  Cameron Kaiser * Floodgap Systems * www.floodgap.com * ckaiser at floodgap.com
-- If the dictionary misspells a word, how would you know? -- Steven Wright ---

More information about the cctech mailing list