Skip to content
  • Koichi Sasada's avatar
    f6661f50
    sync RClass::ext::iv_index_tbl · f6661f50
    Koichi Sasada authored
    iv_index_tbl manages instance variable indexes (ID -> index).
    This data structure should be synchronized with other ractors
    so introduce some VM locks.
    
    This patch also introduced atomic ivar cache used by
    set/getinlinecache instructions. To make updating ivar cache (IVC),
    we changed iv_index_tbl data structure to manage (ID -> entry)
    and an entry points serial and index. IVC points to this entry so
    that cache update becomes atomically.
    f6661f50
    sync RClass::ext::iv_index_tbl
    Koichi Sasada authored
    iv_index_tbl manages instance variable indexes (ID -> index).
    This data structure should be synchronized with other ractors
    so introduce some VM locks.
    
    This patch also introduced atomic ivar cache used by
    set/getinlinecache instructions. To make updating ivar cache (IVC),
    we changed iv_index_tbl data structure to manage (ID -> entry)
    and an entry points serial and index. IVC points to this entry so
    that cache update becomes atomically.
Loading