hotspot/src/share/vm/opto/chaitin.cpp

Print this page
rev 611 : Merge

*** 1,10 **** #ifdef USE_PRAGMA_IDENT_SRC #pragma ident "@(#)chaitin.cpp 1.116 07/09/28 10:23:12 JVM" #endif /* ! * Copyright 2000-2007 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,10 ---- #ifdef USE_PRAGMA_IDENT_SRC #pragma ident "@(#)chaitin.cpp 1.116 07/09/28 10:23:12 JVM" #endif /* ! * Copyright 2000-2008 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 441,453 **** _framesize = C->out_preserve_stack_slots(); else _framesize = _max_reg -_matcher._new_SP; assert((int)(_matcher._new_SP+_framesize) >= (int)_matcher._out_arg_limit, "framesize must be large enough"); // This frame must preserve the required fp alignment ! const int stack_alignment_in_words = Matcher::stack_alignment_in_slots(); ! if (stack_alignment_in_words > 0) ! _framesize = round_to(_framesize, Matcher::stack_alignment_in_bytes()); assert( _framesize >= 0 && _framesize <= 1000000, "sanity check" ); #ifndef PRODUCT _total_framesize += _framesize; if( (int)_framesize > _max_framesize ) _max_framesize = _framesize; --- 441,451 ---- _framesize = C->out_preserve_stack_slots(); else _framesize = _max_reg -_matcher._new_SP; assert((int)(_matcher._new_SP+_framesize) >= (int)_matcher._out_arg_limit, "framesize must be large enough"); // This frame must preserve the required fp alignment ! _framesize = round_to(_framesize, Matcher::stack_alignment_in_slots()); assert( _framesize >= 0 && _framesize <= 1000000, "sanity check" ); #ifndef PRODUCT _total_framesize += _framesize; if( (int)_framesize > _max_framesize ) _max_framesize = _framesize;
*** 683,692 **** --- 681,691 ---- lrg._is_bound = 1; } break; case Op_RegF: case Op_RegI: + case Op_RegN: case Op_RegFlags: case 0: // not an ideal register lrg.set_num_regs(1); #ifdef SPARC lrg.set_reg_pressure(2);
*** 1385,1395 **** if( cisc->oper_input_base() > 1 && mach->oper_input_base() <= 1 ) { assert( cisc->oper_input_base() == 2, "Only adding one edge"); cisc->ins_req(1,src); // Requires a memory edge } b->_nodes.map(j,cisc); // Insert into basic block ! n->replace_by(cisc); // Correct graph // ++_used_cisc_instructions; #ifndef PRODUCT if( TraceCISCSpill ) { tty->print(" cisc-instr: "); --- 1384,1394 ---- if( cisc->oper_input_base() > 1 && mach->oper_input_base() <= 1 ) { assert( cisc->oper_input_base() == 2, "Only adding one edge"); cisc->ins_req(1,src); // Requires a memory edge } b->_nodes.map(j,cisc); // Insert into basic block ! n->subsume_by(cisc); // Correct graph // ++_used_cisc_instructions; #ifndef PRODUCT if( TraceCISCSpill ) { tty->print(" cisc-instr: ");