Browse Source

rebuilt release

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7537 8c9fc860-2736-0410-a75d-ab315db34111
felixf 7 years ago
parent
commit
e8c2780370
100 changed files with 40 additions and 599 deletions
  1. BIN
      WinAos/A2.exe
  2. BIN
      WinAos/oberon.exe
  3. BIN
      WinAos/obg/ASN1.GofW
  4. BIN
      WinAos/obg/AVI.GofW
  5. BIN
      WinAos/obg/ArrayBase.GofW
  6. BIN
      WinAos/obg/ArrayBaseOptimized.GofW
  7. BIN
      WinAos/obg/BMPCodec.GofW
  8. BIN
      WinAos/obg/Base64.GofW
  9. BIN
      WinAos/obg/BenchXML.GofW
  10. BIN
      WinAos/obg/Bimso.GofW
  11. BIN
      WinAos/obg/BootShell.GofW
  12. BIN
      WinAos/obg/CharacterLineup.GofW
  13. BIN
      WinAos/obg/Compiler.GofW
  14. 1 1
      WinAos/obg/Compiler.SymW
  15. BIN
      WinAos/obg/ComponentInfo.GofW
  16. BIN
      WinAos/obg/ContextualDependency.GofW
  17. BIN
      WinAos/obg/CryptoAES.GofW
  18. BIN
      WinAos/obg/CryptoARC4.GofW
  19. BIN
      WinAos/obg/CryptoBase64.GofW
  20. BIN
      WinAos/obg/CryptoBigNumbers.GofW
  21. BIN
      WinAos/obg/CryptoBlowfish.GofW
  22. BIN
      WinAos/obg/CryptoCAST.GofW
  23. BIN
      WinAos/obg/CryptoDES3.GofW
  24. BIN
      WinAos/obg/CryptoDSA.GofW
  25. BIN
      WinAos/obg/CryptoHMAC.GofW
  26. BIN
      WinAos/obg/CryptoIDEA.GofW
  27. BIN
      WinAos/obg/CryptoKeccakF1600.GofW
  28. BIN
      WinAos/obg/CryptoMD5.GofW
  29. BIN
      WinAos/obg/CryptoPrimes.GofW
  30. BIN
      WinAos/obg/CryptoRSA.GofW
  31. BIN
      WinAos/obg/CryptoTestCiphers.GofW
  32. BIN
      WinAos/obg/CryptoTestHashes.GofW
  33. BIN
      WinAos/obg/CryptoTwofish.GofW
  34. BIN
      WinAos/obg/CryptoUtils.GofW
  35. BIN
      WinAos/obg/CyrillicUtilities.GofW
  36. BIN
      WinAos/obg/DES.GofW
  37. BIN
      WinAos/obg/DTPData.GofW
  38. BIN
      WinAos/obg/DTPEditor.GofW
  39. BIN
      WinAos/obg/DTPRect.GofW
  40. BIN
      WinAos/obg/DTPText.GofW
  41. BIN
      WinAos/obg/DTPUtilities.GofW
  42. BIN
      WinAos/obg/DTPView.GofW
  43. BIN
      WinAos/obg/Dates.GofW
  44. BIN
      WinAos/obg/DebugLog.GofW
  45. BIN
      WinAos/obg/Decoder.GofW
  46. BIN
      WinAos/obg/DiffLib.GofW
  47. BIN
      WinAos/obg/DiskTests.GofW
  48. BIN
      WinAos/obg/Display.GofW
  49. BIN
      WinAos/obg/Displays.GofW
  50. BIN
      WinAos/obg/DivXDecoder.GofW
  51. BIN
      WinAos/obg/DivXHelper.GofW
  52. BIN
      WinAos/obg/DivXTypes.GofW
  53. BIN
      WinAos/obg/DynamicWebpagePlugin.GofW
  54. BIN
      WinAos/obg/EFIGraphicalConsole.GofW
  55. BIN
      WinAos/obg/ExerciseGroups.GofW
  56. BIN
      WinAos/obg/FATFiles.GofW
  57. BIN
      WinAos/obg/FATScavenger.GofW
  58. BIN
      WinAos/obg/FoxAMD64Assembler.GofW
  59. BIN
      WinAos/obg/FoxAMD64InstructionSet.GofW
  60. 30 593
      WinAos/obg/FoxAMD64InstructionSet.SymW
  61. BIN
      WinAos/obg/FoxAMDBackend.GofW
  62. BIN
      WinAos/obg/FoxARMAssembler.GofW
  63. BIN
      WinAos/obg/FoxARMBackend.GofW
  64. BIN
      WinAos/obg/FoxARMInstructionSet.GofW
  65. BIN
      WinAos/obg/FoxActiveCells.GofW
  66. BIN
      WinAos/obg/FoxArrayBase.GofW
  67. BIN
      WinAos/obg/FoxArrayBaseOptimized.GofW
  68. BIN
      WinAos/obg/FoxAssembler.GofW
  69. 2 2
      WinAos/obg/FoxAssembler.SymW
  70. BIN
      WinAos/obg/FoxBasic.GofW
  71. BIN
      WinAos/obg/FoxBinaryCode.GofW
  72. 2 2
      WinAos/obg/FoxBinaryCode.SymW
  73. BIN
      WinAos/obg/FoxBinaryObjectFile.GofW
  74. BIN
      WinAos/obg/FoxBinarySymbolFile.GofW
  75. BIN
      WinAos/obg/FoxCSharpParser.GofW
  76. BIN
      WinAos/obg/FoxCodeGenerators.GofW
  77. BIN
      WinAos/obg/FoxDocumentationBackend.GofW
  78. BIN
      WinAos/obg/FoxFingerPrinter.GofW
  79. BIN
      WinAos/obg/FoxFormats.GofW
  80. BIN
      WinAos/obg/FoxGenericObjectFile.GofW
  81. BIN
      WinAos/obg/FoxGlobal.GofW
  82. BIN
      WinAos/obg/FoxInterfaceComparison.GofW
  83. BIN
      WinAos/obg/FoxIntermediateAssembler.GofW
  84. BIN
      WinAos/obg/FoxIntermediateBackend.GofW
  85. 4 1
      WinAos/obg/FoxIntermediateBackend.SymW
  86. BIN
      WinAos/obg/FoxIntermediateCode.GofW
  87. BIN
      WinAos/obg/FoxIntermediateLinker.GofW
  88. BIN
      WinAos/obg/FoxIntermediateParser.GofW
  89. BIN
      WinAos/obg/FoxInterpreterBackend.GofW
  90. BIN
      WinAos/obg/FoxMinosObjectFile.GofW
  91. BIN
      WinAos/obg/FoxParser.GofW
  92. BIN
      WinAos/obg/FoxPrintout.GofW
  93. BIN
      WinAos/obg/FoxProfiler.GofW
  94. BIN
      WinAos/obg/FoxProgTools.GofW
  95. BIN
      WinAos/obg/FoxSemanticChecker.GofW
  96. BIN
      WinAos/obg/FoxSyntaxTree.GofW
  97. 1 0
      WinAos/obg/FoxSyntaxTree.SymW
  98. BIN
      WinAos/obg/FoxTRMAssembler.GofW
  99. BIN
      WinAos/obg/FoxTRMBackend.GofW
  100. BIN
      WinAos/obg/FoxTRMInstructionSet.GofW

