X-Git-Url: https://code.kerkeslager.com/?a=blobdiff_plain;f=main.py;h=198072e52153a52e5572842092d4cdd172788dff;hb=e60f2b20f17609da9b093ac1e08d688bf87bfb4a;hp=c649a0bb98b4a31335b9dab67e860bb879746212;hpb=cccc042f21a9c90cbd78cbad28288160a5899a33;p=fur diff --git a/main.py b/main.py index c649a0b..198072e 100644 --- a/main.py +++ b/main.py @@ -1,9 +1,11 @@ import sys import conversion +import crossplatform_ir_generation import desugaring import generation import normalization +import optimization import parsing import tokenization import transformation @@ -18,6 +20,8 @@ parsed = parsing.parse(tokens) desugared = desugaring.desugar(parsed) normalized = normalization.normalize(desugared) converted = conversion.convert(normalized) + +# This is the C generation path transformed = transformation.transform(converted) generated = generation.generate(transformed) @@ -26,3 +30,9 @@ destination_path = source_path + '.c' with open(destination_path, 'w') as f: f.write(generated) + +# This is the crossplatform IR generation path +crossplatform_ir = crossplatform_ir_generation.generate(converted) +optimized = optimization.optimize(crossplatform_ir) +outputted = crossplatform_ir_generation.output(optimized) +print(outputted)