comparison graal/com.oracle.truffle.object/src/com/oracle/truffle/object/ShapeImpl.java @ 19734:b53f87e24a7b

Truffle: deactivate assertion that is cause performance problems
author Christian Wirth <christian.wirth@oracle.com>
date Tue, 10 Mar 2015 09:22:10 +0100
parents 7d5a0223dc44
children de8880bbf2e1
comparison
equal deleted inserted replaced
19733:415975c5550b 19734:b53f87e24a7b
352 * @see #addProperty(Property) 352 * @see #addProperty(Property)
353 */ 353 */
354 private ShapeImpl addPropertyInternal(Property prop) { 354 private ShapeImpl addPropertyInternal(Property prop) {
355 CompilerAsserts.neverPartOfCompilation(); 355 CompilerAsserts.neverPartOfCompilation();
356 assert prop.isShadow() || !(this.hasProperty(prop.getKey())) : "duplicate property " + prop.getKey(); 356 assert prop.isShadow() || !(this.hasProperty(prop.getKey())) : "duplicate property " + prop.getKey();
357 assert !getPropertyListInternal(false).contains(prop); 357 // assertion caused performance issues on e.g. testv8 regress-619.js
358 // assert !getPropertyListInternal(false).contains(prop);
358 359
359 AddPropertyTransition addTransition = new AddPropertyTransition(prop); 360 AddPropertyTransition addTransition = new AddPropertyTransition(prop);
360 ShapeImpl cachedShape = queryTransition(addTransition); 361 ShapeImpl cachedShape = queryTransition(addTransition);
361 if (cachedShape != null) { 362 if (cachedShape != null) {
362 return cachedShape; 363 return cachedShape;