Author: Armin Rigo <[email protected]>
Branch: stmgc-c7
Changeset: r76030:f08715bea48a
Date: 2015-02-21 17:15 +0100
http://bitbucket.org/pypy/pypy/changeset/f08715bea48a/
Log: Fix test_lloperation
diff --git a/rpython/rtyper/llinterp.py b/rpython/rtyper/llinterp.py
--- a/rpython/rtyper/llinterp.py
+++ b/rpython/rtyper/llinterp.py
@@ -960,34 +960,51 @@
def _stm_not_implemented(self, *args):
raise NotImplementedError
- op_stm_initialize = _stm_not_implemented
- op_stm_finalize = _stm_not_implemented
- op_stm_perform_transaction = _stm_not_implemented
- op_stm_commit_transaction = _stm_not_implemented
- op_stm_begin_inevitable_transaction = _stm_not_implemented
- op_stm_barrier = _stm_not_implemented
op_stm_push_root = _stm_not_implemented
op_stm_pop_root_into = _stm_not_implemented
- op_stm_get_adr_of_nursery_current = _stm_not_implemented
- op_stm_get_adr_of_nursery_nextlimit = _stm_not_implemented
- op_stm_get_adr_of_active = _stm_not_implemented
- op_stm_get_adr_of_read_barrier_cache = _stm_not_implemented
- op_stm_get_adr_of_private_rev_num = _stm_not_implemented
+ op_stm_get_root_stack_top = _stm_not_implemented
+ op_stm_start_if_not_atomic = _stm_not_implemented
+ op_stm_commit_if_not_atomic = _stm_not_implemented
op_stm_enter_callback_call = _stm_not_implemented
op_stm_leave_callback_call = _stm_not_implemented
op_stm_get_atomic = _stm_not_implemented
op_stm_is_inevitable = _stm_not_implemented
- op_stm_change_atomic = _stm_not_implemented
op_stm_set_transaction_length = _stm_not_implemented
- op_stm_hash = _stm_not_implemented
op_stm_id = _stm_not_implemented
- op_stm_allocate = _stm_not_implemented
- op_stm_weakref_allocate = _stm_not_implemented
- op_stm_allocate_nonmovable_int_adr = _stm_not_implemented
- op_stm_minor_collect = _stm_not_implemented
- op_stm_major_collect = _stm_not_implemented
op_stm_abort_and_retry = _stm_not_implemented
op_stm_become_inevitable = _stm_not_implemented
+ op_stm_stop_all_other_threads = _stm_not_implemented
+ op_stm_resume_all_other_threads = _stm_not_implemented
+ op_stm_set_into_obj = _stm_not_implemented
+ op_stm_addr_get_tid = _stm_not_implemented
+ op_stm_allocate_tid = _stm_not_implemented
+ op_stm_allocate_weakref = _stm_not_implemented
+ op_stm_allocate_f_light = _stm_not_implemented
+ op_stm_allocate_finalizer = _stm_not_implemented
+ op_stm_allocate_nonmovable = _stm_not_implemented
+ op_stm_allocate_preexisting = _stm_not_implemented
+ op_stm_malloc_nonmovable = _stm_not_implemented
+ op_stm_can_move = _stm_not_implemented
+ op_stm_read = _stm_not_implemented
+ op_stm_write = _stm_not_implemented
+ op_stm_hashtable_create = _stm_not_implemented
+ op_stm_hashtable_lookup = _stm_not_implemented
+ op_stm_hashtable_read = _stm_not_implemented
+ op_stm_hashtable_write = _stm_not_implemented
+ op_stm_hashtable_write_entry = _stm_not_implemented
+ op_stm_hashtable_tracefn = _stm_not_implemented
+ op_stm_hashtable_length_upper_bound = _stm_not_implemented
+ op_stm_hashtable_list = _stm_not_implemented
+ op_stm_hashtable_free = _stm_not_implemented
+ op_stm_register_thread_local = _stm_not_implemented
+ op_stm_unregister_thread_local = _stm_not_implemented
+ op_stm_really_force_cast_ptr = _stm_not_implemented
+ op_stm_identityhash = _stm_not_implemented
+ op_stm_expand_marker = _stm_not_implemented
+ op_stm_setup_expand_marker_for_pypy = _stm_not_implemented
+ op_stm_increment_atomic = _stm_not_implemented
+ op_stm_decrement_atomic = _stm_not_implemented
+ op_stm_collect = _stm_not_implemented
def op_stm_should_break_transaction(self, keep):
return False
diff --git a/rpython/rtyper/lltypesystem/lloperation.py
b/rpython/rtyper/lltypesystem/lloperation.py
--- a/rpython/rtyper/lltypesystem/lloperation.py
+++ b/rpython/rtyper/lltypesystem/lloperation.py
@@ -425,13 +425,11 @@
'stm_allocate_preexisting':LLOp(sideeffects=False, canmallocgc=True),
'stm_allocate_nonmovable':LLOp(sideeffects=False, canmallocgc=True),
'stm_malloc_nonmovable': LLOp(sideeffects=False, canmallocgc=True),
- 'stm_get_from_obj': LLOp(sideeffects=False),
- 'stm_get_from_obj_const': LLOp(canfold=True),
'stm_set_into_obj': LLOp(),
'stm_collect': LLOp(canmallocgc=True),
'stm_id': LLOp(sideeffects=False),
- 'stm_identityhash': LLOp(canfold=True),
- 'stm_addr_get_tid': LLOp(canfold=True),
+ 'stm_identityhash': LLOp(sideeffects=False),
+ 'stm_addr_get_tid': LLOp(sideeffects=False),
'stm_get_root_stack_top': LLOp(sideeffects=False),
'stm_become_inevitable': LLOp(canmallocgc=True),
'stm_push_root': LLOp(),
diff --git a/rpython/translator/stm/funcgen.py
b/rpython/translator/stm/funcgen.py
--- a/rpython/translator/stm/funcgen.py
+++ b/rpython/translator/stm/funcgen.py
@@ -126,17 +126,6 @@
(result, arg_size, arg_size) +
'((rpyobj_t *)%s)->tid = %s;' % (result, arg_type_id))
-def stm_get_from_obj(funcgen, op):
- assert op.args[0].concretetype == llmemory.GCREF
- arg_obj = funcgen.expr(op.args[0])
- arg_ofs = funcgen.expr(op.args[1])
- result = funcgen.expr(op.result)
- resulttype = cdecl(funcgen.lltypename(op.result), '')
- return '%s = *(TLPREFIX %s *)(%s + %s);' % (
- result, resulttype, arg_obj, arg_ofs)
-
-stm_get_from_obj_const = stm_get_from_obj
-
def stm_set_into_obj(funcgen, op):
assert op.args[0].concretetype == llmemory.GCREF
arg_obj = funcgen.expr(op.args[0])
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit