# HG changeset patch # User thartmann # Date 1459871504 -7200 # Node ID f13632a2a38985aa449217277436afa6e9fbe49b # Parent 8604d4659ceee1298bea1243a7708ba4ea375104 8151724: Remove -XX:GenerateCompilerNullChecks Summary: Removed the broken GenerateCompilerNullChecks flag. Reviewed-by: zmajo, kvn diff -r 8604d4659cee -r f13632a2a389 hotspot/src/share/vm/c1/c1_LIRAssembler.cpp --- a/hotspot/src/share/vm/c1/c1_LIRAssembler.cpp Tue Apr 05 10:11:07 2016 +0000 +++ b/hotspot/src/share/vm/c1/c1_LIRAssembler.cpp Tue Apr 05 17:51:44 2016 +0200 @@ -556,17 +556,16 @@ leal(op->in_opr(), op->result_opr()); break; - case lir_null_check: - if (GenerateCompilerNullChecks) { - ImplicitNullCheckStub* stub = add_debug_info_for_null_check_here(op->info()); + case lir_null_check: { + ImplicitNullCheckStub* stub = add_debug_info_for_null_check_here(op->info()); - if (op->in_opr()->is_single_cpu()) { - _masm->null_check(op->in_opr()->as_register(), stub->entry()); - } else { - Unimplemented(); - } + if (op->in_opr()->is_single_cpu()) { + _masm->null_check(op->in_opr()->as_register(), stub->entry()); + } else { + Unimplemented(); } break; + } case lir_monaddr: monitor_address(op->in_opr()->as_constant_ptr()->as_jint(), op->result_opr()); diff -r 8604d4659cee -r f13632a2a389 hotspot/src/share/vm/c1/c1_LIRGenerator.cpp --- a/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp Tue Apr 05 10:11:07 2016 +0000 +++ b/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp Tue Apr 05 17:51:44 2016 +0200 @@ -2041,8 +2041,7 @@ // to avoid a fixed interval with an oop during the null check. // Use a copy of the CodeEmitInfo because debug information is // different for null_check and throw. - if (GenerateCompilerNullChecks && - (x->exception()->as_NewInstance() == NULL && x->exception()->as_ExceptionObject() == NULL)) { + if (x->exception()->as_NewInstance() == NULL && x->exception()->as_ExceptionObject() == NULL) { // if the exception object wasn't created using new then it might be null. __ null_check(exception_opr, new CodeEmitInfo(info, x->state()->copy(ValueStack::ExceptionState, x->state()->bci()))); } diff -r 8604d4659cee -r f13632a2a389 hotspot/src/share/vm/opto/graphKit.cpp --- a/hotspot/src/share/vm/opto/graphKit.cpp Tue Apr 05 10:11:07 2016 +0000 +++ b/hotspot/src/share/vm/opto/graphKit.cpp Tue Apr 05 17:51:44 2016 +0200 @@ -1190,11 +1190,6 @@ bool speculative) { assert(!assert_null || null_control == NULL, "not both at once"); if (stopped()) return top(); - if (!GenerateCompilerNullChecks && !assert_null && null_control == NULL) { - // For some performance testing, we may wish to suppress null checking. - value = cast_not_null(value); // Make it appear to be non-null (4962416). - return value; - } NOT_PRODUCT(explicit_null_checks_inserted++); // Construct NULL check diff -r 8604d4659cee -r f13632a2a389 hotspot/src/share/vm/runtime/globals.hpp --- a/hotspot/src/share/vm/runtime/globals.hpp Tue Apr 05 10:11:07 2016 +0000 +++ b/hotspot/src/share/vm/runtime/globals.hpp Tue Apr 05 17:51:44 2016 +0200 @@ -2516,9 +2516,6 @@ "generate locking/unlocking code for synchronized methods and " \ "monitors") \ \ - develop(bool, GenerateCompilerNullChecks, true, \ - "Generate explicit null checks for loads/stores/calls") \ - \ develop(bool, GenerateRangeChecks, true, \ "Generate range checks for array accesses") \ \