changeset 8284:1756b12d2246

Make optimistic optimizations customizable.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Thu, 14 Mar 2013 19:00:42 +0100
parents 0269ef50021f
children a8aab1ca133c
files graal/com.oracle.graal.phases/src/com/oracle/graal/phases/OptimisticOptimizations.java
diffstat 1 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/OptimisticOptimizations.java	Thu Mar 14 12:19:01 2013 +0100
+++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/OptimisticOptimizations.java	Thu Mar 14 19:00:42 2013 +0100
@@ -60,6 +60,22 @@
         }
     }
 
+    public OptimisticOptimizations remove(Optimization... optimizations) {
+        Set<Optimization> newOptimizations = new HashSet<>(enabledOpts);
+        for (Optimization o : optimizations) {
+            newOptimizations.remove(o);
+        }
+        return new OptimisticOptimizations(newOptimizations);
+    }
+
+    public OptimisticOptimizations add(Optimization... optimizations) {
+        Set<Optimization> newOptimizations = new HashSet<>(enabledOpts);
+        for (Optimization o : optimizations) {
+            newOptimizations.add(o);
+        }
+        return new OptimisticOptimizations(newOptimizations);
+    }
+
     private OptimisticOptimizations(Set<Optimization> enabledOpts) {
         this.enabledOpts = enabledOpts;
     }