2465 |
2465 |
2466 // frequently used constants |
2466 // frequently used constants |
2467 // Allocate them with new so they are never destroyed (otherwise, a |
2467 // Allocate them with new so they are never destroyed (otherwise, a |
2468 // forced exit could destroy these objects while they are still in |
2468 // forced exit could destroy these objects while they are still in |
2469 // use). |
2469 // use). |
2470 ConstantOopWriteValue* LinearScan::_oop_null_scope_value = new (ResourceObj::C_HEAP) ConstantOopWriteValue(NULL); |
2470 ConstantOopWriteValue* LinearScan::_oop_null_scope_value = new (ResourceObj::C_HEAP, mtCompiler) ConstantOopWriteValue(NULL); |
2471 ConstantIntValue* LinearScan::_int_m1_scope_value = new (ResourceObj::C_HEAP) ConstantIntValue(-1); |
2471 ConstantIntValue* LinearScan::_int_m1_scope_value = new (ResourceObj::C_HEAP, mtCompiler) ConstantIntValue(-1); |
2472 ConstantIntValue* LinearScan::_int_0_scope_value = new (ResourceObj::C_HEAP) ConstantIntValue(0); |
2472 ConstantIntValue* LinearScan::_int_0_scope_value = new (ResourceObj::C_HEAP, mtCompiler) ConstantIntValue(0); |
2473 ConstantIntValue* LinearScan::_int_1_scope_value = new (ResourceObj::C_HEAP) ConstantIntValue(1); |
2473 ConstantIntValue* LinearScan::_int_1_scope_value = new (ResourceObj::C_HEAP, mtCompiler) ConstantIntValue(1); |
2474 ConstantIntValue* LinearScan::_int_2_scope_value = new (ResourceObj::C_HEAP) ConstantIntValue(2); |
2474 ConstantIntValue* LinearScan::_int_2_scope_value = new (ResourceObj::C_HEAP, mtCompiler) ConstantIntValue(2); |
2475 LocationValue* _illegal_value = new (ResourceObj::C_HEAP) LocationValue(Location()); |
2475 LocationValue* _illegal_value = new (ResourceObj::C_HEAP, mtCompiler) LocationValue(Location()); |
2476 |
2476 |
2477 void LinearScan::init_compute_debug_info() { |
2477 void LinearScan::init_compute_debug_info() { |
2478 // cache for frequently used scope values |
2478 // cache for frequently used scope values |
2479 // (cpu registers and stack slots) |
2479 // (cpu registers and stack slots) |
2480 _scope_value_cache = ScopeValueArray((LinearScan::nof_cpu_regs + frame_map()->argcount() + max_spills()) * 2, NULL); |
2480 _scope_value_cache = ScopeValueArray((LinearScan::nof_cpu_regs + frame_map()->argcount() + max_spills()) * 2, NULL); |