Ignore:
Timestamp:
Dec 2, 2012, 12:50:44 AM (6 years ago)
Author:
ksherdy
Message:

General refactoring.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • proto/pablo/src/application/Test.java

    r2702 r2710  
    2525import compiler.lang.pablo.Builtins2Lang;
    2626import compiler.ast.visitors.*;
    27 import compiler.semanticAnalyzer.visitors.AdvanceCombinerXFormer;
    28 import compiler.semanticAnalyzer.visitors.AugAssignXFormer;
    29 import compiler.semanticAnalyzer.visitors.Bitwise2IDISAXFormer;
    30 import compiler.semanticAnalyzer.visitors.FinalBlockXFormer;
    31 import compiler.semanticAnalyzer.visitors.Pablo2CarryXFormer;
    32 import compiler.semanticAnalyzer.visitors.StreamFuncVisitor;
    33 import compiler.semanticAnalyzer.visitors.helpers.AssertCompare;
     27import compiler.backend.visitors.AdvanceCombinerXFormer;
     28import compiler.backend.visitors.AugAssignXFormer;
     29import compiler.backend.visitors.Bitwise2IDISAXFormer;
     30import compiler.backend.visitors.Pablo2CarryXFormer;
     31import compiler.backend.visitors.StreamFuncVisitor;
     32import compiler.backend.visitors.helpers.AssertCompare;
    3433import compiler.test.*;
    3534
     
    4847            BITWISE2IDISA("Bitwise2IDISAXFormer", true),
    4948            CARRYCOUNTER("CarryCounterVisitor", true),
    50             PABLO2CARRYQCI("Pablo2CarryQCiXFormer", true),
     49            PABLO2CARRYQNOTFINALBLOCK("Pablo2CarryQXFormer/NotFinalBlock", true),
     50            PABLO2CARRYQFINALBLOCK("Pablo2CarryQXFormer/FinalBlock", true),
    5151            CARRYINITTOONELIST("CarryInitToOneListVisitor", true),
    52             STREAMFUNCVISITOR("StreamFuncVisitor", true),
    53             FINALBLOCKXFORMERISFINAL("FinalBlockXFormer/FinalBlock",true),
    54             FINALBLOCKXFORMERISNOTFINAL("FinalBlockXFormer/NotFinalBlock",true);
     52            STREAMFUNCVISITOR("StreamFuncVisitor", true);
    5553            //CARRYQINTROXFORMER("",true); // TODO
    5654            //ASSERTZERO("",true);// TODO
     
    7876                Tokens.setPrintLevel(Tokens.Level.FULL);       
    7977                File testBase = new File(testDirectoryName);
    80 
     78                boolean isFinalBlock;
     79               
    8180                for(Visitor test: Visitor.values()) {
    82                        
    83                         System.out.println(test.name());
    8481                       
    8582                        if (test.addTest()) {
     
    9188                               
    9289                                for(File file: files) {
     90                                       
    9391                                        String fileAbsolutePath = file.getAbsolutePath();
    9492                                        System.out.println("Running: " + fileAbsolutePath);
     93                                       
    9594                                       
    9695                                        switch(test) {
     
    109108                                                case CARRYCOUNTER:
    110109                                                        // TODO
    111                                                         break;                                 
    112                                                 case PABLO2CARRYQCI:
    113                                                         pablo2CarryQTest(fileAbsolutePath, true);
     110                                                        break;
     111                                                case PABLO2CARRYQFINALBLOCK:
     112                                                        isFinalBlock = true;
     113                                                        pablo2CarryQTest(fileAbsolutePath, isFinalBlock);
    114114                                                        break; 
    115                                                 case FINALBLOCKXFORMERISFINAL:
    116                                                         finalBlockXFormerTest(fileAbsolutePath, true);
    117                                                         break;
    118                                                 case FINALBLOCKXFORMERISNOTFINAL:
    119                                                         finalBlockXFormerTest(fileAbsolutePath, false);
    120                                                         break;                                                 
     115                                                case PABLO2CARRYQNOTFINALBLOCK:
     116                                                        isFinalBlock = false;
     117                                                        pablo2CarryQTest(fileAbsolutePath, isFinalBlock);
     118                                                        break;                 
    121119                                                case CARRYINITTOONELIST:
    122120                                                        // TODO
     
    204202         * @throws FileNotFoundException - Final Block
    205203         */
    206         public static void pablo2CarryQTest(String fileAbsolutePath, boolean ciMode) throws FileNotFoundException {
     204        public static void pablo2CarryQTest(String fileAbsolutePath, boolean isFinalBlock) throws FileNotFoundException {
    207205                LexicalController lexController = LexicalController.make(fileAbsolutePath);
    208206                ASTNode syntaxTree = Parser.parse(lexController);
    209                
    210207               
    211208                StreamFuncVisitor streamFuncVisitor = new StreamFuncVisitor(syntaxTree);
     
    218215                        CarrySet2Lang carrySet2CPP = new CarrySet2CPP();
    219216                        Pablo2CarryXFormer pablo2CarryQ = new Pablo2CarryXFormer(value, builtins2CPP, carrySet2CPP);
    220                         pablo2CarryQ.XForm(ciMode);                     
    221                        
     217                        pablo2CarryQ.XForm(isFinalBlock);
    222218                }   
    223219               
     
    226222               
    227223        }       
    228 
    229         /**
    230          * @param fileAbsolutePath
    231          * @throws FileNotFoundException - Final Block
    232          */
    233         public static void finalBlockXFormerTest(String fileAbsolutePath, boolean isFinalBlock) throws FileNotFoundException {
    234                 LexicalController lexController = LexicalController.make(fileAbsolutePath);
    235                 ASTNode syntaxTree = Parser.parse(lexController);
    236                
    237                
    238                 StreamFuncVisitor streamFuncVisitor = new StreamFuncVisitor(syntaxTree);
    239                 Map<String, ASTNode> streamFuncMap = streamFuncVisitor.makeStreamFuncMap();
    240                
    241                 Builtins2Lang builtins2CPP = new Builtins2CPP();
    242                
    243                 for (Map.Entry<String, ASTNode> entry : streamFuncMap.entrySet()) {     
    244                         ASTNode value = entry.getValue();                               
    245                         CarrySet2Lang carrySet2CPP = new CarrySet2CPP();
    246                         FinalBlockXFormer finalBlockXFormer = new FinalBlockXFormer(value, builtins2CPP);
    247                         finalBlockXFormer.XForm(isFinalBlock);                 
    248                        
    249                 }   
    250                
    251                 AssertCompare astTest = new AssertCompare(syntaxTree);
    252                 astTest.compareAssignNodes();
    253                
    254         }               
    255224       
    256225//  CarryCounter carryCounter = new CarryCounter(node);
Note: See TracChangeset for help on using the changeset viewer.