comparison src/share/vm/c1/c1_LinearScan.cpp @ 5906:b279f99d7143

6910461: Register allocator may insert spill code at wrong insertion index Summary: When resolving exception edges after register allocation, the C1 register allocator may insert spill code at the wrong insertion position. Reviewed-by: kvn, never
author roland
date Tue, 28 Feb 2012 09:13:58 +0100
parents c7401dcad8bf
children 6759698e3140
comparison
equal deleted inserted replaced
5905:2ee7dcc77c63 5906:b279f99d7143
1882 resolve_exception_entry(block, phi->operand()->vreg_number(), move_resolver) 1882 resolve_exception_entry(block, phi->operand()->vreg_number(), move_resolver)
1883 ); 1883 );
1884 1884
1885 if (move_resolver.has_mappings()) { 1885 if (move_resolver.has_mappings()) {
1886 // insert moves after first instruction 1886 // insert moves after first instruction
1887 move_resolver.set_insert_position(block->lir(), 1); 1887 move_resolver.set_insert_position(block->lir(), 0);
1888 move_resolver.resolve_and_append_moves(); 1888 move_resolver.resolve_and_append_moves();
1889 } 1889 }
1890 } 1890 }
1891 1891
1892 1892