BIN
WinAos/A2.exe


BIN
WinAos/oberon.exe


BIN
WinAos/obg/ASN1.GofW


BIN
WinAos/obg/AVI.GofW


BIN
WinAos/obg/ArrayBase.GofW


BIN
WinAos/obg/ArrayBaseOptimized.GofW


BIN
WinAos/obg/BMPCodec.GofW


BIN
WinAos/obg/Base64.GofW


BIN
WinAos/obg/BenchXML.GofW


BIN
WinAos/obg/Bimso.GofW


BIN
WinAos/obg/BootShell.GofW


BIN
WinAos/obg/CharacterLineup.GofW


BIN
WinAos/obg/Compiler.GofW


+ 1 - 1
WinAos/obg/Compiler.SymW

@@ -1,5 +1,5 @@
 MODULE Compiler;
-	IMPORT Basic := FoxBasic, Scanner := FoxScanner, Parser := FoxParser, SemanticChecker := FoxSemanticChecker, SyntaxTree := FoxSyntaxTree, Formats := FoxFormats, Streams, Commands, Diagnostics, Options, Kernel, Printout := FoxPrintout, Backend := FoxBackend, Strings, Global := FoxGlobal, Frontend := FoxFrontend, Files;
+	IMPORT Basic := FoxBasic, Scanner := FoxScanner, Parser := FoxParser, SemanticChecker := FoxSemanticChecker, SyntaxTree := FoxSyntaxTree, Formats := FoxFormats, Streams, Commands, Diagnostics, Options, Kernel, Printout := FoxPrintout, Backend := FoxBackend, Strings, Global := FoxGlobal, Frontend := FoxFrontend, Files, Machine;
 CONST 
 	Print* = 0; 
 	Silent* = 1; 

