Ver Fonte

Patch for coop A2

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7033 8c9fc860-2736-0410-a75d-ab315db34111
felixf há 8 anos atrás
pai
commit
6432b56704
1 ficheiros alterados com 5 adições e 5 exclusões
  1. 5 5
      source/FoxIntermediateBackend.Mod

+ 5 - 5
source/FoxIntermediateBackend.Mod

@@ -12643,11 +12643,11 @@ TYPE
 			referenceSection := Block("Heaps","SystemBlockDesc",".@References",referenceSectionOffset);
 			References(referenceSection);
 			procTableSection := Block("Heaps","SystemBlockDesc",".@ProcTable",procTableSectionOffset);
-			ProcedureDescriptorArray(procTableSection, numberProcs);
-			name := "Heaps.AnyPtr";
-			offset := ToMemoryUnits(module.system,TypeRecordBaseOffset*module.system.addressSize);
-			(* set base pointer *)
-			IF procTableSectionOffset > 0 THEN (*? for coop ? *)
+			IF ~implementationVisitor.backend.cooperative THEN
+				ProcedureDescriptorArray(procTableSection, numberProcs);
+				name := "Heaps.AnyPtr";
+				offset := ToMemoryUnits(module.system,TypeRecordBaseOffset*module.system.addressSize);
+				(* set base pointer *)
 				NamedSymbolAt(procTableSection, procTableSectionOffset  -1 , name, NIL, 0, offset);
 			END;