Mercurial > hg > truffle
comparison src/cpu/x86/vm/stubGenerator_x86_32.cpp @ 249:910a4cb98e9e
6717457: Internal Error (src/share/vm/code/relocInfo.hpp:1089)
Reviewed-by: kvn
author | never |
---|---|
date | Fri, 25 Jul 2008 09:07:29 -0700 |
parents | a73cc31728fe |
children | dc7f315e41f7 1ee8caae33af |
comparison
equal
deleted
inserted
replaced
248:18aab3cdd513 | 249:910a4cb98e9e |
---|---|
777 __ leal(end, Address(start, count, Address::times_4, -4)); | 777 __ leal(end, Address(start, count, Address::times_4, -4)); |
778 __ shrl(start, CardTableModRefBS::card_shift); | 778 __ shrl(start, CardTableModRefBS::card_shift); |
779 __ shrl(end, CardTableModRefBS::card_shift); | 779 __ shrl(end, CardTableModRefBS::card_shift); |
780 __ subl(end, start); // end --> count | 780 __ subl(end, start); // end --> count |
781 __ BIND(L_loop); | 781 __ BIND(L_loop); |
782 ExternalAddress base((address)ct->byte_map_base); | 782 intptr_t disp = (intptr_t) ct->byte_map_base; |
783 Address index(start, count, Address::times_1, 0); | 783 Address cardtable(start, count, Address::times_1, disp); |
784 __ movbyte(ArrayAddress(base, index), 0); | 784 __ movb(cardtable, 0); |
785 __ decrement(count); | 785 __ decrement(count); |
786 __ jcc(Assembler::greaterEqual, L_loop); | 786 __ jcc(Assembler::greaterEqual, L_loop); |
787 } | 787 } |
788 break; | 788 break; |
789 case BarrierSet::ModRef: | 789 case BarrierSet::ModRef: |