* Add same_as to NodeBase 1. Most class inherited from NodeBase(Schedule, Stage, etc) still have the convenience of using '==' for object identity. And this is the right behavior for non-Expr classes. 2. subclasses of ExprOp now create EQ expression when '==' is used. `__nonzero__` and `__bool__` in EQ and NE is a comprise that in some cases object identity semantics is still useful, like in unit test. For instance: ```` assert a == b ```` "a == b" will create EQ expression, assert then calls `__nonzero__` of the result expression. `Expr.__nonzero__` throws exception since it prohibits evaluating IR expression. More complex case like: ```` assert a in b # b is dict ```` it will call `__eq__` on a and all keys of b, then `__bool__` on the result expression. This could not easily be done by same_as. * Retain __hash__ from NodeBase in Python3
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
test_arith_detect_clip_bound.py | Loading commit data... | |
test_arith_detect_linear_equation.py | Loading commit data... | |
test_arith_domain_touched.py | Loading commit data... | |
test_arith_intset.py | Loading commit data... | |
test_arith_modular.py | Loading commit data... | |
test_arith_simplify.py | Loading commit data... | |
test_build_lower.py | Loading commit data... | |
test_codegen_cross_llvm.py | Loading commit data... | |
test_codegen_device.py | Loading commit data... | |
test_codegen_extern.py | Loading commit data... | |
test_codegen_llvm.py | Loading commit data... | |
test_codegen_static_init.py | Loading commit data... | |
test_codegen_vm_basic.py | Loading commit data... | |
test_ir_builder.py | Loading commit data... | |
test_lang_basic.py | Loading commit data... | |
test_lang_buffer.py | Loading commit data... | |
test_lang_container.py | Loading commit data... | |
test_lang_group.py | Loading commit data... | |
test_lang_reflection.py | Loading commit data... | |
test_lang_schedule.py | Loading commit data... | |
test_lang_tag.py | Loading commit data... | |
test_lang_tensor.py | Loading commit data... | |
test_module_load.py | Loading commit data... | |
test_pass_basic.py | Loading commit data... | |
test_pass_combine_context_call.py | Loading commit data... | |
test_pass_equal.py | Loading commit data... | |
test_pass_inject_copy_intrin.py | Loading commit data... | |
test_pass_inject_double_buffer.py | Loading commit data... | |
test_pass_inject_vthread.py | Loading commit data... | |
test_pass_inline.py | Loading commit data... | |
test_pass_ir_transform.py | Loading commit data... | |
test_pass_lift_attr_scope.py | Loading commit data... | |
test_pass_loop_partition.py | Loading commit data... | |
test_pass_makeapi.py | Loading commit data... | |
test_pass_remove_no_op.py | Loading commit data... | |
test_pass_rewrite_unsafe_select.py | Loading commit data... | |
test_pass_simplify.py | Loading commit data... | |
test_pass_split_pipeline.py | Loading commit data... | |
test_pass_storage_flatten.py | Loading commit data... | |
test_pass_storage_rewrite.py | Loading commit data... | |
test_pass_storage_sync.py | Loading commit data... | |
test_pass_unroll.py | Loading commit data... | |
test_pass_vectorize.py | Loading commit data... | |
test_pass_virtual_thread.py | Loading commit data... | |
test_runtime_extension.py | Loading commit data... | |
test_runtime_graph.py | Loading commit data... | |
test_runtime_ndarray.py | Loading commit data... | |
test_runtime_packed_func.py | Loading commit data... | |
test_runtime_rpc.py | Loading commit data... | |
test_schedule_bound_inference.py | Loading commit data... | |
test_schedule_graph.py | Loading commit data... | |
test_schedule_lstm.py | Loading commit data... | |
test_schedule_schedule_ops.py | Loading commit data... | |
test_schedule_tensorize.py | Loading commit data... |