Mercurial > hg > graal-jvmci-8
comparison graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java @ 7751:ef1b41ea0a90
Implemented an option to turn off generated generic generation using specializations in @Generic.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Fri, 08 Feb 2013 16:07:33 +0100 |
parents | 6343a09b2ec1 |
children | 06a7cd6aaf00 |
comparison
equal
deleted
inserted
replaced
7750:bdcb3cc47e16 | 7751:ef1b41ea0a90 |
---|---|
31 private final boolean generic; | 31 private final boolean generic; |
32 private final boolean uninitialized; | 32 private final boolean uninitialized; |
33 private final SpecializationThrowsData[] exceptions; | 33 private final SpecializationThrowsData[] exceptions; |
34 private SpecializationGuardData[] guards; | 34 private SpecializationGuardData[] guards; |
35 private ShortCircuitData[] shortCircuits; | 35 private ShortCircuitData[] shortCircuits; |
36 | 36 private boolean useSpecializationsForGeneric = true; |
37 private NodeData node; | 37 private NodeData node; |
38 | 38 |
39 public SpecializationData(TemplateMethod template, int order, SpecializationThrowsData[] exceptions) { | 39 public SpecializationData(TemplateMethod template, int order, SpecializationThrowsData[] exceptions) { |
40 super(template); | 40 super(template); |
41 this.order = order; | 41 this.order = order; |
95 | 95 |
96 public ShortCircuitData[] getShortCircuits() { | 96 public ShortCircuitData[] getShortCircuits() { |
97 return shortCircuits; | 97 return shortCircuits; |
98 } | 98 } |
99 | 99 |
100 void setUseSpecializationsForGeneric(boolean useSpecializationsForGeneric) { | |
101 this.useSpecializationsForGeneric = useSpecializationsForGeneric; | |
102 } | |
103 | |
104 public boolean isUseSpecializationsForGeneric() { | |
105 return useSpecializationsForGeneric; | |
106 } | |
107 | |
100 public SpecializationData findNextSpecialization() { | 108 public SpecializationData findNextSpecialization() { |
101 SpecializationData[] specializations = node.getSpecializations(); | 109 SpecializationData[] specializations = node.getSpecializations(); |
102 for (int i = 0; i < specializations.length - 1; i++) { | 110 for (int i = 0; i < specializations.length - 1; i++) { |
103 if (specializations[i] == this) { | 111 if (specializations[i] == this) { |
104 return specializations[i + 1]; | 112 return specializations[i + 1]; |