Module dev.civl.mc

Class TransformerFactory

java.lang.Object
dev.civl.mc.transform.IF.TransformerFactory

public class TransformerFactory extends Object
This class manages the set of transformations provided by CIVL. It provides a static method
invalid reference
#applyTransformer(Program, String, List, ASTBuilder)
to apply a certain transformer to a given program.
  • Constructor Details

    • TransformerFactory

      public TransformerFactory(dev.civl.abc.ast.IF.ASTFactory astFactory)
  • Method Details

    • getGeneralTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getGeneralTransformerRecord()
    • getContractTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getContractTransformerRecord(String targetFunction, CIVLConfiguration civlConfig)
    • getLoopContractTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getLoopContractTransformerRecord(CIVLConfiguration civlConfig)
      Returns:
      A TransformRecord for loop contract transformer
    • getAnnotationTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getAnnotationTransformerRecord()
    • getIOTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getIOTransformerRecord(CIVLConfiguration config)
    • getOpenMPSimplifierRecord

      public dev.civl.abc.transform.IF.TransformRecord getOpenMPSimplifierRecord(CIVLConfiguration config)
    • getMPI2CIVLTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getMPI2CIVLTransformerRecord()
    • getOpenMP2CIVLTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getOpenMP2CIVLTransformerRecord(CIVLConfiguration config)
    • getPthread2CIVLTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getPthread2CIVLTransformerRecord()
    • getCuda2CIVLTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getCuda2CIVLTransformerRecord()
    • getShortCircuitTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getShortCircuitTransformerRecord(CIVLConfiguration config)
      Creates a new instance of a ShortCircuitTransformer
      Parameters:
      config - A reference to CIVLConfiguration
      Returns:
      A TransformRecord of a ShortCircuitTransformer.
    • getIntOperationTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getIntOperationTransformerRecord(Map<String,String> macros, CIVLConfiguration config)
    • getComplexTransformerRecord

      public dev.civl.abc.transform.IF.TransformRecord getComplexTransformerRecord()
    • hasFunctionCalls

      public static boolean hasFunctionCalls(dev.civl.abc.ast.IF.AST ast, List<String> functions)
    • getOpenMPSimplifier

      public dev.civl.abc.transform.IF.Transformer getOpenMPSimplifier(CIVLConfiguration config)
    • getOpenMP2CIVLTransformer

      public dev.civl.abc.transform.IF.Transformer getOpenMP2CIVLTransformer(CIVLConfiguration config)