提交 4ed87548 编写于 作者: Z zgu

8187629: NMT: Memory miscounting in compiler (C2)

Summary: Fixed memory counting in compiler (C2)
Reviewed-by: adinn, cjplummer, kvn
上级 9a4583ad
/* /*
* Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -49,11 +49,11 @@ class ResourceArea: public Arena { ...@@ -49,11 +49,11 @@ class ResourceArea: public Arena {
debug_only(static int _warned;) // to suppress multiple warnings debug_only(static int _warned;) // to suppress multiple warnings
public: public:
ResourceArea() : Arena(mtThread) { ResourceArea(MEMFLAGS flags = mtThread) : Arena(flags) {
debug_only(_nesting = 0;) debug_only(_nesting = 0;)
} }
ResourceArea(size_t init_size) : Arena(mtThread, init_size) { ResourceArea(size_t init_size, MEMFLAGS flags = mtThread) : Arena(flags, init_size) {
debug_only(_nesting = 0;); debug_only(_nesting = 0;);
} }
......
...@@ -338,8 +338,8 @@ void PhaseChaitin::Register_Allocate() { ...@@ -338,8 +338,8 @@ void PhaseChaitin::Register_Allocate() {
_alternate = 0; _alternate = 0;
_matcher._allocation_started = true; _matcher._allocation_started = true;
ResourceArea split_arena; // Arena for Split local resources ResourceArea split_arena(mtCompiler); // Arena for Split local resources
ResourceArea live_arena; // Arena for liveness & IFG info ResourceArea live_arena(mtCompiler); // Arena for liveness & IFG info
ResourceMark rm(&live_arena); ResourceMark rm(&live_arena);
// Need live-ness for the IFG; need the IFG for coalescing. If the // Need live-ness for the IFG; need the IFG for coalescing. If the
......
...@@ -79,7 +79,7 @@ Matcher::Matcher() ...@@ -79,7 +79,7 @@ Matcher::Matcher()
_register_save_type(register_save_type), _register_save_type(register_save_type),
_ruleName(ruleName), _ruleName(ruleName),
_allocation_started(false), _allocation_started(false),
_states_arena(Chunk::medium_size), _states_arena(Chunk::medium_size, mtCompiler),
_visited(&_states_arena), _visited(&_states_arena),
_shared(&_states_arena), _shared(&_states_arena),
_dontcare(&_states_arena) { _dontcare(&_states_arena) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册