Changeset 3275


Ignore:
Timestamp:
Jun 6, 2013, 4:43:39 PM (5 years ago)
Author:
ksherdy
Message:

Pruned 'Accessor.ifTest()' if favour of 'Accessor.condition()'. Updated visitor to use 'Accessor.condition()'.

Location:
proto/pabloj/trunk/src/toolchain/pabloS
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • proto/pabloj/trunk/src/toolchain/pabloS/ast/Accessors.java

    r3271 r3275  
    7474        */
    7575
     76        public static boolean isAssignmentRhs(ASTNode node) {
     77                return isAssignNodeRhs(node) || isLocalVarDeclNodeRhs(node);
     78        }
     79       
    7680        ////////////////////////////////////////////////////////////////////////////
    7781        // AssignNode
     
    8993        }
    9094       
     95        public static boolean isAssignNodeRhs(ASTNode node) {
     96                ASTNode parent = node.getParent();
     97                if ((parent instanceof AssignNode)) {
     98                        if (Accessors.rhs((AssignNode)parent) == node) {
     99                                return true;
     100                        }
     101                }
     102                return false;
     103        }
    91104       
    92105        ////////////////////////////////////////////////////////////////////////////
     
    106119                return node.child(2);
    107120        }               
     121
     122        public static boolean isLocalVarDeclNodeRhs(ASTNode node) {
     123                ASTNode parent = node.getParent();
     124                if ((parent instanceof LocalVarDeclNode)) {
     125                        if (Accessors.rhs((LocalVarDeclNode)parent) == node) {
     126                                return true;
     127                        }
     128                }
     129                return false;
     130        }
    108131       
    109132        public static String assignOperatorLexeme(LocalVarDeclNode node) {
     
    147170        // IfStmtNode
    148171        ////////////////////////////////////////////////////////////////////////////
    149         public static ASTNode ifTest(IfStmtNode node) {
     172
     173        public static ASTNode condition(IfStmtNode node) {
    150174                return (ASTNode) node.child(0);
    151         }       
    152         public static ASTNode condition(IfStmtNode node) {
    153                 return ifTest(node);
    154175        }
    155176
  • proto/pabloj/trunk/src/toolchain/pabloS/lang/BuiltinCallUtil.java

    r3210 r3275  
    3737        return false;
    3838    }
     39    public static boolean isCarry(FuncCallNode node) {
     40        return isCarry1(node) || isCarryN(node);
     41    }
    3942   
    4043    // guard invocation with isCarryN
     
    4649        }
    4750   
    48 
    4951        ///////////////////////////////////////////////////////////////////////////////////
    5052        // builtin(node) - what builtin does this node invoke?
  • proto/pabloj/trunk/src/toolchain/pabloS/transformer/visitors/ConvertBitwiseBooleanToIDISACalls.java

    r3271 r3275  
    116116        static private class Bitwise2IDISAGeneralXFormer extends VoidVisitor.Default {
    117117                public void visitLeave(IfStmtNode node) {
    118                         ASTNode condition = Accessors.ifTest(node);                     
     118                        ASTNode condition = Accessors.condition(node);                 
    119119                        insertANYintoCondition(node, condition);
    120120                }
Note: See TracChangeset for help on using the changeset viewer.