comparison agent/src/share/classes/sun/jvm/hotspot/runtime/StackValue.java @ 818:b109e761e927

6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14 Summary: Disable escape analysis when jvmti/debugger is used. Add support for EA ibto SA. Reviewed-by: never
author kvn
date Tue, 09 Jun 2009 16:19:10 -0700
parents a61af66fc99e
children bd02caa94611
comparison
equal deleted inserted replaced
793:eacd97c88873 818:b109e761e927
35 35
36 public StackValue() { 36 public StackValue() {
37 type = BasicType.getTConflict(); 37 type = BasicType.getTConflict();
38 } 38 }
39 39
40 public StackValue(OopHandle h) { 40 public StackValue(OopHandle h, long scalar_replaced) {
41 handleValue = h; 41 handleValue = h;
42 type = BasicType.getTObject(); 42 type = BasicType.getTObject();
43 integerValue = scalar_replaced;
44 Assert.that(integerValue == 0 || handleValue == null, "not null object should not be marked as scalar replaced");
43 } 45 }
44 46
45 public StackValue(long i) { 47 public StackValue(long i) {
46 integerValue = i; 48 integerValue = i;
47 type = BasicType.getTInt(); 49 type = BasicType.getTInt();
55 public OopHandle getObject() { 57 public OopHandle getObject() {
56 if (Assert.ASSERTS_ENABLED) { 58 if (Assert.ASSERTS_ENABLED) {
57 Assert.that(type == BasicType.getTObject(), "type check"); 59 Assert.that(type == BasicType.getTObject(), "type check");
58 } 60 }
59 return handleValue; 61 return handleValue;
62 }
63
64 boolean objIsScalarReplaced() {
65 if (Assert.ASSERTS_ENABLED) {
66 Assert.that(type == BasicType.getTObject(), "type check");
67 }
68 return integerValue != 0;
60 } 69 }
61 70
62 public long getInteger() { 71 public long getInteger() {
63 if (Assert.ASSERTS_ENABLED) { 72 if (Assert.ASSERTS_ENABLED) {
64 Assert.that(type == BasicType.getTInt(), "type check"); 73 Assert.that(type == BasicType.getTInt(), "type check");