Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
static A test_helper(Object o) { // this includes a check for null with both branches taken return (A)o; } // Loop is unswitched because of the test null for null from the // checkcast above, unsafe access is copied in each branch, the // compiler sees a memory access to a null object static int test1(Object o, long offset) { int f = 0; for (int i = 0; i < 100; i++) { A a = test_helper(o); f = UNSAFE.getInt(a, offset); } return f; } Results in: # Internal Error (/home/roland/hs/hotspot/src/share/vm/opto/compile.cpp:1720), pid=24319, tid=24364 # assert(flat != TypePtr::BOTTOM) failed: cannot alias-analyze an untyped ptr: adr_type = NULL+12
|