There is a line in vm_ppc_new.c that came about with Apples switch to PowerPC, it makes sure that data in the instruction and data cache is synced after they moved away from the unified cache in the 601, anyway...
// On Mac OS X, the following library routine clears the instruction cache for generated code
MakeDataExecutable(vm->codeBase, vm->codeLength);
Spotted after I saw this in the Makefile;
# Carbon is required on PPC only to make a call to MakeDataExecutable
# in the PPC vm (should be a better non-Carbon way).
#LDFLAGS += -framework Carbon
Well there is a better non-Carbon way;
msync( vm->codeBase, vm->codeLength, MS_INVALIDATE );
It compiles but im having trouble building the entire project since I updated to Quicktime 7.2.
ld: Undefined symbols:
_HIPointConvert referenced from QuickTime expected to be defined in Carbon
make[1]: *** [build/release-darwin-ppc/tremulous.ppc] Error 1
make: *** [build_release] Error 2
Probably to do with the bindings.