From e03c68b632caef7cc9d38f9418dc5f9c3106e2d4 Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Wed, 17 Jul 2019 02:11:16 +0200 Subject: [PATCH] optimize imports --- compiler/src/prog8/CompilerMain.kt | 2 +- compiler/src/prog8/ast/AstToplevel.kt | 5 ++++- compiler/src/prog8/ast/antlr/Antr2Kotlin.kt | 10 ++++++---- compiler/src/prog8/ast/base/Extensions.kt | 5 ++++- compiler/src/prog8/ast/processing/AstChecker.kt | 1 - .../src/prog8/ast/processing/AstRecursionChecker.kt | 2 +- .../src/prog8/ast/processing/IAstModifyingVisitor.kt | 5 ++++- compiler/src/prog8/ast/processing/IAstVisitor.kt | 3 ++- .../ast/processing/ImportedModuleDirectiveRemover.kt | 3 ++- .../src/prog8/ast/processing/StatementReorderer.kt | 5 +++-- compiler/src/prog8/compiler/AstToSourceCode.kt | 5 ++++- compiler/src/prog8/compiler/Main.kt | 3 --- compiler/src/prog8/compiler/Zeropage.kt | 1 - .../compiler/intermediate/IntermediateProgram.kt | 6 ++++-- compiler/src/prog8/compiler/target/c64/AsmGen.kt | 7 +++++-- .../src/prog8/compiler/target/c64/AsmPatterns.kt | 4 ++-- .../prog8/compiler/target/c64/MachineDefinition.kt | 5 ++++- compiler/src/prog8/compiler/target/c64/SimpleAsm.kt | 9 ++++----- compiler/src/prog8/functions/BuiltinFunctions.kt | 3 ++- compiler/src/prog8/optimizer/ConstExprEvaluator.kt | 2 +- compiler/src/prog8/optimizer/ConstantFolding.kt | 5 ++++- compiler/src/prog8/optimizer/Extensions.kt | 2 +- compiler/src/prog8/optimizer/SimplifyExpressions.kt | 4 +++- compiler/src/prog8/parser/ModuleParsing.kt | 3 ++- compiler/src/prog8/vm/astvm/AstVm.kt | 8 +++++--- compiler/src/prog8/vm/astvm/Expressions.kt | 3 ++- compiler/src/prog8/vm/astvm/VariablesCreator.kt | 8 ++++++-- compiler/src/prog8/vm/stackvm/Program.kt | 7 +++++-- compiler/src/prog8/vm/stackvm/StackVm.kt | 12 ++++-------- compiler/test/LiteralValueTests.kt | 7 +++++-- compiler/test/StackVMOpcodeTests.kt | 2 +- compiler/test/UnitTests.kt | 6 +++--- 32 files changed, 94 insertions(+), 59 deletions(-) diff --git a/compiler/src/prog8/CompilerMain.kt b/compiler/src/prog8/CompilerMain.kt index 514be2d02..63b294ff2 100644 --- a/compiler/src/prog8/CompilerMain.kt +++ b/compiler/src/prog8/CompilerMain.kt @@ -1,8 +1,8 @@ package prog8 +import prog8.compiler.compileProgram import prog8.vm.astvm.AstVm import prog8.vm.stackvm.stackVmMain -import prog8.compiler.* import java.nio.file.Paths import kotlin.system.exitProcess diff --git a/compiler/src/prog8/ast/AstToplevel.kt b/compiler/src/prog8/ast/AstToplevel.kt index 3ba9004d5..a4effe2c1 100644 --- a/compiler/src/prog8/ast/AstToplevel.kt +++ b/compiler/src/prog8/ast/AstToplevel.kt @@ -1,6 +1,9 @@ package prog8.ast -import prog8.ast.base.* +import prog8.ast.base.FatalAstException +import prog8.ast.base.NameError +import prog8.ast.base.ParentSentinel +import prog8.ast.base.Position import prog8.ast.statements.Block import prog8.ast.statements.Label import prog8.ast.statements.Subroutine diff --git a/compiler/src/prog8/ast/antlr/Antr2Kotlin.kt b/compiler/src/prog8/ast/antlr/Antr2Kotlin.kt index b13a6006e..23c3c38de 100644 --- a/compiler/src/prog8/ast/antlr/Antr2Kotlin.kt +++ b/compiler/src/prog8/ast/antlr/Antr2Kotlin.kt @@ -3,16 +3,18 @@ package prog8.ast.antlr import org.antlr.v4.runtime.IntStream import org.antlr.v4.runtime.ParserRuleContext import org.antlr.v4.runtime.tree.TerminalNode -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.IStatement +import prog8.ast.Module import prog8.ast.base.* import prog8.ast.expressions.* import prog8.ast.statements.* -import java.io.CharConversionException -import java.io.File -import java.nio.file.Path import prog8.compiler.target.c64.Petscii import prog8.parser.CustomLexer import prog8.parser.prog8Parser +import java.io.CharConversionException +import java.io.File +import java.nio.file.Path /***************** Antlr Extension methods to create AST ****************/ diff --git a/compiler/src/prog8/ast/base/Extensions.kt b/compiler/src/prog8/ast/base/Extensions.kt index 528826ec8..993a30245 100644 --- a/compiler/src/prog8/ast/base/Extensions.kt +++ b/compiler/src/prog8/ast/base/Extensions.kt @@ -1,6 +1,9 @@ package prog8.ast.base -import prog8.ast.* +import prog8.ast.IFunctionCall +import prog8.ast.Module +import prog8.ast.Node +import prog8.ast.Program import prog8.ast.expressions.IdentifierReference import prog8.ast.processing.* import prog8.ast.statements.Assignment diff --git a/compiler/src/prog8/ast/processing/AstChecker.kt b/compiler/src/prog8/ast/processing/AstChecker.kt index 161c0ad50..2277d24ae 100644 --- a/compiler/src/prog8/ast/processing/AstChecker.kt +++ b/compiler/src/prog8/ast/processing/AstChecker.kt @@ -2,7 +2,6 @@ package prog8.ast.processing import prog8.ast.* import prog8.ast.base.* -import prog8.ast.base.printWarning import prog8.ast.expressions.* import prog8.ast.statements.* import prog8.compiler.CompilationOptions diff --git a/compiler/src/prog8/ast/processing/AstRecursionChecker.kt b/compiler/src/prog8/ast/processing/AstRecursionChecker.kt index 02d64e70f..4f2a13bb5 100644 --- a/compiler/src/prog8/ast/processing/AstRecursionChecker.kt +++ b/compiler/src/prog8/ast/processing/AstRecursionChecker.kt @@ -1,6 +1,6 @@ package prog8.ast.processing -import prog8.ast.* +import prog8.ast.INameScope import prog8.ast.base.AstException import prog8.ast.expressions.FunctionCall import prog8.ast.statements.FunctionCallStatement diff --git a/compiler/src/prog8/ast/processing/IAstModifyingVisitor.kt b/compiler/src/prog8/ast/processing/IAstModifyingVisitor.kt index fee890db0..8cf7d52ca 100644 --- a/compiler/src/prog8/ast/processing/IAstModifyingVisitor.kt +++ b/compiler/src/prog8/ast/processing/IAstModifyingVisitor.kt @@ -1,6 +1,9 @@ package prog8.ast.processing -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.IStatement +import prog8.ast.Module +import prog8.ast.Program import prog8.ast.expressions.* import prog8.ast.statements.* diff --git a/compiler/src/prog8/ast/processing/IAstVisitor.kt b/compiler/src/prog8/ast/processing/IAstVisitor.kt index 7a582bec4..6afe7ae74 100644 --- a/compiler/src/prog8/ast/processing/IAstVisitor.kt +++ b/compiler/src/prog8/ast/processing/IAstVisitor.kt @@ -1,6 +1,7 @@ package prog8.ast.processing -import prog8.ast.* +import prog8.ast.Module +import prog8.ast.Program import prog8.ast.expressions.* import prog8.ast.statements.* diff --git a/compiler/src/prog8/ast/processing/ImportedModuleDirectiveRemover.kt b/compiler/src/prog8/ast/processing/ImportedModuleDirectiveRemover.kt index c6156e2e3..13d644758 100644 --- a/compiler/src/prog8/ast/processing/ImportedModuleDirectiveRemover.kt +++ b/compiler/src/prog8/ast/processing/ImportedModuleDirectiveRemover.kt @@ -1,6 +1,7 @@ package prog8.ast.processing -import prog8.ast.* +import prog8.ast.IStatement +import prog8.ast.Module import prog8.ast.base.SyntaxError import prog8.ast.base.printWarning import prog8.ast.statements.Directive diff --git a/compiler/src/prog8/ast/processing/StatementReorderer.kt b/compiler/src/prog8/ast/processing/StatementReorderer.kt index bdd53db7a..bf0808eb4 100644 --- a/compiler/src/prog8/ast/processing/StatementReorderer.kt +++ b/compiler/src/prog8/ast/processing/StatementReorderer.kt @@ -1,9 +1,10 @@ package prog8.ast.processing -import kotlin.comparisons.nullsLast import prog8.ast.* -import prog8.ast.base.* +import prog8.ast.base.DataType +import prog8.ast.base.FatalAstException import prog8.ast.base.initvarsSubName +import prog8.ast.base.printWarning import prog8.ast.expressions.* import prog8.ast.statements.* import prog8.functions.BuiltinFunctions diff --git a/compiler/src/prog8/compiler/AstToSourceCode.kt b/compiler/src/prog8/compiler/AstToSourceCode.kt index 63dc23227..65ac2d470 100644 --- a/compiler/src/prog8/compiler/AstToSourceCode.kt +++ b/compiler/src/prog8/compiler/AstToSourceCode.kt @@ -2,7 +2,10 @@ package prog8.compiler import prog8.ast.* import prog8.ast.antlr.escape -import prog8.ast.base.* +import prog8.ast.base.DataType +import prog8.ast.base.NumericDatatypes +import prog8.ast.base.StringDatatypes +import prog8.ast.base.VarDeclType import prog8.ast.expressions.* import prog8.ast.processing.IAstVisitor import prog8.ast.statements.* diff --git a/compiler/src/prog8/compiler/Main.kt b/compiler/src/prog8/compiler/Main.kt index b7607bc1b..5b9c076c0 100644 --- a/compiler/src/prog8/compiler/Main.kt +++ b/compiler/src/prog8/compiler/Main.kt @@ -2,9 +2,6 @@ package prog8.compiler import prog8.ast.Program import prog8.ast.base.* -import prog8.ast.base.checkIdentifiers -import prog8.ast.base.checkValid -import prog8.ast.base.reorderStatements import prog8.ast.statements.Directive import prog8.compiler.target.c64.AsmGen import prog8.compiler.target.c64.MachineDefinition diff --git a/compiler/src/prog8/compiler/Zeropage.kt b/compiler/src/prog8/compiler/Zeropage.kt index d980b534a..0c4b08a35 100644 --- a/compiler/src/prog8/compiler/Zeropage.kt +++ b/compiler/src/prog8/compiler/Zeropage.kt @@ -1,7 +1,6 @@ package prog8.compiler import prog8.ast.base.* -import prog8.ast.base.printWarning class ZeropageDepletedError(message: String) : Exception(message) diff --git a/compiler/src/prog8/compiler/intermediate/IntermediateProgram.kt b/compiler/src/prog8/compiler/intermediate/IntermediateProgram.kt index d35ed1483..715395e2e 100644 --- a/compiler/src/prog8/compiler/intermediate/IntermediateProgram.kt +++ b/compiler/src/prog8/compiler/intermediate/IntermediateProgram.kt @@ -2,13 +2,15 @@ package prog8.compiler.intermediate import prog8.ast.antlr.escape import prog8.ast.base.* -import prog8.ast.base.printWarning import prog8.ast.expressions.NumericLiteralValue import prog8.ast.expressions.ReferenceLiteralValue import prog8.ast.statements.StructDecl import prog8.ast.statements.VarDecl import prog8.ast.statements.ZeropageWish -import prog8.compiler.* +import prog8.compiler.CompilerException +import prog8.compiler.HeapValues +import prog8.compiler.Zeropage +import prog8.compiler.ZeropageDepletedError import prog8.vm.RuntimeValue import java.io.PrintStream import java.nio.file.Path diff --git a/compiler/src/prog8/compiler/target/c64/AsmGen.kt b/compiler/src/prog8/compiler/target/c64/AsmGen.kt index e99f85f04..4dd1403dc 100644 --- a/compiler/src/prog8/compiler/target/c64/AsmGen.kt +++ b/compiler/src/prog8/compiler/target/c64/AsmGen.kt @@ -7,9 +7,12 @@ import prog8.ast.antlr.escape import prog8.ast.base.DataType import prog8.ast.base.initvarsSubName import prog8.ast.statements.ZeropageWish -import prog8.vm.RuntimeValue import prog8.compiler.* -import prog8.compiler.intermediate.* +import prog8.compiler.intermediate.Instruction +import prog8.compiler.intermediate.IntermediateProgram +import prog8.compiler.intermediate.LabelInstr +import prog8.compiler.intermediate.Opcode +import prog8.vm.RuntimeValue import java.io.File import java.util.* import kotlin.math.abs diff --git a/compiler/src/prog8/compiler/target/c64/AsmPatterns.kt b/compiler/src/prog8/compiler/target/c64/AsmPatterns.kt index 3dadf39c0..6acc64d75 100644 --- a/compiler/src/prog8/compiler/target/c64/AsmPatterns.kt +++ b/compiler/src/prog8/compiler/target/c64/AsmPatterns.kt @@ -3,11 +3,11 @@ package prog8.compiler.target.c64 import prog8.ast.base.printWarning import prog8.compiler.intermediate.Instruction import prog8.compiler.intermediate.Opcode +import prog8.compiler.target.c64.MachineDefinition.C64Zeropage import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_HEX +import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_PLUS1_HEX import prog8.compiler.target.c64.MachineDefinition.ESTACK_LO_HEX import prog8.compiler.target.c64.MachineDefinition.ESTACK_LO_PLUS1_HEX -import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_PLUS1_HEX -import prog8.compiler.target.c64.MachineDefinition.C64Zeropage import prog8.compiler.toHex // note: see https://wiki.nesdev.com/w/index.php/6502_assembly_optimisations diff --git a/compiler/src/prog8/compiler/target/c64/MachineDefinition.kt b/compiler/src/prog8/compiler/target/c64/MachineDefinition.kt index 526ee38d6..cc95f5ae8 100644 --- a/compiler/src/prog8/compiler/target/c64/MachineDefinition.kt +++ b/compiler/src/prog8/compiler/target/c64/MachineDefinition.kt @@ -1,6 +1,9 @@ package prog8.compiler.target.c64 -import prog8.compiler.* +import prog8.compiler.CompilationOptions +import prog8.compiler.CompilerException +import prog8.compiler.Zeropage +import prog8.compiler.ZeropageType import java.awt.Color import java.awt.image.BufferedImage import javax.imageio.ImageIO diff --git a/compiler/src/prog8/compiler/target/c64/SimpleAsm.kt b/compiler/src/prog8/compiler/target/c64/SimpleAsm.kt index 74c987244..ea14e355e 100644 --- a/compiler/src/prog8/compiler/target/c64/SimpleAsm.kt +++ b/compiler/src/prog8/compiler/target/c64/SimpleAsm.kt @@ -5,16 +5,15 @@ import prog8.compiler.intermediate.Instruction import prog8.compiler.intermediate.IntermediateProgram import prog8.compiler.intermediate.LabelInstr import prog8.compiler.intermediate.Opcode -import prog8.compiler.toHex -import prog8.vm.stackvm.Syscall -import prog8.vm.stackvm.syscallsForStackVm import prog8.compiler.target.c64.MachineDefinition.C64Zeropage import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_HEX +import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_PLUS1_HEX import prog8.compiler.target.c64.MachineDefinition.ESTACK_LO_HEX import prog8.compiler.target.c64.MachineDefinition.ESTACK_LO_PLUS1_HEX import prog8.compiler.target.c64.MachineDefinition.ESTACK_LO_PLUS2_HEX -import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_PLUS1_HEX -import prog8.compiler.target.c64.MachineDefinition.ESTACK_HI_PLUS2_HEX +import prog8.compiler.toHex +import prog8.vm.stackvm.Syscall +import prog8.vm.stackvm.syscallsForStackVm // note: see https://wiki.nesdev.com/w/index.php/6502_assembly_optimisations diff --git a/compiler/src/prog8/functions/BuiltinFunctions.kt b/compiler/src/prog8/functions/BuiltinFunctions.kt index 803538e6c..1566e73a1 100644 --- a/compiler/src/prog8/functions/BuiltinFunctions.kt +++ b/compiler/src/prog8/functions/BuiltinFunctions.kt @@ -1,6 +1,7 @@ package prog8.functions -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.Program import prog8.ast.base.* import prog8.ast.expressions.DirectMemoryRead import prog8.ast.expressions.IdentifierReference diff --git a/compiler/src/prog8/optimizer/ConstExprEvaluator.kt b/compiler/src/prog8/optimizer/ConstExprEvaluator.kt index dabe2f585..f0f1df372 100644 --- a/compiler/src/prog8/optimizer/ConstExprEvaluator.kt +++ b/compiler/src/prog8/optimizer/ConstExprEvaluator.kt @@ -1,6 +1,6 @@ package prog8.optimizer -import prog8.ast.* +import prog8.ast.IExpression import prog8.ast.base.* import prog8.ast.expressions.NumericLiteralValue import kotlin.math.pow diff --git a/compiler/src/prog8/optimizer/ConstantFolding.kt b/compiler/src/prog8/optimizer/ConstantFolding.kt index b7c7cdf24..26460ba70 100644 --- a/compiler/src/prog8/optimizer/ConstantFolding.kt +++ b/compiler/src/prog8/optimizer/ConstantFolding.kt @@ -1,6 +1,9 @@ package prog8.optimizer -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.IFunctionCall +import prog8.ast.IStatement +import prog8.ast.Program import prog8.ast.base.* import prog8.ast.expressions.* import prog8.ast.processing.IAstModifyingVisitor diff --git a/compiler/src/prog8/optimizer/Extensions.kt b/compiler/src/prog8/optimizer/Extensions.kt index 19cd7e62a..2e7cf0e4a 100644 --- a/compiler/src/prog8/optimizer/Extensions.kt +++ b/compiler/src/prog8/optimizer/Extensions.kt @@ -1,6 +1,6 @@ package prog8.optimizer -import prog8.ast.* +import prog8.ast.Program import prog8.ast.base.AstException import prog8.parser.ParsingFailedError diff --git a/compiler/src/prog8/optimizer/SimplifyExpressions.kt b/compiler/src/prog8/optimizer/SimplifyExpressions.kt index 6a17cfd54..a3486a4df 100644 --- a/compiler/src/prog8/optimizer/SimplifyExpressions.kt +++ b/compiler/src/prog8/optimizer/SimplifyExpressions.kt @@ -1,6 +1,8 @@ package prog8.optimizer -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.IStatement +import prog8.ast.Program import prog8.ast.base.AstException import prog8.ast.base.DataType import prog8.ast.base.IntegerDatatypes diff --git a/compiler/src/prog8/parser/ModuleParsing.kt b/compiler/src/prog8/parser/ModuleParsing.kt index a895e369a..89e034bb6 100644 --- a/compiler/src/prog8/parser/ModuleParsing.kt +++ b/compiler/src/prog8/parser/ModuleParsing.kt @@ -1,7 +1,8 @@ package prog8.parser import org.antlr.v4.runtime.* -import prog8.ast.* +import prog8.ast.Module +import prog8.ast.Program import prog8.ast.antlr.toAst import prog8.ast.base.Position import prog8.ast.base.SyntaxError diff --git a/compiler/src/prog8/vm/astvm/AstVm.kt b/compiler/src/prog8/vm/astvm/AstVm.kt index 149f37c54..875caadc6 100644 --- a/compiler/src/prog8/vm/astvm/AstVm.kt +++ b/compiler/src/prog8/vm/astvm/AstVm.kt @@ -1,15 +1,17 @@ package prog8.vm.astvm -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.INameScope +import prog8.ast.IStatement +import prog8.ast.Program import prog8.ast.base.* -import prog8.ast.base.initvarsSubName import prog8.ast.expressions.IdentifierReference import prog8.ast.expressions.NumericLiteralValue import prog8.ast.statements.* import prog8.compiler.target.c64.MachineDefinition +import prog8.compiler.target.c64.Petscii import prog8.vm.RuntimeValue import prog8.vm.RuntimeValueRange -import prog8.compiler.target.c64.Petscii import java.awt.EventQueue import java.io.CharConversionException import java.util.* diff --git a/compiler/src/prog8/vm/astvm/Expressions.kt b/compiler/src/prog8/vm/astvm/Expressions.kt index d9a44e667..582ced8d9 100644 --- a/compiler/src/prog8/vm/astvm/Expressions.kt +++ b/compiler/src/prog8/vm/astvm/Expressions.kt @@ -1,6 +1,7 @@ package prog8.vm.astvm -import prog8.ast.* +import prog8.ast.IExpression +import prog8.ast.Program import prog8.ast.base.ArrayElementTypes import prog8.ast.base.DataType import prog8.ast.base.FatalAstException diff --git a/compiler/src/prog8/vm/astvm/VariablesCreator.kt b/compiler/src/prog8/vm/astvm/VariablesCreator.kt index bb6cb3443..11c89c3f5 100644 --- a/compiler/src/prog8/vm/astvm/VariablesCreator.kt +++ b/compiler/src/prog8/vm/astvm/VariablesCreator.kt @@ -1,7 +1,11 @@ package prog8.vm.astvm -import prog8.ast.* -import prog8.ast.base.* +import prog8.ast.IStatement +import prog8.ast.Program +import prog8.ast.base.DataType +import prog8.ast.base.Position +import prog8.ast.base.Register +import prog8.ast.base.VarDeclType import prog8.ast.expressions.NumericLiteralValue import prog8.ast.expressions.ReferenceLiteralValue import prog8.ast.processing.IAstModifyingVisitor diff --git a/compiler/src/prog8/vm/stackvm/Program.kt b/compiler/src/prog8/vm/stackvm/Program.kt index 7432d133b..847a04a53 100644 --- a/compiler/src/prog8/vm/stackvm/Program.kt +++ b/compiler/src/prog8/vm/stackvm/Program.kt @@ -4,10 +4,13 @@ import prog8.ast.antlr.unescape import prog8.ast.base.* import prog8.ast.expressions.AddressOf import prog8.ast.expressions.IdentifierReference -import prog8.vm.RuntimeValue import prog8.compiler.HeapValues import prog8.compiler.IntegerOrAddressOf -import prog8.compiler.intermediate.* +import prog8.compiler.intermediate.Instruction +import prog8.compiler.intermediate.LabelInstr +import prog8.compiler.intermediate.Opcode +import prog8.compiler.intermediate.opcodesWithVarArgument +import prog8.vm.RuntimeValue import java.io.File import java.util.* import java.util.regex.Pattern diff --git a/compiler/src/prog8/vm/stackvm/StackVm.kt b/compiler/src/prog8/vm/stackvm/StackVm.kt index f7382feeb..e01a5c23a 100644 --- a/compiler/src/prog8/vm/stackvm/StackVm.kt +++ b/compiler/src/prog8/vm/stackvm/StackVm.kt @@ -1,19 +1,15 @@ package prog8.vm.stackvm -import prog8.ast.base.DataType -import prog8.ast.base.IterableDatatypes -import prog8.ast.base.NumericDatatypes -import prog8.ast.base.Register -import prog8.ast.base.initvarsSubName -import prog8.vm.astvm.BitmapScreenPanel -import prog8.vm.astvm.Memory -import prog8.vm.RuntimeValue +import prog8.ast.base.* import prog8.compiler.HeapValues import prog8.compiler.IntegerOrAddressOf import prog8.compiler.intermediate.Instruction import prog8.compiler.intermediate.Opcode import prog8.compiler.target.c64.Petscii import prog8.compiler.toHex +import prog8.vm.RuntimeValue +import prog8.vm.astvm.BitmapScreenPanel +import prog8.vm.astvm.Memory import java.io.File import java.io.PrintStream import java.util.* diff --git a/compiler/test/LiteralValueTests.kt b/compiler/test/LiteralValueTests.kt index aab9e9306..091536a4c 100644 --- a/compiler/test/LiteralValueTests.kt +++ b/compiler/test/LiteralValueTests.kt @@ -3,10 +3,13 @@ package prog8tests import org.junit.jupiter.api.Test import org.junit.jupiter.api.TestInstance import prog8.ast.base.DataType -import prog8.ast.expressions.NumericLiteralValue import prog8.ast.base.Position +import prog8.ast.expressions.NumericLiteralValue import prog8.ast.expressions.ReferenceLiteralValue -import kotlin.test.* +import kotlin.test.assertEquals +import kotlin.test.assertFalse +import kotlin.test.assertNotEquals +import kotlin.test.assertTrue private fun sameValueAndType(lv1: NumericLiteralValue, lv2: NumericLiteralValue): Boolean { diff --git a/compiler/test/StackVMOpcodeTests.kt b/compiler/test/StackVMOpcodeTests.kt index 047632395..d906b827b 100644 --- a/compiler/test/StackVMOpcodeTests.kt +++ b/compiler/test/StackVMOpcodeTests.kt @@ -8,10 +8,10 @@ import prog8.ast.base.ByteDatatypes import prog8.ast.base.DataType import prog8.ast.base.IterableDatatypes import prog8.ast.base.WordDatatypes -import prog8.vm.RuntimeValue import prog8.compiler.HeapValues import prog8.compiler.intermediate.Instruction import prog8.compiler.intermediate.Opcode +import prog8.vm.RuntimeValue import prog8.vm.stackvm.* import kotlin.test.* diff --git a/compiler/test/UnitTests.kt b/compiler/test/UnitTests.kt index d322fd506..da703041c 100644 --- a/compiler/test/UnitTests.kt +++ b/compiler/test/UnitTests.kt @@ -9,13 +9,13 @@ import prog8.ast.base.DataType import prog8.ast.base.Position import prog8.ast.expressions.NumericLiteralValue import prog8.ast.expressions.ReferenceLiteralValue -import prog8.vm.RuntimeValue import prog8.compiler.* -import prog8.compiler.target.c64.MachineDefinition.Mflpt5 +import prog8.compiler.target.c64.MachineDefinition.C64Zeropage import prog8.compiler.target.c64.MachineDefinition.FLOAT_MAX_NEGATIVE import prog8.compiler.target.c64.MachineDefinition.FLOAT_MAX_POSITIVE -import prog8.compiler.target.c64.MachineDefinition.C64Zeropage +import prog8.compiler.target.c64.MachineDefinition.Mflpt5 import prog8.compiler.target.c64.Petscii +import prog8.vm.RuntimeValue import java.io.CharConversionException import kotlin.test.*