Parcourir la source

Added cache flushing before initializing dynamically loaded module. Needed on ARM.

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@6438 8c9fc860-2736-0410-a75d-ab315db34111
eth.tmartiel il y a 9 ans
Parent
commit
b240ec1cd9
1 fichiers modifiés avec 4 ajouts et 1 suppressions
  1. 4 1
      source/Generic.Modules.Mod

+ 4 - 1
source/Generic.Modules.Mod

@@ -312,7 +312,10 @@ VAR new: BOOLEAN;
 BEGIN
 	Publish (module, new);
 	IF new THEN
-		IF module.body # NIL THEN module.body END;
+		IF module.body # NIL THEN
+			Machine.FlushDCacheRange(ADDRESSOF(module.code[0]), LEN(module.code));
+			module.body
+		END;
 		module.init := TRUE;
 	END;
 END Initialize;