comparison src/share/vm/c1/c1_GraphBuilder.cpp @ 2002:ac637b7220d1

6985015: C1 needs to support compressed oops Summary: This change implements compressed oops for C1 for x64 and sparc. The changes are mostly on the codegen level, with a few exceptions when we do access things outside of the heap that are uncompressed from the IR. Compressed oops are now also enabled with tiered. Reviewed-by: twisti, kvn, never, phh
author iveresov
date Tue, 30 Nov 2010 23:23:40 -0800
parents f95d63e2154a
children 5ddfcf4b079e
comparison
equal deleted inserted replaced
1972:f95d63e2154a 2002:ac637b7220d1
2793 get = append(new Constant(objectNull)); 2793 get = append(new Constant(objectNull));
2794 } else { 2794 } else {
2795 get = append(new UnsafeGetRaw(as_BasicType(local->type()), e, 2795 get = append(new UnsafeGetRaw(as_BasicType(local->type()), e,
2796 append(new Constant(new IntConstant(offset))), 2796 append(new Constant(new IntConstant(offset))),
2797 0, 2797 0,
2798 true)); 2798 true /*unaligned*/, true /*wide*/));
2799 } 2799 }
2800 _state->store_local(index, get); 2800 _state->store_local(index, get);
2801 } 2801 }
2802 2802
2803 // the storage for the OSR buffer is freed manually in the LIRGenerator. 2803 // the storage for the OSR buffer is freed manually in the LIRGenerator.