src/share/vm/ci/ciMethodData.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/ci/ciMethodData.hpp
src/share/vm/ci/ciMethodData.hpp
Print this page
rev 5463 : 8026251: New type profiling points: parameters to methods
Summary: x86 interpreter and c1 type profiling for parameters on method entries
Reviewed-by:
rev 5464 : 8024070: C2 needs some form of type speculation
Summary: record unused type profile information with type system, propagate and use it.
Reviewed-by:
*** 98,107 ****
--- 98,111 ----
ciKlass* valid_type(int i) const {
return valid_ciklass(type(i));
}
+ bool maybe_null(int i) const {
+ return was_null_seen(type(i));
+ }
+
#ifndef PRODUCT
void print_data_on(outputStream* st) const;
#endif
};
*** 111,120 ****
--- 115,128 ----
ciKlass* valid_type() const {
return valid_ciklass(type());
}
+ bool maybe_null() const {
+ return was_null_seen(type());
+ }
+
#ifndef PRODUCT
void print_data_on(outputStream* st) const;
#endif
};
*** 152,161 ****
--- 160,177 ----
ciKlass* valid_return_type() const {
assert(has_return(), "no ret type profiling data");
return ret()->valid_type();
}
+ bool argument_maybe_null(int i) const {
+ return args()->maybe_null(i);
+ }
+
+ bool return_maybe_null() const {
+ return ret()->maybe_null();
+ }
+
#ifndef PRODUCT
void print_data_on(outputStream* st) const;
#endif
};
*** 258,267 ****
--- 274,291 ----
ciKlass* valid_return_type() const {
assert(has_return(), "no ret type profiling data");
return ret()->valid_type();
}
+ bool argument_maybe_null(int i) const {
+ return args()->maybe_null(i);
+ }
+
+ bool return_maybe_null() const {
+ return ret()->maybe_null();
+ }
+
#ifndef PRODUCT
void print_data_on(outputStream* st) const;
#endif
};
*** 303,312 ****
--- 327,340 ----
ciKlass* valid_parameter_type(int i) const {
return parameters()->valid_type(i);
}
+ bool parameter_maybe_null(int i) const {
+ return parameters()->maybe_null(i);
+ }
+
#ifndef PRODUCT
void print_data_on(outputStream* st) const;
#endif
};
src/share/vm/ci/ciMethodData.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File