< prev index next >

src/cpu/x86/vm/assembler_x86.cpp

Print this page

        

*** 186,199 **** // Convert the raw encoding form into the form expected by the constructor for // Address. An index of 4 (rsp) corresponds to having no index, so convert // that to noreg for the Address constructor. Address Address::make_raw(int base, int index, int scale, int disp, relocInfo::relocType disp_reloc) { ! RelocationHolder rspec; ! if (disp_reloc != relocInfo::none) { ! rspec = Relocation::spec_simple(disp_reloc); ! } bool valid_index = index != rsp->encoding(); if (valid_index) { Address madr(as_Register(base), as_Register(index), (Address::ScaleFactor)scale, in_ByteSize(disp)); madr._rspec = rspec; return madr; --- 186,198 ---- // Convert the raw encoding form into the form expected by the constructor for // Address. An index of 4 (rsp) corresponds to having no index, so convert // that to noreg for the Address constructor. Address Address::make_raw(int base, int index, int scale, int disp, relocInfo::relocType disp_reloc) { ! RelocationHolder rspec = (disp_reloc == relocInfo::none) ! ? RelocationHolder::none ! : Relocation::spec_simple(disp_reloc); bool valid_index = index != rsp->encoding(); if (valid_index) { Address madr(as_Register(base), as_Register(index), (Address::ScaleFactor)scale, in_ByteSize(disp)); madr._rspec = rspec; return madr;
< prev index next >