зеркало из https://github.com/github/ruby.git
Adjusted styles
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
cc02df324f
Коммит
5ae753dfa3
2
array.c
2
array.c
|
@ -1326,7 +1326,7 @@ rb_ary_shift_m(int argc, VALUE *argv, VALUE ary)
|
|||
MJIT_FUNC_EXPORTED VALUE
|
||||
rb_ary_behead(VALUE ary, long n)
|
||||
{
|
||||
if(n<=0) return ary;
|
||||
if (n<=0) return ary;
|
||||
|
||||
rb_ary_modify_check(ary);
|
||||
if (ARY_SHARED_P(ary)) {
|
||||
|
|
90
gc.c
90
gc.c
|
@ -1147,7 +1147,8 @@ gc_object_moved_p(rb_objspace_t * objspace, VALUE obj)
|
|||
{
|
||||
if (RB_SPECIAL_CONST_P(obj)) {
|
||||
return FALSE;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
void *poisoned = poisoned_object_p(obj);
|
||||
unpoison_object(obj, false);
|
||||
|
||||
|
@ -3395,17 +3396,19 @@ rb_obj_id(VALUE obj)
|
|||
if (st_lookup(obj_to_id_tbl, (st_data_t)obj, &id)) {
|
||||
gc_report(4, &rb_objspace, "Second time object_id was called on this object: %p\n", (void*)obj);
|
||||
return id;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
id = nonspecial_obj_id(obj);
|
||||
|
||||
while(1) {
|
||||
while (1) {
|
||||
/* id is the object id */
|
||||
if (st_lookup(id_to_obj_tbl, (st_data_t)id, 0)) {
|
||||
gc_report(4, &rb_objspace, "object_id called on %p, but there was a collision at %d\n", (void*)obj, NUM2INT(id));
|
||||
rb_objspace_t *objspace = &rb_objspace;
|
||||
objspace->profile.object_id_collisions++;
|
||||
id += 40;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
gc_report(4, &rb_objspace, "Initial insert: %p id: %d\n", (void*)obj, NUM2INT(id));
|
||||
st_insert(obj_to_id_tbl, (st_data_t)obj, id);
|
||||
st_insert(id_to_obj_tbl, (st_data_t)id, obj);
|
||||
|
@ -4422,7 +4425,8 @@ mark_keyvalue(st_data_t key, st_data_t value, st_data_t data)
|
|||
|
||||
if (SPECIAL_CONST_P((VALUE)key) || BUILTIN_TYPE((VALUE)key) == T_STRING) {
|
||||
gc_mark(objspace, (VALUE)key);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
gc_mark_and_pin(objspace, (VALUE)key);
|
||||
}
|
||||
gc_mark(objspace, (VALUE)value);
|
||||
|
@ -5675,7 +5679,7 @@ gc_verify_heap_pages_(rb_objspace_t *objspace, struct list_head *head)
|
|||
list_for_each(head, page, page_node) {
|
||||
unpoison_memory_region(&page->freelist, sizeof(RVALUE*), false);
|
||||
RVALUE *p = page->freelist;
|
||||
while(p) {
|
||||
while (p) {
|
||||
RVALUE *prev = p;
|
||||
unpoison_object((VALUE)p, false);
|
||||
if (BUILTIN_TYPE(p) != T_NONE) {
|
||||
|
@ -7218,7 +7222,8 @@ update_id_to_obj(st_data_t *key, st_data_t *value, st_data_t arg, int exists)
|
|||
if (exists) {
|
||||
*value = arg;
|
||||
return ST_CONTINUE;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
return ST_STOP;
|
||||
}
|
||||
}
|
||||
|
@ -7260,7 +7265,7 @@ gc_move(rb_objspace_t *objspace, VALUE scan, VALUE free)
|
|||
|
||||
/* If the source object's object_id has been seen, we need to update
|
||||
* the object to object id mapping. */
|
||||
if(st_lookup(obj_to_id_tbl, (VALUE)src, &id)) {
|
||||
if (st_lookup(obj_to_id_tbl, (VALUE)src, &id)) {
|
||||
gc_report(4, objspace, "Moving object with seen id: %p -> %p\n", (void *)src, (void *)dest);
|
||||
st_delete(obj_to_id_tbl, (st_data_t *)&src, 0);
|
||||
st_insert(obj_to_id_tbl, (VALUE)dest, id);
|
||||
|
@ -7274,25 +7279,29 @@ gc_move(rb_objspace_t *objspace, VALUE scan, VALUE free)
|
|||
/* Set bits for object in new location */
|
||||
if (marking) {
|
||||
MARK_IN_BITMAP(GET_HEAP_MARKING_BITS((VALUE)dest), (VALUE)dest);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CLEAR_IN_BITMAP(GET_HEAP_MARKING_BITS((VALUE)dest), (VALUE)dest);
|
||||
}
|
||||
|
||||
if (marked) {
|
||||
MARK_IN_BITMAP(GET_HEAP_MARK_BITS((VALUE)dest), (VALUE)dest);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CLEAR_IN_BITMAP(GET_HEAP_MARK_BITS((VALUE)dest), (VALUE)dest);
|
||||
}
|
||||
|
||||
if (wb_unprotected) {
|
||||
MARK_IN_BITMAP(GET_HEAP_WB_UNPROTECTED_BITS((VALUE)dest), (VALUE)dest);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CLEAR_IN_BITMAP(GET_HEAP_WB_UNPROTECTED_BITS((VALUE)dest), (VALUE)dest);
|
||||
}
|
||||
|
||||
if (uncollectible) {
|
||||
MARK_IN_BITMAP(GET_HEAP_UNCOLLECTIBLE_BITS((VALUE)dest), (VALUE)dest);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CLEAR_IN_BITMAP(GET_HEAP_UNCOLLECTIBLE_BITS((VALUE)dest), (VALUE)dest);
|
||||
}
|
||||
|
||||
|
@ -7316,7 +7325,8 @@ advance_cursor(struct heap_cursor *free, struct heap_page **page_list)
|
|||
free->index++;
|
||||
free->page = page_list[free->index];
|
||||
free->slot = free->page->start;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
free->slot++;
|
||||
}
|
||||
}
|
||||
|
@ -7328,7 +7338,8 @@ retreat_cursor(struct heap_cursor *scan, struct heap_page **page_list)
|
|||
scan->index--;
|
||||
scan->page = page_list[scan->index];
|
||||
scan->slot = scan->page->start + scan->page->total_slots - 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
scan->slot--;
|
||||
}
|
||||
}
|
||||
|
@ -7370,7 +7381,7 @@ int count_pinned(struct heap_page *page)
|
|||
int pinned = 0;
|
||||
|
||||
VALUE v = (VALUE)pstart;
|
||||
for(; v != (VALUE)pend; v += sizeof(RVALUE)) {
|
||||
for (; v != (VALUE)pend; v += sizeof(RVALUE)) {
|
||||
void *poisoned = poisoned_object_p(v);
|
||||
unpoison_object(v, false);
|
||||
|
||||
|
@ -7418,7 +7429,7 @@ gc_compact_heap(rb_objspace_t *objspace)
|
|||
void *free_slot_poison = poisoned_object_p((VALUE)free_cursor.slot);
|
||||
unpoison_object((VALUE)free_cursor.slot, false);
|
||||
|
||||
while(BUILTIN_TYPE(free_cursor.slot) != T_NONE && not_met(&free_cursor, &scan_cursor)) {
|
||||
while (BUILTIN_TYPE(free_cursor.slot) != T_NONE && not_met(&free_cursor, &scan_cursor)) {
|
||||
/* Re-poison slot if it's not the one we want */
|
||||
if (free_slot_poison) {
|
||||
GC_ASSERT(BUILTIN_TYPE(free_cursor.slot) == T_NONE);
|
||||
|
@ -7439,7 +7450,7 @@ gc_compact_heap(rb_objspace_t *objspace)
|
|||
/* Scan cursor movement */
|
||||
objspace->rcompactor.considered_count_table[BUILTIN_TYPE((VALUE)scan_cursor.slot)]++;
|
||||
|
||||
while(!gc_is_moveable_obj(objspace, (VALUE)scan_cursor.slot) && not_met(&free_cursor, &scan_cursor)) {
|
||||
while (!gc_is_moveable_obj(objspace, (VALUE)scan_cursor.slot) && not_met(&free_cursor, &scan_cursor)) {
|
||||
|
||||
/* Re-poison slot if it's not the one we want */
|
||||
if (scan_slot_poison) {
|
||||
|
@ -7487,7 +7498,7 @@ gc_ref_update_array(rb_objspace_t * objspace, VALUE v)
|
|||
len = RARRAY_LEN(v);
|
||||
if (len > 0) {
|
||||
VALUE *ptr = (VALUE *)RARRAY_CONST_PTR_TRANSIENT(v);
|
||||
for(i = 0; i < len; i++) {
|
||||
for (i = 0; i < len; i++) {
|
||||
UPDATE_IF_MOVED(objspace, ptr[i]);
|
||||
}
|
||||
}
|
||||
|
@ -7511,11 +7522,11 @@ hash_replace_ref(st_data_t *key, st_data_t *value, st_data_t argp, int existing)
|
|||
{
|
||||
rb_objspace_t *objspace = (rb_objspace_t *)argp;
|
||||
|
||||
if(gc_object_moved_p(objspace, (VALUE)*key)) {
|
||||
if (gc_object_moved_p(objspace, (VALUE)*key)) {
|
||||
*key = rb_gc_new_location((VALUE)*key);
|
||||
}
|
||||
|
||||
if(gc_object_moved_p(objspace, (VALUE)*value)) {
|
||||
if (gc_object_moved_p(objspace, (VALUE)*value)) {
|
||||
*value = rb_gc_new_location((VALUE)*value);
|
||||
}
|
||||
|
||||
|
@ -7529,11 +7540,11 @@ hash_foreach_replace(st_data_t key, st_data_t value, st_data_t argp, int error)
|
|||
|
||||
objspace = (rb_objspace_t *)argp;
|
||||
|
||||
if(gc_object_moved_p(objspace, (VALUE)key)) {
|
||||
if (gc_object_moved_p(objspace, (VALUE)key)) {
|
||||
return ST_REPLACE;
|
||||
}
|
||||
|
||||
if(gc_object_moved_p(objspace, (VALUE)value)) {
|
||||
if (gc_object_moved_p(objspace, (VALUE)value)) {
|
||||
return ST_REPLACE;
|
||||
}
|
||||
return ST_CONTINUE;
|
||||
|
@ -7666,7 +7677,7 @@ check_id_table_move(ID id, VALUE value, void *data)
|
|||
{
|
||||
rb_objspace_t *objspace = (rb_objspace_t *)data;
|
||||
|
||||
if(gc_object_moved_p(objspace, (VALUE)value)) {
|
||||
if (gc_object_moved_p(objspace, (VALUE)value)) {
|
||||
return ID_TABLE_REPLACE;
|
||||
}
|
||||
|
||||
|
@ -7681,14 +7692,15 @@ rb_gc_new_location(VALUE value)
|
|||
|
||||
VALUE destination;
|
||||
|
||||
if(!SPECIAL_CONST_P((void *)value)) {
|
||||
if (!SPECIAL_CONST_P((void *)value)) {
|
||||
void *poisoned = poisoned_object_p(value);
|
||||
unpoison_object(value, false);
|
||||
|
||||
if (BUILTIN_TYPE(value) == T_MOVED) {
|
||||
destination = (VALUE)RMOVED(value)->destination;
|
||||
assert(BUILTIN_TYPE(destination) != T_NONE);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
destination = value;
|
||||
}
|
||||
|
||||
|
@ -7697,7 +7709,8 @@ rb_gc_new_location(VALUE value)
|
|||
GC_ASSERT(BUILTIN_TYPE(value) == T_NONE);
|
||||
poison_object(value);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
destination = value;
|
||||
}
|
||||
|
||||
|
@ -7709,7 +7722,7 @@ update_id_table(ID *key, VALUE * value, void *data, int existing)
|
|||
{
|
||||
rb_objspace_t *objspace = (rb_objspace_t *)data;
|
||||
|
||||
if(gc_object_moved_p(objspace, (VALUE)*value)) {
|
||||
if (gc_object_moved_p(objspace, (VALUE)*value)) {
|
||||
*value = rb_gc_new_location((VALUE)*value);
|
||||
}
|
||||
|
||||
|
@ -7730,11 +7743,11 @@ update_const_table(VALUE value, void *data)
|
|||
rb_const_entry_t *ce = (rb_const_entry_t *)value;
|
||||
rb_objspace_t * objspace = (rb_objspace_t *)data;
|
||||
|
||||
if(gc_object_moved_p(objspace, ce->value)) {
|
||||
if (gc_object_moved_p(objspace, ce->value)) {
|
||||
ce->value = rb_gc_new_location(ce->value);
|
||||
}
|
||||
|
||||
if(gc_object_moved_p(objspace, ce->file)) {
|
||||
if (gc_object_moved_p(objspace, ce->file)) {
|
||||
ce->file = rb_gc_new_location(ce->file);
|
||||
}
|
||||
|
||||
|
@ -7813,7 +7826,8 @@ gc_update_object_references(rb_objspace_t *objspace, VALUE obj)
|
|||
case T_ARRAY:
|
||||
if (FL_TEST(obj, ELTS_SHARED)) {
|
||||
UPDATE_IF_MOVED(objspace, any->as.array.as.heap.aux.shared);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
gc_ref_update_array(objspace, obj);
|
||||
}
|
||||
break;
|
||||
|
@ -7894,7 +7908,7 @@ gc_update_object_references(rb_objspace_t *objspace, VALUE obj)
|
|||
long i, len = RSTRUCT_LEN(obj);
|
||||
VALUE *ptr = (VALUE *)RSTRUCT_CONST_PTR(obj);
|
||||
|
||||
for(i = 0; i < len; i++) {
|
||||
for (i = 0; i < len; i++) {
|
||||
UPDATE_IF_MOVED(objspace, ptr[i]);
|
||||
}
|
||||
}
|
||||
|
@ -7929,14 +7943,15 @@ gc_ref_update(void *vstart, void *vend, size_t stride, void * data)
|
|||
page->flags.has_uncollectible_shady_objects = FALSE;
|
||||
|
||||
/* For each object on the page */
|
||||
for(; v != (VALUE)vend; v += stride) {
|
||||
for (; v != (VALUE)vend; v += stride) {
|
||||
if (!SPECIAL_CONST_P(v)) {
|
||||
unpoison_object(v, false);
|
||||
|
||||
if (BUILTIN_TYPE(v) == T_NONE) {
|
||||
heap_page_add_freeobj(objspace, page, v);
|
||||
free_slots++;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (RVALUE_WB_UNPROTECTED(v)) {
|
||||
page->flags.has_uncollectible_shady_objects = TRUE;
|
||||
}
|
||||
|
@ -8041,7 +8056,8 @@ heap_check_moved_i(void *vstart, void *vend, size_t stride, void *data)
|
|||
for (; v != (VALUE)vend; v += stride) {
|
||||
if (gc_object_moved_p(&rb_objspace, v)) {
|
||||
/* Moved object still on the heap, something may have a reference. */
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
void *poisoned = poisoned_object_p(v);
|
||||
unpoison_object(v, false);
|
||||
|
||||
|
@ -9774,7 +9790,8 @@ wmap_pin_obj(st_data_t key, st_data_t val, st_data_t arg)
|
|||
VALUE obj = (VALUE)val;
|
||||
if (obj && is_live_object(objspace, obj)) {
|
||||
gc_pin(objspace, obj);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
return ST_DELETE;
|
||||
}
|
||||
return ST_CONTINUE;
|
||||
|
@ -11101,7 +11118,8 @@ rb_gcdebug_print_obj_condition(VALUE obj)
|
|||
|
||||
if (BUILTIN_TYPE(obj) == T_MOVED) {
|
||||
fprintf(stderr, "moved?: true\n");
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "moved?: false\n");
|
||||
}
|
||||
if (is_pointer_to_heap(objspace, (void *)obj)) {
|
||||
|
|
|
@ -281,7 +281,8 @@ rb_id_table_foreach_with_replace(struct rb_id_table *tbl, rb_id_table_foreach_fu
|
|||
VALUE val = tbl->items[i].val;
|
||||
ret = (*replace)(Qundef, &val, data, TRUE);
|
||||
tbl->items[i].val = val;
|
||||
} else if (ret == ID_TABLE_STOP)
|
||||
}
|
||||
else if (ret == ID_TABLE_STOP)
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
3
io.c
3
io.c
|
@ -10996,7 +10996,8 @@ nogvl_fcopyfile(struct copy_stream_struct *stp)
|
|||
return 1;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
switch (errno) {
|
||||
case ENOTSUP:
|
||||
case EPERM:
|
||||
|
|
2
iseq.c
2
iseq.c
|
@ -233,7 +233,7 @@ rb_iseq_update_references(rb_iseq_t *iseq)
|
|||
if (body->parent_iseq) {
|
||||
body->parent_iseq = (struct rb_iseq_struct *)rb_gc_new_location((VALUE)body->parent_iseq);
|
||||
}
|
||||
if(FL_TEST(iseq, ISEQ_MARKABLE_ISEQ)) {
|
||||
if (FL_TEST(iseq, ISEQ_MARKABLE_ISEQ)) {
|
||||
rb_iseq_each_value(iseq, update_each_insn_value, NULL);
|
||||
}
|
||||
|
||||
|
|
|
@ -1180,7 +1180,8 @@ mjit_copy_cache_from_main_thread(const rb_iseq_t *iseq, struct rb_call_cache *cc
|
|||
|
||||
if (UNLIKELY(mjit_opts.wait)) {
|
||||
mjit_copy_job_handler((void *)job);
|
||||
} else if (rb_workqueue_register(0, mjit_copy_job_handler, (void *)job)) {
|
||||
}
|
||||
else if (rb_workqueue_register(0, mjit_copy_job_handler, (void *)job)) {
|
||||
CRITICAL_SECTION_START(3, "in MJIT copy job wait");
|
||||
// checking `stop_worker_p` too because `RUBY_VM_CHECK_INTS(ec)` may not
|
||||
// lush mjit_copy_job_handler when EC_EXEC_TAG() is not TAG_NONE, and then
|
||||
|
|
|
@ -36,7 +36,7 @@ enum arg_setup_type {
|
|||
static inline void
|
||||
arg_rest_dup(struct args_info *args)
|
||||
{
|
||||
if(!args->rest_dupped) {
|
||||
if (!args->rest_dupped) {
|
||||
args->rest = rb_ary_dup(args->rest);
|
||||
args->rest_dupped = TRUE;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче