in c with concepts
play

in C++ with concepts Intro Optimizing compiler Transformations - PowerPoint PPT Presentation

Axioms as generic rewrite rules in C++ with concepts Intro Optimizing compiler Transformations i+0 i s + string "" s Rewrite on built in types User-defined types Generic Concepts Rewrite rules


  1. Axioms as generic rewrite rules in C++ with concepts

  2. Intro • Optimizing compiler • Transformations • i+0 → i • s + string �""� → s • Rewrite on built in types • User-defined types

  3. Generic Concepts

  4. Rewrite rules • Rewrite rules • Conditional rewrite rules

  5. Generating rewrite rules Instantiate axioms Extract rewrite rules from axiom and divide a rule into two functions: LHS and RHS

  6. Generating rewrite rules Translate a rule function into an intermediate representation

  7. Generating rewrite rules Eliminate function abstractions

  8. Generating rewrite rules Construct the rule patterns and put them in the rule repository

  9. Applying rewrite rules • For a) and b) match rule pattern with AST of each statement • For c) first inline then match • Abstraction index

  10. Processing pipeline

  11. Evaluation • Abstraction penalty: ratio of the execution time of an abstracted implementation over a direct implementation • Wraps a varying number of double values into user-defined classes • A is with optimizations, B without • Compilation time increased by a factor of 1.0035

Recommend


More recommend