Mercurial > hg > graal-compiler
comparison src/cpu/x86/vm/assembler_x86.hpp @ 2455:479b4b4b6950
6777083: assert(target != __null,"must not be null")
Reviewed-by: iveresov, kvn
author | never |
---|---|
date | Tue, 05 Apr 2011 00:31:09 -0700 |
parents | 09f96c3ff1ad |
children | d86923d96dca |
comparison
equal
deleted
inserted
replaced
2452:fb37e3eabfd0 | 2455:479b4b4b6950 |
---|---|
383 OopAddress(address target) : AddressLiteral(target, relocInfo::oop_type){} | 383 OopAddress(address target) : AddressLiteral(target, relocInfo::oop_type){} |
384 | 384 |
385 }; | 385 }; |
386 | 386 |
387 class ExternalAddress: public AddressLiteral { | 387 class ExternalAddress: public AddressLiteral { |
388 | 388 private: |
389 public: | 389 static relocInfo::relocType reloc_for_target(address target) { |
390 | 390 // Sometimes ExternalAddress is used for values which aren't |
391 ExternalAddress(address target) : AddressLiteral(target, relocInfo::external_word_type){} | 391 // exactly addresses, like the card table base. |
392 // external_word_type can't be used for values in the first page | |
393 // so just skip the reloc in that case. | |
394 return external_word_Relocation::can_be_relocated(target) ? relocInfo::external_word_type : relocInfo::none; | |
395 } | |
396 | |
397 public: | |
398 | |
399 ExternalAddress(address target) : AddressLiteral(target, reloc_for_target(target)) {} | |
392 | 400 |
393 }; | 401 }; |
394 | 402 |
395 class InternalAddress: public AddressLiteral { | 403 class InternalAddress: public AddressLiteral { |
396 | 404 |