Superword - Aligning arrays

James Walsh groundskeeperwiley at
Tue Feb 10 16:26:12 PST 2009

I've been using a really simple test program while working on this.  I tried a test program that was a little more complex this weekend and ran into a new problem.  It looks like PhaseChaitin::gather_lrg_masks is trying to use the same XMM virtual register for a Op_RegF and a Op_RegQ which causes a assert when lrg.set_num_regs(4) is called.  I noticed that another virtual register was assigned Op_RegQ twice but since the registers are teh same size it didn't assert.  Obviously since double and floats coexist nicely I must be missing something.  I went through looking at any code that checked the size of the register via LRG::num_regs() and the bug wasn't readily apparent to me.  Any idea where I should look to fix this?


More information about the hotspot-dev mailing list