Mercurial > hg > truffle
comparison src/share/vm/opto/chaitin.hpp @ 6632:a1c7f6472621
7148109: C2 compiler consumes too much heap resources
Summary: Add split_arena to allocate temporary arrays in PhaseChaitin::Split() and free them on method's exit.
Reviewed-by: twisti
author | kvn |
---|---|
date | Mon, 27 Aug 2012 09:46:38 -0700 |
parents | 8c92982cbbc4 |
children | 056ab43544a4 |
comparison
equal
deleted
inserted
replaced
6625:153776c4cb6f | 6632:a1c7f6472621 |
---|---|
468 // Helper function which implements biasing heuristic | 468 // Helper function which implements biasing heuristic |
469 OptoReg::Name bias_color( LRG &lrg, int chunk ); | 469 OptoReg::Name bias_color( LRG &lrg, int chunk ); |
470 | 470 |
471 // Split uncolorable live ranges | 471 // Split uncolorable live ranges |
472 // Return new number of live ranges | 472 // Return new number of live ranges |
473 uint Split( uint maxlrg ); | 473 uint Split(uint maxlrg, ResourceArea* split_arena); |
474 | 474 |
475 // Copy 'was_spilled'-edness from one Node to another. | 475 // Copy 'was_spilled'-edness from one Node to another. |
476 void copy_was_spilled( Node *src, Node *dst ); | 476 void copy_was_spilled( Node *src, Node *dst ); |
477 // Set the 'spilled_once' or 'spilled_twice' flag on a node. | 477 // Set the 'spilled_once' or 'spilled_twice' flag on a node. |
478 void set_was_spilled( Node *n ); | 478 void set_was_spilled( Node *n ); |