comparison src/cpu/x86/vm/relocInfo_x86.cpp @ 13573:1302b727b5cd

added assertion for correct format argument in a safepoint poll reloc info
author Doug Simon <doug.simon@oracle.com>
date Thu, 09 Jan 2014 08:30:58 +0100
parents d49f00604347
children be896a1983c0
comparison
equal deleted inserted replaced
13572:5335d65fec56 13573:1302b727b5cd
179 179
180 void poll_Relocation::fix_relocation_after_move(const CodeBuffer* src, CodeBuffer* dest) { 180 void poll_Relocation::fix_relocation_after_move(const CodeBuffer* src, CodeBuffer* dest) {
181 #ifdef _LP64 181 #ifdef _LP64
182 typedef Assembler::WhichOperand WhichOperand; 182 typedef Assembler::WhichOperand WhichOperand;
183 WhichOperand which = (WhichOperand) format(); 183 WhichOperand which = (WhichOperand) format();
184 #ifndef GRAAL
185 assert((which == Assembler::disp32_operand) == !Assembler::is_polling_page_far(), "format not set correctly");
186 #endif
184 if (which == Assembler::disp32_operand) { 187 if (which == Assembler::disp32_operand) {
185 address orig_addr = old_addr_for(addr(), src, dest); 188 address orig_addr = old_addr_for(addr(), src, dest);
186 NativeInstruction* oni = nativeInstruction_at(orig_addr); 189 NativeInstruction* oni = nativeInstruction_at(orig_addr);
187 int32_t* orig_disp = (int32_t*) Assembler::locate_operand(orig_addr, which); 190 int32_t* orig_disp = (int32_t*) Assembler::locate_operand(orig_addr, which);
188 // This poll_addr is incorrect by the size of the instruction it is irrelevant 191 // This poll_addr is incorrect by the size of the instruction it is irrelevant