vm: add RT_SAFEPOINT relocation type

db4
Joe Groff 2011-10-17 15:22:37 -07:00
parent 99804d5e3f
commit e1465308cd
2 changed files with 6 additions and 1 deletions

View File

@ -272,6 +272,9 @@ void factor_vm::store_external_address(instruction_operand op)
case RT_INLINE_CACHE_MISS: case RT_INLINE_CACHE_MISS:
op.store_value((cell)&factor::inline_cache_miss); op.store_value((cell)&factor::inline_cache_miss);
break; break;
case RT_SAFEPOINT:
op.store_value((cell)code->safepoint_page);
break;
default: default:
critical_error("Bad rel type in store_external_address()",op.rel_type()); critical_error("Bad rel type in store_external_address()",op.rel_type());
break; break;

View File

@ -34,7 +34,9 @@ enum relocation_type {
RT_DLSYM_TOC, RT_DLSYM_TOC,
/* address of inline_cache_miss function. This is a separate /* address of inline_cache_miss function. This is a separate
relocation to reduce compile time and size for PICs. */ relocation to reduce compile time and size for PICs. */
RT_INLINE_CACHE_MISS RT_INLINE_CACHE_MISS,
/* address of safepoint page in code heap */
RT_SAFEPOINT
}; };
enum relocation_class { enum relocation_class {