BIN
WinAos/obg/ComponentInfo.GofW


BIN
WinAos/obg/ContextualDependency.GofW


BIN
WinAos/obg/CryptoAES.GofW


BIN
WinAos/obg/CryptoARC4.GofW


BIN
WinAos/obg/CryptoBase64.GofW


BIN
WinAos/obg/CryptoBigNumbers.GofW


BIN
WinAos/obg/CryptoBlowfish.GofW


BIN
WinAos/obg/CryptoCAST.GofW


BIN
WinAos/obg/CryptoDES3.GofW


BIN
WinAos/obg/CryptoDSA.GofW


BIN
WinAos/obg/CryptoHMAC.GofW


BIN
WinAos/obg/CryptoIDEA.GofW


BIN
WinAos/obg/CryptoKeccakF1600.GofW


BIN
WinAos/obg/CryptoMD5.GofW


BIN
WinAos/obg/CryptoPrimes.GofW


BIN
WinAos/obg/CryptoRSA.GofW


BIN
WinAos/obg/CryptoTestCiphers.GofW


BIN
WinAos/obg/CryptoTestHashes.GofW


BIN
WinAos/obg/CryptoTwofish.GofW


BIN
WinAos/obg/CryptoUtils.GofW


BIN
WinAos/obg/CyrillicUtilities.GofW


BIN
WinAos/obg/DES.GofW


BIN
WinAos/obg/DTPData.GofW


BIN
WinAos/obg/DTPEditor.GofW


BIN
WinAos/obg/DTPRect.GofW


BIN
WinAos/obg/DTPText.GofW


BIN
WinAos/obg/DTPUtilities.GofW


BIN
WinAos/obg/DTPView.GofW


BIN
WinAos/obg/Dates.GofW


BIN
WinAos/obg/DebugLog.GofW


BIN
WinAos/obg/Decoder.GofW


BIN
WinAos/obg/DiffLib.GofW


BIN
WinAos/obg/DiskTests.GofW


BIN
WinAos/obg/Display.GofW


BIN
WinAos/obg/Displays.GofW


BIN
WinAos/obg/DivXDecoder.GofW


BIN
WinAos/obg/DivXHelper.GofW


BIN
WinAos/obg/DivXTypes.GofW


BIN
WinAos/obg/DynamicWebpagePlugin.GofW


BIN
WinAos/obg/EFIGraphicalConsole.GofW


BIN
WinAos/obg/ExerciseGroups.GofW


