125 return this;
126 }
127 return copyWith(false, true);
128 }
129
130 @Override
131 public boolean equals(Object obj) {
132 if (this == obj) {
133 return true;
134 }
135 if (obj == null || getClass() != obj.getClass()) {
136 return false;
137 }
138 AbstractPointerStamp other = (AbstractPointerStamp) obj;
139 return this.alwaysNull == other.alwaysNull && this.nonNull == other.nonNull;
140 }
141
142 @Override
143 public Constant asConstant() {
144 if (alwaysNull) {
145 return JavaConstant.NULL_POINTER;
146 } else {
147 return null;
148 }
149 }
150
151 @Override
152 public JavaKind getStackKind() {
153 return JavaKind.Illegal;
154 }
155 }
|
125 return this;
126 }
127 return copyWith(false, true);
128 }
129
130 @Override
131 public boolean equals(Object obj) {
132 if (this == obj) {
133 return true;
134 }
135 if (obj == null || getClass() != obj.getClass()) {
136 return false;
137 }
138 AbstractPointerStamp other = (AbstractPointerStamp) obj;
139 return this.alwaysNull == other.alwaysNull && this.nonNull == other.nonNull;
140 }
141
142 @Override
143 public Constant asConstant() {
144 if (alwaysNull) {
145 return nullConstant();
146 }
147 return super.asConstant();
148 }
149
150 public JavaConstant nullConstant() {
151 return JavaConstant.NULL_POINTER;
152 }
153
154 @Override
155 public JavaKind getStackKind() {
156 return JavaKind.Illegal;
157 }
158 }
|