< prev index next >

src/share/vm/code/relocInfo.hpp

Print this page




 413   // Both methods takes old_type, so it is able to performe sanity checks on the information removed.
 414   static void change_reloc_info_for_address(RelocIterator *itr, address pc, relocType old_type, relocType new_type);
 415   static void remove_reloc_info_for_address(RelocIterator *itr, address pc, relocType old_type);
 416 
 417   // Machine dependent stuff
 418 #ifdef TARGET_ARCH_x86
 419 # include "relocInfo_x86.hpp"
 420 #endif
 421 #ifdef TARGET_ARCH_sparc
 422 # include "relocInfo_sparc.hpp"
 423 #endif
 424 #ifdef TARGET_ARCH_zero
 425 # include "relocInfo_zero.hpp"
 426 #endif
 427 #ifdef TARGET_ARCH_arm
 428 # include "relocInfo_arm.hpp"
 429 #endif
 430 #ifdef TARGET_ARCH_ppc
 431 # include "relocInfo_ppc.hpp"
 432 #endif



 433 
 434 
 435  protected:
 436   // Derived constant, based on format_width which is PD:
 437   enum {
 438     offset_width       = nontype_width - format_width,
 439     offset_mask        = (1<<offset_width) - 1,
 440     format_mask        = (1<<format_width) - 1
 441   };
 442  public:
 443   enum {
 444     // Conservatively large estimate of maximum length (in shorts)
 445     // of any relocation record.
 446     // Extended format is length prefix, data words, and tag/offset suffix.
 447     length_limit       = 1 + 1 + (3*BytesPerWord/BytesPerShort) + 1,
 448     have_format        = format_width > 0
 449   };
 450 };
 451 
 452 #define FORWARD_DECLARE_EACH_CLASS(name)              \




 413   // Both methods takes old_type, so it is able to performe sanity checks on the information removed.
 414   static void change_reloc_info_for_address(RelocIterator *itr, address pc, relocType old_type, relocType new_type);
 415   static void remove_reloc_info_for_address(RelocIterator *itr, address pc, relocType old_type);
 416 
 417   // Machine dependent stuff
 418 #ifdef TARGET_ARCH_x86
 419 # include "relocInfo_x86.hpp"
 420 #endif
 421 #ifdef TARGET_ARCH_sparc
 422 # include "relocInfo_sparc.hpp"
 423 #endif
 424 #ifdef TARGET_ARCH_zero
 425 # include "relocInfo_zero.hpp"
 426 #endif
 427 #ifdef TARGET_ARCH_arm
 428 # include "relocInfo_arm.hpp"
 429 #endif
 430 #ifdef TARGET_ARCH_ppc
 431 # include "relocInfo_ppc.hpp"
 432 #endif
 433 #ifdef TARGET_ARCH_aarch32
 434 # include "relocInfo_aarch32.hpp"
 435 #endif
 436 
 437 
 438  protected:
 439   // Derived constant, based on format_width which is PD:
 440   enum {
 441     offset_width       = nontype_width - format_width,
 442     offset_mask        = (1<<offset_width) - 1,
 443     format_mask        = (1<<format_width) - 1
 444   };
 445  public:
 446   enum {
 447     // Conservatively large estimate of maximum length (in shorts)
 448     // of any relocation record.
 449     // Extended format is length prefix, data words, and tag/offset suffix.
 450     length_limit       = 1 + 1 + (3*BytesPerWord/BytesPerShort) + 1,
 451     have_format        = format_width > 0
 452   };
 453 };
 454 
 455 #define FORWARD_DECLARE_EACH_CLASS(name)              \


< prev index next >