BIN
WinAos/obg/FATFiles.GofW


BIN
WinAos/obg/FATScavenger.GofW


BIN
WinAos/obg/FoxAMD64Assembler.GofW


BIN
WinAos/obg/FoxAMD64InstructionSet.GofW


File diff suppressed because it is too large
+ 30 - 593
WinAos/obg/FoxAMD64InstructionSet.SymW


BIN
WinAos/obg/FoxAMDBackend.GofW


BIN
WinAos/obg/FoxARMAssembler.GofW


BIN
WinAos/obg/FoxARMBackend.GofW


BIN
WinAos/obg/FoxARMInstructionSet.GofW


BIN
WinAos/obg/FoxActiveCells.GofW


BIN
WinAos/obg/FoxArrayBase.GofW


BIN
WinAos/obg/FoxArrayBaseOptimized.GofW


BIN
WinAos/obg/FoxAssembler.GofW


+ 2 - 2
WinAos/obg/FoxAssembler.SymW

@@ -46,7 +46,7 @@ TYPE
 	Result* = RECORD 
 		type*: INTEGER; 
 		sizeInBits*: INTEGER; 
-		value*: LONGINT; 
+		value*: HUGEINT; 
 		valueR*: LONGREAL; 
 		fixup*: BinaryCode.Fixup; 
 	END; 
@@ -111,7 +111,7 @@ TYPE
 		PROCEDURE ^ Expression*(VAR x: Result; critical: BOOLEAN): BOOLEAN; 
 		PROCEDURE ^ Data(CONST ident: ARRAY OF CHAR): BOOLEAN; 
 		PROCEDURE ^ Reserve(CONST ident: ARRAY OF CHAR): BOOLEAN; 
-		PROCEDURE ^ PutBitsIfLastPass(data: LONGINT; size: BinaryCode.Bits); 
+		PROCEDURE ^ PutBitsIfLastPass(data: HUGEINT; size: BinaryCode.Bits); 
 		PROCEDURE ^ Instruction*(CONST mnemonic: ARRAY OF CHAR); 
 		PROCEDURE ^ IgnoreNewLines; 
 		PROCEDURE ^ DoAssemble; 

BIN
WinAos/obg/FoxBasic.GofW


BIN
WinAos/obg/FoxBinaryCode.GofW


+ 2 - 2
WinAos/obg/FoxBinaryCode.SymW

@@ -89,8 +89,8 @@ TYPE
 		PROCEDURE ^ SetAlignment*(fixed: BOOLEAN; alignat: LONGINT); 
 		PROCEDURE ^ CheckSize(size: LONGINT); 
 		PROCEDURE ^ CopyBits*(src: BitSets.BitSet; srcPos, len: Bits); 
-		PROCEDURE ^ PutBits*(d: LONGINT; size: Bits); 
-		PROCEDURE ^ PutBitsAt*(at: Unit; d: LONGINT; size: Bits); 
+		PROCEDURE ^ PutBits*(d: HUGEINT; size: Bits); 
+		PROCEDURE ^ PutBitsAt*(at: Unit; d: HUGEINT; size: Bits); 
 		PROCEDURE ^ PutByte*(b: LONGINT); 
 		PROCEDURE ^ PutWord*(w: LONGINT); 
 		PROCEDURE ^ PutDWord*(d: LONGINT); 

BIN
WinAos/obg/FoxBinaryObjectFile.GofW


BIN
WinAos/obg/FoxBinarySymbolFile.GofW


BIN
WinAos/obg/FoxCSharpParser.GofW


BIN
WinAos/obg/FoxCodeGenerators.GofW


BIN
WinAos/obg/FoxDocumentationBackend.GofW


BIN
WinAos/obg/FoxFingerPrinter.GofW


BIN
WinAos/obg/FoxFormats.GofW


BIN
WinAos/obg/FoxGenericObjectFile.GofW


