review (S) for
vladimir.kozlov at oracle.com
Wed Dec 15 15:20:33 PST 2010
Tom Rodriguez wrote:
> On Dec 15, 2010, at 2:50 PM, Vladimir Kozlov wrote:
>> What could be the case when assigned_regHi() == -1 but assigned_reg() != -1 (num == 2)?
> alloc_free_reg may not be able to get both registers for a pair and it leaves the interval with the first reg set but regHi is still -1. Then it goes to do some spilling to free a register for the second part. If you try to print it during this part you'll assert.
Got it. Changes looks good.
>> Tom Rodriguez wrote:
>>> 6579789: Internal error "c1_LinearScan.cpp:1429 Error: assert(false,"")" in debuggee with fastdebug VM
>>> When using the x86 FPU, spilling at an exception entry point may
>>> mutate the intervals so that _sorted_intervals is no longer sorted.
>>> The fix is detect this case and resort as needed. Additionally I
>>> added some more assertion checks and fixed a printing problem that
>>> would assert on partially allocated intervals. Tested with new test
>>> case and CTW.
More information about the hotspot-compiler-dev