fix C major issues
- use delays to implement setup_call - fix user_* flag - error handling i CXX should b local - fix mess on how to call openQuert - deter pt -> from a pointer to another one - avoid text forms when you can use C: LOCLS to locals.h - fux seto_call - new gated call - mem streams
This commit is contained in:
10
C/heapgc.c
10
C/heapgc.c
@@ -134,7 +134,7 @@ gc_growtrail(int committed, tr_fr_ptr begsTR, cont *old_cont_top0 USES_REGS)
|
||||
#endif
|
||||
/* could not find more trail */
|
||||
save_machine_regs();
|
||||
siglongjmp(*LOCAL_gc_restore, 2);
|
||||
siglongjmp(LOCAL_gc_restore, 2);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -397,7 +397,7 @@ check_pr_trail( tr_fr_ptr rc USES_REGS)
|
||||
if (!Yap_locked_growtrail(0, TRUE) || TRUE) {
|
||||
/* could not find more trail */
|
||||
save_machine_regs();
|
||||
siglongjmp(*LOCAL_gc_restore, 2);
|
||||
siglongjmp( LOCAL_gc_restore, 2);
|
||||
}
|
||||
rc = TR-n;
|
||||
}
|
||||
@@ -525,7 +525,7 @@ pop_registers(Int num_regs, yamop *nextop USES_REGS)
|
||||
/* error: we don't have enough room */
|
||||
/* could not find more trail */
|
||||
save_machine_regs();
|
||||
siglongjmp(*LOCAL_gc_restore, 4);
|
||||
siglongjmp(LOCAL_gc_restore, 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1451,7 +1451,7 @@ mark_variable(CELL_PTR current USES_REGS)
|
||||
/* error: we don't have enough room */
|
||||
/* could not find more trail */
|
||||
save_machine_regs();
|
||||
siglongjmp(*LOCAL_gc_restore, 3);
|
||||
siglongjmp(LOCAL_gc_restore, 3);
|
||||
} else if (n > 0) {
|
||||
CELL *ptr = LOCAL_extra_gc_cells;
|
||||
|
||||
@@ -3931,8 +3931,6 @@ do_gc(Int predarity, CELL *current_env, yamop *nextop USES_REGS)
|
||||
int jmp_res;
|
||||
sigjmp_buf jmp;
|
||||
|
||||
LOCAL_gc_restore = &jmp;
|
||||
|
||||
heap_cells = HR-H0;
|
||||
gc_verbose = is_gc_verbose();
|
||||
effectiveness = 0;
|
||||
|
Reference in New Issue
Block a user