BIN
WinAos/obg/FoxGlobal.GofW


BIN
WinAos/obg/FoxInterfaceComparison.GofW


BIN
WinAos/obg/FoxIntermediateAssembler.GofW


BIN
WinAos/obg/FoxIntermediateBackend.GofW


+ 4 - 1
WinAos/obg/FoxIntermediateBackend.SymW

@@ -212,7 +212,9 @@ TYPE
 		PROCEDURE ^ GetUsage(VAR use: VariableUse); 
 		PROCEDURE ^ SetUsage(CONST use: VariableUse); 
 		PROCEDURE ^ GetVariable(i: LONGINT): SyntaxTree.Variable; 
+		PROCEDURE ^ SetVariable(pos: LONGINT; v: SyntaxTree.Variable); 
 		PROCEDURE ^ Occupy(pos: LONGINT); 
+		PROCEDURE ^ Occupied(pos: LONGINT): BOOLEAN; 
 		PROCEDURE ^ AddVariable(v: SyntaxTree.Variable); 
 		PROCEDURE ^ CompatibleType(t1, t2: SyntaxTree.Type): BOOLEAN; 
 		PROCEDURE ^ GetFreeVariable(type: SyntaxTree.Type; untraced: BOOLEAN; VAR pos: LONGINT): SyntaxTree.Variable; 
@@ -240,6 +242,7 @@ TYPE
 			section: IntermediateCode.Section; 
 			registerUsageCount: RegisterUsageCount; 
 			usedRegisters: RegisterEntry; 
+			temporaries: Variables; 
 		END; 
 	VAR 
 		system: Global.System; 
@@ -267,7 +270,7 @@ TYPE
 		registerUsageCount: RegisterUsageCount; 
 		usedRegisters: RegisterEntry; 
 		nil, one, fp, sp, ap, lr, true, false: IntermediateCode.Operand; 
-		bool, addressType, setType, sizeType, byteType: IntermediateCode.Type; 
+		bool, addressType, setType, sizeType, lenType, byteType: IntermediateCode.Type; 
 		commentPrintout: Printout.Printer; 
 		dump: Streams.Writer; 
 		tagsAvailable: BOOLEAN; 

BIN
WinAos/obg/FoxIntermediateCode.GofW


BIN
WinAos/obg/FoxIntermediateLinker.GofW


BIN
WinAos/obg/FoxIntermediateParser.GofW


BIN
WinAos/obg/FoxInterpreterBackend.GofW


BIN
WinAos/obg/FoxMinosObjectFile.GofW


BIN
WinAos/obg/FoxParser.GofW


BIN
WinAos/obg/FoxPrintout.GofW


BIN
WinAos/obg/FoxProfiler.GofW


BIN
WinAos/obg/FoxProgTools.GofW


BIN
WinAos/obg/FoxSemanticChecker.GofW


BIN
WinAos/obg/FoxSyntaxTree.GofW


+ 1 - 0
WinAos/obg/FoxSyntaxTree.SymW

@@ -1474,6 +1474,7 @@ TYPE
 		PROCEDURE ^ FindTypeDeclaration*(identifier: Identifier): TypeDeclaration; 
 		PROCEDURE ^ AddVariable*(v: Variable); 
 		PROCEDURE ^ PushVariable*(v: Variable); 
+		PROCEDURE ^ InsertVariable*(v: Variable; after: Variable); 
 		PROCEDURE ^ FindVariable*(identifier: Identifier): Variable; 
 		PROCEDURE ^ AddProcedure*(p: Procedure); 
 		PROCEDURE ^ AddProcedureDeclaration*(p: Procedure); 

BIN
WinAos/obg/FoxTRMAssembler.GofW


BIN
WinAos/obg/FoxTRMBackend.GofW


BIN
WinAos/obg/FoxTRMInstructionSet.GofW


Some files were not shown because too many files changed in this diff