Mercurial > hg > truffle
comparison src/cpu/x86/vm/assembler_x86.hpp @ 420:a1980da045cc
6462850: generate biased locking code in C2 ideal graph
Summary: Inline biased locking code in C2 ideal graph during macro nodes expansion
Reviewed-by: never
author | kvn |
---|---|
date | Fri, 07 Nov 2008 09:29:38 -0800 |
parents | 2649e5276dd7 |
children | 56aae7be60d4 |
comparison
equal
deleted
inserted
replaced
419:0bf25c4807f9 | 420:a1980da045cc |
---|---|
1778 // slow case directly. Leaves condition codes set for C2's Fast_Lock node. | 1778 // slow case directly. Leaves condition codes set for C2's Fast_Lock node. |
1779 // Returns offset of first potentially-faulting instruction for null | 1779 // Returns offset of first potentially-faulting instruction for null |
1780 // check info (currently consumed only by C1). If | 1780 // check info (currently consumed only by C1). If |
1781 // swap_reg_contains_mark is true then returns -1 as it is assumed | 1781 // swap_reg_contains_mark is true then returns -1 as it is assumed |
1782 // the calling code has already passed any potential faults. | 1782 // the calling code has already passed any potential faults. |
1783 int biased_locking_enter(Register lock_reg, Register obj_reg, Register swap_reg, Register tmp_reg, | 1783 int biased_locking_enter(Register lock_reg, Register obj_reg, |
1784 Register swap_reg, Register tmp_reg, | |
1784 bool swap_reg_contains_mark, | 1785 bool swap_reg_contains_mark, |
1785 Label& done, Label* slow_case = NULL, | 1786 Label& done, Label* slow_case = NULL, |
1786 BiasedLockingCounters* counters = NULL); | 1787 BiasedLockingCounters* counters = NULL); |
1787 void biased_locking_exit (Register obj_reg, Register temp_reg, Label& done); | 1788 void biased_locking_exit (Register obj_reg, Register temp_reg, Label& done); |
1788 | 1789 |